tripwireが Out of memory エラーで異常終了するときの解決方法
Wordpressのサイトの一部のファイルが改鼠されて何も表示できなくなるという状況が発生した。そのアドホックな対策としてファイルの改鼠を検出するためにtripwireを稼働させることにした。
クラウドのサーバーを稼働させ始めたときにも動かそうとしたんだけど、なぜかデータベースを初期化するところで 「Fatal Exception: Out of memory」エラーが発生してデータベースが作れなかったので諦めて放置してたのだった。
tripwireのオプションを確認しようと思って tripwire --help で起動してもオプションの説明が表示されん。。。。
ぐぐってみたら、-v で vervose てことがわかったので、-v オプションをつけて実行してみた。
# tripwire -m -i −v
すると、特定のファイルで処理が止まった。しばらく放置してたら、そこで Out of memory エラーが発生してた。/var/spool/ にあるファイルのサイズがでかくてエラーになってたらしい。
ポリシーファイル ( /etc/tripwire/twpol.txt ) に以下の内容を追加して試してみた。
!/var/spool;
あっさり初期化に成功した。
(∩´∀`)∩
つまり、tripwire のエラーで困ったときの一つの解決方法としては、vオプション付きで動かしてみるというのがいいらしい(当たり前か)。
データベース生成時にエラーの原因になってるファイルを除外するだけ(除外していいかどうかの議論は別として)。そうすれば、データベースの生成はできる。