web-dev-qa-db-ja.com

mongod forkの開始、エラー:子プロセスが失敗し、エラー番号1で終了しました

コマンドを実行しようとしたとき

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

Amazon ec2 32ビットインスタンス(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

また、プロセスでログファイルが作成されないことにも気付きました。

44
Ryder Bergerud

私は同じことをしていたが、それはパーミッションの問題であることが判明した。子プロセスの所有者がログパスにアクセスできない場合、またはログパスが存在しない場合、失敗します。

私がしたことは、ログディレクトリをホームディレクトリに配置することでした。

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

/ var/logディレクトリに本当に配置したい場合は、許可を変更するだけです。

64
onetwopunch

[Sudoで実行した場合でも]このエラーが発生した場合は、ログファイルのファイル名を/var/log/mongodb.logのように指定してください。 mongo docsを読み損ねてしまったので、/ var/log /のようなディレクトリパスだけがありました。

8
orsonady

また、同じエラーが発生しましたが、Sudoを使用してSudo mongod --fork --logpath /var/log/mongodb.logを実行しました。 @jryancantyが述べたように、それは単に許可エラーです。

7
Nathan L.

古いものを削除しました

/var/run/mongodb/mongod.pid

そしてすべてが働いた。

1
rlib

キーファイルがある場合は、アクセス許可が開かれている可能性もあります。必ず0400に設定してください

0
masterforker

ログパスを/var/mongodb/db/mongo.logではなくvar/mongodb/db/mongo.logに誤って設定したため、Mongoは/ homeに存在しないフォルダーにアクセスしようとしました。

0
Patience Mpofu

ログファイルに/tmp/mongodb-27017.sockの問題がある場合、これは機能する可能性があります。

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

0
kgs

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

Ubuntuでは、/ varのパーミッションを変更する必要はなく、logpathで完全なログファイル名を使用します

0
zKaj

ユーザーの許可のために同じ問題が発生しました。ファイルを作成する許可を持っていないユーザーでubuntuにログインすると、このエラーも発生しました。

そのため、Sudoでコマンドを実行する必要があります。 :)

0
Raman Kumar

EPELリポジトリ(2.x)からmongoを削除し、mongoリポジトリ(4.x)からmongoをインストールした後、同じ問題が発生します。

journalctl -xeより:

ERROR: child process failed, exited with error number 1

私の場合、ルート権限を持つ古いログファイルがあります。正しい権限を設定するか、ログを削除してログディレクトリの権限を確認してください。

0
Alexander