unit unable start org not mongod iniciar found failed deploy actualizar mongodb ubuntu systemctl

start - unable to locate package mongodb-org



Ejecutando mongodb en ubuntu 16.04 LTS (4)

¿Cómo puedo ejecutar Mongodb, como un servicio, en Ubuntu 16.04 LTS? Hace unos días tuve la actualización de mi servidor a Ubuntu 16.04. Me di cuenta de que mi servicio MongoDB no se inicia cuando reinicio. Tratando de usar

sudo initctl start mongod

No hizo el truco. Alguien tiene una idea de cómo resolver esto?


Para las personas que quieren una instalación nueva

He estado luchando con esto por 1 hora. Luego encontré esta página Instalar es tan fácil como hacerlo:

sudo apt-get update sudo apt-get install mongodb

Luego, para verificar si todo funciona:

sudo service mongodb status

¡Hazme saber si esto funciona para ti!


Cualquiera que actualice o instale Ubuntu 16.04 (también conocido como Ubuntu Xenial xerus) notó que algunos de los viejos servicios dejaron de ejecutarse. Este problema se conoce a partir de la versión 15.04, pero me centraré en la versión anterior.

Tal fue mi caso con MongoDB. Para hacer una historia larga, corta, Ubuntu cambió de upstart a systemd. Una solución común, para estos problemas, es volver al advenedizo. No considero esa opción como una solución real, ciertamente no a largo plazo.

Una solución real (en mi humilde opinión) para el problema es escribir el script systemd que iniciará MongodDB. Desafortunadamente, los muchachos de MongoDB todavía tenían que suministrar uno.

Así que tuve que escribir uno desde cero. Para crear uno propio, siga estos pasos:

  1. cambiar a la raíz usando

    sudo su

o use sudo para todos los siguientes pasos.

  1. crear un script de servicio (en este ejemplo, el nombre del servicio es Mongodb)

    nano /lib/systemd/system/mongodb.service

  2. El contenido del archivo debe ser

    [Unit] Description=MongoDB Database Service Wants=network.target After=network.target [Service] ExecStart=/usr/bin/mongod --config /etc/mongod.conf ExecReload=/bin/kill -HUP $MAINPID Restart=always User=mongodb Group=mongodb StandardOutput=syslog StandardError=syslog [Install] WantedBy=multi-user.target

También puede descargar el archivo desde aquí: mongodb.service
Aquí hay una descripción rápida de los campos importantes:
ExecStart - Es el comando para ejecutar. Mongo se instala en / usr / bin y el archivo de configuración está escrito en / etc
Usuario : el fluido del proceso mongod.
Grupo - El regalo del proceso de mongod. Tenga en cuenta que el usuario y el grupo son creados por la instalación.

Ahora para comenzar mongodb:

sudo systemctl start mongodb

Para detener el uso del servicio mongodb:

sudo systemctl stop mongodb

Para habilitar mongodb en el inicio

sudo systemctl enable mongodb.service

Si necesita actualizar los servicios, use:

sudo systemctl daemon-reload


La última versión de MongoDB hace la mayoría de las cosas, excepto una por ahora. Después de instalar MongoDB en Ubuntu 16.04.x , ejecute los comandos de la siguiente manera:

$ sudo systemctl enable mongod.service $ sudo systemctl daemon-reload

Ahora lo más probable es que mongod comience automáticamente en cada arranque.

Esta solución también funciona en caso de obtener este error:

Error al iniciar mongod.service: Unidad mongod.service no encontrada.

Después de ejecutar los comandos anteriores, los siguientes comandos comienzan a funcionar:

$ sudo service mongod start $ mongo

Del mismo modo, todos los servicios instalados deben estar habilitados para ejecutarse. Por ejemplo, después de la instalación de Ops Manager (también conocido como MMS), la documentación dice que ejecute el comentario a continuación.

$ sudo systemctl start mongodb-mms.service

Lo más probable es que Ubuntu no inicie el servicio. Porque aún no está habilitado. Para habilitarlo, simplemente ejecute el siguiente comando:

$ sudo systemctl enable mongodb-mms.service $ sudo systemctl daemon-reload

Luego intente iniciar el servicio:

$ sudo systemctl enable mongodb-mms.service

Eso es todo...


Los paquetes para 3.2+ contienen scripts advenedizos.

Primero, siga las instrucciones oficiales para instalar :

# If you installed the ubuntu package, remove it, if not skip to key import sudo apt-get remove mongodb sudo apt-get autoremove # import key sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927 # add trusty repos echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list # update apt sudo apt-get update # install the package sudo apt-get install -y mongodb-org

Luego desenmascarar el trabajo mongodb.service (y habilitarlo e iniciarlo). Creo que estaba enmascarado porque el paquete también incluye trabajos advenedizos, por lo que no querría que los dos comenzaran. En nuestro caso, sin embargo, esto es claramente lo que queremos.

sudo systemctl unmask mongodb sudo service mongodb enable sudo service mongodb start

Referencias

cuestión relevante de JIRA

pregunta relacionada sobre Ask Ubuntu