web-dev-qa-db-fra.com

Début de mongod fork, ERROR: le processus enfant a échoué, arrêté avec le numéro d'erreur 1

En essayant d'exécuter la commande 

mongod --fork --logpath /var/log/mongodb.log

Sur une instance Amazon ec2 32 bits (Amazon Linux AMI version 2014.09), je rencontre l'erreur suivante:

2015-02-18T18:14:09.007+0000 
2015-02-18T18:14:09.007+0000 warning: 32-bit servers don't have journaling    
enabled by default. Please use --journal if you want durability.
2015-02-18T18:14:09.007+0000 
about to fork child process, waiting until server is ready for connections.
forked process: 17116
ERROR: child process failed, exited with error number 1

Je remarque également qu'aucun fichier journal n'est créé dans le processus. 

42
Ryder Bergerud

J'ai eu la même chose et il s'est avéré être un problème d'autorisations. Si le propriétaire du processus enfant ne peut pas accéder au chemin du journal ou s'il n'existe pas, le processus échouera. 

Ce que j'ai fait a été mis le répertoire du journal dans mon répertoire personnel:

mkdir ~/log
mongod --fork --logpath ~/log/mongodb.log

Si vous voulez vraiment le mettre dans votre répertoire/var/log, changez simplement les permissions.

59
onetwopunch

Pour toute autre personne rencontrant cette erreur [même si vous l'exécutez avec Sudo], assurez-vous d'indiquer le nom de fichier du fichier journal comme suit: /var/log/mongodb.log. Je n'avais que le chemin du répertoire comme dans/var/log/car je manque de lire la documentation de mongo. 

7
orsonady

J'ai aussi eu la même erreur, mais j'ai utilisé Sudo et exécuté Sudo mongod --fork --logpath /var/log/mongodb.log. Comme @jryancanty l'a mentionné, il s'agit simplement d'une erreur d'autorisation.

7
Nathan L.

J'ai supprimé vieux 

/var/run/mongodb/mongod.pid

et tout a fonctionné.

1
rlib

Si vous avez un fichier de clé, il est également possible que les autorisations soient trop ouvertes. Assurez-vous de le définir sur 0400

0
masterforker

J'ai mal défini le chemin du journal sur var/mongodb/db/mongo.log au lieu de /var/mongodb/db/mongo.log afin que Mongo tente d'accéder à un dossier inexistant dans/home.

0
Patience Mpofu

cela pourrait fonctionner si vous rencontrez des problèmes avec /tmp/mongodb-27017.sock dans le fichier journal

Sudo chown mongodb: mongodb /tmp/mongodb-27017.sock

0
kgs

Sudo mongod --fork --logpath /var/log/mongodb.log

Dans Ubuntu pas besoin de changer les autorisations dans/var, utilisez le nom complet du fichier journal dans logpath

0
zKaj

J'ai eu les mêmes problèmes en raison de l'autorisation de l'utilisateur. Lorsque je me suis connecté à Ubuntu avec un utilisateur qui n'a pas l'autorisation de créer un fichier, cette erreur s'est également produite.

Donc, vous devez exécuter la commande avec Sudo. :)

0
Raman Kumar

J'ai le même problème après avoir retiré mongo du repo EPEL (2.x) et installé mongo à partir du mongo repo (4.x).

journalctl -xe dit:

ERROR: child process failed, exited with error number 1

Dans mon cas, j’ai un ancien fichier journal avec les autorisations root . Il suffit de définir l’autorisation correcte ou de supprimer le journal et de vérifier l’autorisation du répertoire des journaux.

0
Alexander