GNU/Linux >> Linux の 問題 >  >> Linux

Linux で mongod dead but subsys locked および Insufficient free space for journal files というエラーが発生するのはなぜですか?

mongod --config mongod.conf の実行時に提供される構成ファイルに以下を追加できます。

MongoDB 3.x の場合 (最新版)

storage:
   mmapv1:
      smallFiles: true

バージョン 2.6+ の場合

storage:
   smallFiles: true

バージョン 2.4 の場合 以下

smallfiles = true

次に、mongod を実行して構成ファイルを受け入れます (ここでは、構成の場所が /etc/mongodb.conf であると想定しています)。 ):

mongod -f /etc/mongodb.conf

小さいファイルのドキュメント パラメータ:

Set to true to modify MongoDB to use a smaller default data file size. 
Specifically, smallfiles reduces the initial size for data files and
limits them to 512 megabytes. The smallfiles setting also reduces the
size of each journal files from 1 gigabyte to 128 megabytes.

mongod を開始 次のコマンドを使用したインスタンス

mongod --dbpath /data/db --smallfiles

http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/ の公式ガイドに従っていました

使用後

$sudo service mongod start

このログを確認して、MongoDB が正常に起動したかどうかを確認しました:

/var/log/mongodb/mongod.log

これは私が見つけた問題です:

2014-11-11T12:54:05.808-0500 [initandlisten] ERROR: Insufficient free space for journal files
2014-11-11T12:54:05.808-0500 [initandlisten] Please make at least 3379MB available in /var/lib/mongodb/journal or use --smallfiles
2014-11-11T12:54:05.808-0500 [initandlisten]
2014-11-11T12:54:05.808-0500 [initandlisten] exception in initAndListen: 15926 Insufficient free space for journals, terminating
2014-11-11T12:54:05.808-0500 [initandlisten] dbexit:
2014-11-11T12:54:05.808-0500 [initandlisten] shutdown: going to close listening sockets...
2014-11-11T12:54:05.808-0500 [initandlisten] shutdown: going to flush diaglog...
2014-11-11T12:54:05.808-0500 [initandlisten] shutdown: going to close sockets...
2014-11-11T12:54:05.808-0500 [initandlisten] shutdown: waiting for fs preallocator...
2014-11-11T12:54:05.808-0500 [initandlisten] shutdown: lock for final commit...
2014-11-11T12:54:05.808-0500 [initandlisten] shutdown: final commit...
2014-11-11T12:54:05.808-0500 [initandlisten] shutdown: closing all files...
2014-11-11T12:54:05.808-0500 [initandlisten] closeAllFiles() finished
2014-11-11T12:54:05.808-0500 [initandlisten] journalCleanup...
2014-11-11T12:54:05.808-0500 [initandlisten] removeJournalFiles
2014-11-11T12:54:05.814-0500 [initandlisten] shutdown: removing fs lock...
2014-11-11T12:54:05.814-0500 [initandlisten] dbexit: really exiting now

解決策:

ファイル /etc/mongod.conf の最後に、次の行を追加しました:

smallfiles = true

その後、mongod サービスを再起動しました:

$sudo service mongod restart

その後、ログを確認したところ、すべてが完璧で、問題が修正されていることがわかりました:

2014-11-11T22:32:20.544-0500 ***** SERVER RESTARTED *****
2014-11-11T22:32:20.552-0500 [initandlisten] MongoDB starting : pid=5200 port=27017 dbpath=/var/lib/mongodb 64-bit host=jaimemontoya-VirtualBox
2014-11-11T22:32:20.552-0500 [initandlisten] db version v2.6.5
2014-11-11T22:32:20.552-0500 [initandlisten] git version: e99d4fcb4279c0279796f237aa92fe3b64560bf6
2014-11-11T22:32:20.552-0500 [initandlisten] build info: Linux build8.nj1.10gen.cc 2.6.32-431.3.1.el6.x86_64 #1 SMP Fri Jan 3 21:39:27 UTC 2014 x86_64 BOOST_LIB_VERSION=1_49
2014-11-11T22:32:20.552-0500 [initandlisten] allocator: tcmalloc
2014-11-11T22:32:20.552-0500 [initandlisten] options: { config: "/etc/mongod.conf", net: { bindIp: "127.0.0.1" }, storage: { dbPath: "/var/lib/mongodb", smallFiles: true }, systemLog: { destination: "file", logAppend: true, path: "/var/log/mongodb/mongod.log" } }
2014-11-11T22:32:20.564-0500 [initandlisten] journal dir=/var/lib/mongodb/journal
2014-11-11T22:32:20.564-0500 [initandlisten] recover : no journal files present, no recovery needed
2014-11-11T22:32:20.738-0500 [initandlisten] waiting for connections on port 27017
2014-11-11T22:33:20.748-0500 [clientcursormon] mem (MB) res:36 virt:245
2014-11-11T22:33:20.748-0500 [clientcursormon]  mapped (incl journal view):64
2014-11-11T22:33:20.748-0500 [clientcursormon]  connections:0

Linux
  1. Linuxでファイルを検索するには、検索と検索を使用します

  2. 「docker dead but subsys locked」 – docker 起動中のエラー

  3. Linux でのファイルの変更とファイルの実行を監査する方法

  1. メディアファイルスペースを節約するための7つのLinuxコマンドラインのヒント

  2. DistroTest –LinuxおよびUnixオペレーティングシステムをオンラインで無料でテスト

  3. Linux 用の 5 つの無料でオープンソースの学校管理ソフトウェア

  1. cpを取得する理由:Linuxでのディレクトリエラーの省略と解決方法

  2. Linux – Linuxで現在の日付のファイルを取得しますか?

  3. Eximエラーを修正-eximは無効ですが、サブシステムはロックされています