J'ai récemment mis à niveau vers Ubuntu 15.10 après quoi MongoDB 3.0.2 ne démarre pas.
$ Sudo service mongod start
ce qui jetterait une erreur:
Failed to start mongod.service: Unit mongod.service failed to load: No such file or directory.
C'est simplement l'absence d'un fichier de service pour Systemd. Nul besoin de revenir à la situation actuelle comme Kartik ou d'utiliser un référentiel différent de celui décrit dans https://docs.mongodb.org/manual/installation/ .
Créez un fichier /lib/systemd/system/mongodb.service
avec le contenu suivant:
[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
[Service]
User=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongodb.conf
[Install]
WantedBy=multi-user.target
Cette erreur est due au problème rencontré avec la nouvelle Ubuntu (15 ans et plus).
Le système init par défaut est systemd qui était pstart précédemment. Vous devez donc installer Upstart, redémarrer votre système et voilà, vous pouvez maintenant exécuter le service mongodb.
Sudo apt-get install upstart-sysv
Sudo service mongod start
mongod start/running, process 3371
J'ai utilisé le paquet debian dans Ubuntu 15.10
echo "deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main" | Sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
Sudo apt-get update
Sudo apt-get install -y mongodb-org
J'ai eu des problèmes similaires après la mise à niveau vers 15.10.
Il pourrait y avoir beaucoup de problèmes, mais en fonction de la cause de votre problème, vous pourrez peut-être faire fonctionner votre mongodb via init.d:
Sudo /etc/init.d/mongodb start
Cela a fonctionné pour moi, mais pas une solution à long terme puisque vous devez l'exécuter après chaque redémarrage ou l'ajouter à vos tâches de démarrage. Alors j'ai suivi ce qui suit:
1) créer le fichier de service comme expliqué par 'sclausen'.
2) recharger le service en exécutant:
Sudo systemctl daemon-reload
3) a lancé Sudo service mongodb start
4) La commande a été exécutée sans sortie. J'ai donc testé en exécutant mongo
et j'ai obtenu une erreur de socket:
Error: connect ECONNREFUSED 127.0.0.1:27017 at Object.exports._errnoException (util.js:870:11) at exports._exceptionWithHostPort (util.js:893:20) at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1062:14)
5) J'ai parcouru les journaux tail -n 50 /var/log/mongodb/
et découvert l'erreur sous-jacente:
2016-02-26T14:28:23.538+1100 E NETWORK [initandlisten] Failed to unlink socket file /tmp/mongodb-27017.sock errno:1 Operation not permitted
6) supprimé le fichier de socket problématique: Sudo rm /tmp/mongodb-27017.sock
comme suggéré sur ce fil de discussion: https://stackoverflow.com/questions/29813648/failed-to-unlink-socket-file-error-in- mongodb-3-0
7) re exécuté le service: Sudo service mongodb start
à ce moment-là, tout était bon et Bob a retrouvé sa position légitime d'oncle.
Dans mon cas, j'ai Ubuntu 16.04.1, j'installais MongoDB 3.2.11 et j'obtenais la même erreur. Après plusieurs nettoyages et tentatives, cela a finalement fonctionné "permettant" au service:
systemctl enable mongod.service
Alors ça a juste fonctionné