Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /
Instale en Ubuntu
/ / / / / /

Solución de problemas

Duración Import the public key used by the package management system paso de la Procedimiento para instalar MongoDB Community Edition, puedes encontrar un "gpg: no valid OpenPGP data found." error.

Asegúrese de copiar el comando exactamente como se documenta. La operación debería responder con OK.

Para comprobar que la clave GPG pública de MongoDB existe en tu sistema, ejecuta el siguiente comando en la terminal:

sudo apt-key list

La salida debe incluir una entrada que se asemeje a lo siguiente:

/etc/apt/trusted.gpg
--------------------
pub rsa4096 2018-04-18 [SC] [expires: 2023-04-17]
E162 F504 A20C DF15 827F 718D 4B7C 549A 058F 8B6B
uid [ unknown] MongoDB 6.0 Release Signing Key <packaging@mongodb.com>

Puedes encontrar uno o más errores similares a los siguientes al ejecutar sudo apt-get update como parte del procedimiento Instalar MongoDB Community Edition:

W: GPG error: https://repo.mongodb.org/apt/ubuntu <release>/mongodb-org/6.0 Release: \
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 4B7C549A058F8B6B
E: The repository 'https://repo.mongodb.org/apt/ubuntu <release>/mongodb-org/6.0 Release' \
is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

Estos errores indican que la clave pública GPG de MongoDB no se añadió en el paso Import the public key used by the package management system del procedimiento de Instalación de MongoDB Community Edition.

Repetir el paso Import the public key used by the package management system del procedimiento Instalar MongoDB Community Edition normalmente resuelve este problema. Asegúrate de copiar el comando y la clave exactamente como está documentado.

Puede validar que la clave pública GPG de MongoDB exista en su sistema ejecutando el siguiente comando en la terminal:

sudo apt-key list

La salida debe incluir una entrada que se asemeje a lo siguiente:

--------------------
pub rsa4096 2018-04-18 [SC] [expires: 2023-04-17]
E162 F504 A20C DF15 827F 718D 4B7C 549A 058F 8B6B
uid [ unknown] MongoDB 6.0 Release Signing Key <packaging@mongodb.com>

Puede que encuentres un error similar al siguiente cuando ejecutes sudo apt install -y mongodb-org en el paso Create a list file for MongoDB del procedimiento Instalar MongoDB Community Edition:

Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package mongodb-org

Este error indica que el /etc/apt/sources.list.d/mongodb-org-6.0.list puede estar configurado incorrectamente o faltar.

Para revisar el contenido del archivo mongodb-org-6.0.list, ejecuta el siguiente comando en la terminal o shell:

cat /etc/apt/sources.list.d/mongodb-org-6.0.list

Si el contenido del archivo no coincide exactamente con la documentación de tu versión de Ubuntu en el paso enlazado anterior, remueve el archivo y repite el paso Create a list file for MongoDB. Si el archivo no existe, créalo como parte de ese paso.

Una vez que hayas validado que el archivo mongodb-org-6.0.list existe y tiene el contenido correcto, ejecuta sudo apt update para actualizar los repositorios apt y vuelve a intentar sudo apt install -y mongodb-org.

Es posible que encuentre un error similar al siguiente al instalar el paquete mongodb-org:

dpkg: error processing archive /var/cache/apt/archives/mongodb-org-server_6.0.0_amd64.deb (--unpack):
trying to overwrite '/usr/bin/mongod', which is also in package mongodb-server-core 1:3.6.3-0ubuntu1

Este error indica que el sistema ya tenía el paquete Ubuntu mongodb instalado antes de instalar los paquetes oficiales de MongoDB Inc. mongodb-org. Para confirmar si el host tiene instalado el paquete Ubuntu mongodb, ejecuta el siguiente comando en una terminal o shell:

sudo apt list --installed | grep mongo

Si tu salida es similar a la siguiente, debes desinstalar el paquete Ubuntu mongodb antes de volver a intentar el procedimiento de Instalar MongoDB Community Edition:

mongodb/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed]
mongodb-clients/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed,automatic]
mongodb-server/bionic,bionic,now 1:3.6.3-0ubuntu1 all [installed,automatic]
mongodb-server-core/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed,automatic]

Ejecuta los siguientes comandos en un terminal o shell para remover completamente el paquete Ubuntu mongodb antes de volver a intentar el procedimiento de instalación:

sudo apt remove mongodb
sudo apt purge mongodb
sudo apt autoremove

Nota

sudo apt purge mongodb elimina cualquier archivo de configuración por defecto instalado por el paquete Ubuntu mongodb. Si usted ha modificado estos archivos de configuración y desea mantener esas modificaciones, copie los archivos a otro directorio, como /home/your-user-name.

Si su salida incluye una combinación de binarios mongodb-org y mongodb, es posible que deba primero apt remove, apt purge y apt autoremove del paquete mongodb-org antes de intentar eliminar y purgar el paquete mongodb de Ubuntu. Después de borrar todos los paquetes relacionados con MongoDB, vuelva a intentar la instalación.

Puede encontrar los errores Socket is already in use o Failed to unlink socket file al iniciar un mongod. Estos errores generalmente indican que otro proceso está usando el puerto configurado para el proceso mongod, normalmente otro mongod que se está ejecutando en el sistema.

El siguiente ejemplo utiliza la utilidad ss para listar todos los sockets TCP (-t) o UDP (-u) abiertos en el estado LISTEN (-l) y el proceso que utiliza cada socket (-p), sin resolver ningún nombre de servicio o de host (-n).

sudo ss -tulpn

La siguiente salida parcial muestra un proceso de mongod escuchando en el puerto 27017. Intentar ejecutar otro proceso mongod en ese mismo puerto dará lugar a errores de socket.

Netid State Local Address:Port
udp UNCONN 127.0.0.53%lo:53 users:(("systemd-resolve",pid=663,fd=12))
udp UNCONN 10.1.16.87%enp0s3:68 users:(("systemd-network",pid=652,fd=15))
tcp LISTEN 127.0.0.53%lo:53 users:(("systemd-resolve",pid=663,fd=13))
tcp LISTEN 0.0.0.0:22 users:(("sshd",pid=819,fd=3))
tcp LISTEN 192.168.1.15:27017 users:(("mongod",pid=10027,fd=12))
tcp LISTEN 127.0.0.1:27017 users:(("mongod",pid=10027,fd=11))
tcp LISTEN ::]:22 users:(("sshd",pid=819,fd=4))

Si el sistema tiene un mongod u otro proceso del sistema ejecutándose en el puerto deseado, debes cerrar dicho proceso o seleccionar un nuevo puerto para el nuevo proceso mongod. Puedes especificar la opción net.port archivo de configuración para cambiar el puerto en el que escucha el mongod.

Los usuarios pueden encontrar errores similares a los siguientes en el mongod registro del proceso:

Data directory ... not found
Attempted to create lock file on a read-only directory: ...

En general, estos errores indican que el directorio de datos de MongoDB no existe o no es accesible para el mongod.

El directorio de datos se especifica con la configuración storage.dbPath en el archivo de configuración, o con la opción --dbpath a mongod en la línea de comando.

  • Si instaló MongoDB a través del gestor de paquetes apt, el /etc/mongod.conf archivo de configuración por defecto establece storage.dbPath en /var/lib/mongodb.

  • Si ejecutas mongod en la línea de comandos y omites completamente la opción --dbpath, MongoDB utiliza un --dbpath por defecto de /data/db.

Tanto si utiliza una de las rutas de directorio de datos mencionadas anteriormente como si proporciona su propia ruta en el archivo de configuración o en la línea de comandos, asegúrese de que el directorio de datos exista en su sistema de archivos antes de iniciar. Puede crear directorios en Ubuntu con mongod el mkdir comando.

El directorio de datos debe estar configurado con los permisos y la configuración de propiedad adecuados para permitir que mongod leer, guardar y navegar por los contenidos del directorio (permisos de usuario o de grupo de rwx).

Usa chown y chmod para modificar los permisos y establecer la propiedad de user:group según corresponda antes de iniciar el mongod.

Los usuarios que inician el mongod como servicio (p. ej., usando sudo systemctl start mongod o sudo service mongod start) normalmente solo ven estos errores si modificaron el valor por defecto de dbPath en /etc/mongod.conf a:

  • Un directorio que no permite al usuario mongodb o al grupo mongodb leer, guardar o ejecutar (rwx) el directorio y su contenido, o

  • Un directorio que no existe.

Los usuarios que inician el mongod sin utilizar la definición del servicio (por ejemplo, utilizando la terminal para iniciar mongod) suelen ver estos errores si:

  • El directorio especificado a dbPath o --dbpath no permite que el usuario o un grupo al que pertenezca el usuario lea, guarde y ejecute (rwx) el directorio o su contenido, o

  • El directorio de datos especificado no existe.

Volver

Instala usando .tgz Tarball

En esta página