2008/01/12(土)Linuxが止まった
ちょっと他人のサーバのメンテナンスを頼まれて停止したというLinuxを見てきました。比較的古いサーバで /home の使用率が90%を超えていました。おそらくこれが原因だろうと、"du -h" としたらあるディレクトリで動作が止まる。
postmaster
何事だろうと思い、Maildir の中で ls をしてみると
# ls drwx------ postmaster postmaster 512 cur/ drwx------ postmaster postmaster 26123454 new/ drwx------ postmaster postmaster 512 tmp/
ディレクトリファイルが2MBという前代未聞の数値。"ls new/"としたら何分経ってもかえってきません。"rm -rf new/" とすると自動リブート。ディスク容量を食いつぶす以前にファイル数が多すぎてシステムを圧迫するとはあっぱれすぎます。さすがは Linux 2.2 時代の ext2 ファイルシステムです。
仕方ないのでシングルユーザーモードで起動して、ファイルの削除*1を開始したのですが、一向に終わる気配がありません。ざっと概算したら、ファイルの削除だけで2時間もかかることに。メーリングリストのようなシステムに使うメールサーバのpostmasterを数年放置するといかに大変なことがおこるか良くわかりました……。*2
もっともサーバというものは、定期的にチェックかけないと本当は駄目なんですけど、その辺動いてれば気にしないという感じでおざなりにされることが多い。トラブルで困るのは使ってる人なんですけどね……。*3