Запуск mongod fork, ERROR: дочерний процесс завершился неудачно, вышел с ошибкой номер 1
При попытке выполнить команду
mongod --fork --logpath /var/log/mongodb.log
На экземпляре 32-разрядного экземпляра Amazon ec2 (Amazon Linux AMI версии 2014.09) я столкнулся с следующей ошибкой:
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
Я также заметил, что в этом процессе не создается файл журнала.
Ответы
Ответ 1
У меня было то же самое, и это оказалось проблемой с разрешениями. Если владелец дочернего процесса не может получить доступ к пути журнала или путь к журналу не существует, он завершится с ошибкой.
Что я сделал, был помещен каталог журнала в мой домашний каталог:
mkdir ~/log
mongod --fork --logpath ~/log/mongodb.log
Если вы действительно хотите поместить его в каталог /var/log, просто измените разрешения.
Ответ 2
Для всех, кто работает в этой ошибке [даже если вы запустили его с помощью sudo], убедитесь, что вы указываете имя файла журнала, как в:/var/log/mongodb.log. У меня был только путь к каталогу, как в /var/log/, так как я пропустил прочтение документов mongo.
Ответ 3
У меня также была такая же ошибка, однако я использовал sudo и запустил sudo mongod --fork --logpath /var/log/mongodb.log
. Как упоминал @jryancanty, это просто ошибка разрешений.
Ответ 4
Я удалил старый
/var/run/mongodb/mongod.pid
и все сработало.
Ответ 5
Если у вас есть ключевой файл, также возможно, что разрешения слишком открыты. Убедитесь, что вы установили его на 0400
Ответ 6
это может работать, если вы видите проблемы с /tmp/mongodb -27017.sock в файле журнала
sudo chown mongodb: mongodb/tmp/mongodb-27017.sock
Ответ 7
sudo mongod --fork --logpath/var/log/mongodb.log
В ubuntu нет необходимости изменять разрешения в /var, используйте полное имя файла журнала в пути журнала
Ответ 8
У меня возникли те же проблемы из-за пользовательского разрешения, когда я вошел в систему ubuntu с пользователем, у которого нет разрешения на создание файла, а затем эта ошибка возникла.
Итак, вам нужно запустить команду с помощью sudo.:)
Ответ 9
Я неправильно указал путь к журналу var/mongodb/db/mongo.log вместо /var/mongodb/db/mongo.log, поэтому Mongo пытался получить доступ к несуществующей папке в /home.
Ответ 10
У меня та же проблема после удаления монго из репо EPEL (2.x) и установки монго из репо mongo (4.x).
Journalctl -xe говорит:
ERROR: child process failed, exited with error number 1
В моем случае у меня есть старый файл журнала с правами root.
Просто установите правильное разрешение или удалите журнал и проверьте разрешение каталога журнала.