急にメールが受信できなくなったので調べて欲しいと依頼がありました。telnet で接続してみるとログインは出来るがログイン直後に切断されてしまう。サーバのログを見てみると

Error indexing mbox file /var/mail/user: LF not found where expected
Error indexing mbox file /var/mail/user: LF not found where expected

と1度のアクセスで同じエラーメッセージが2度出ている。

devcot 0.99 のバグで mbox に From 行が複数あると起きるらしい。

From hoge@example.com Mon Dec 14 09:03:48 2009
From foo@example.com Mon Dec 14 09:05:32 2009

これはロック処理に問題があるためのようです。2つある From のどちらかを削除すれば解決するようなのですが、今回のケースではこれと違いました。

今回は mbox の先頭に空行があるために発生していました。vi で該当のユーザの mbox を開き、先頭の空行を削除すれば、無事にメールボックスにアクセスできるようになりました。

この先頭に空行が入るのも devcot 0.99 のバグのようです。0.99 は mbox に色々とバグがあるようなので、v1.0 にバージョンアップした方がよいみたい。バージョンアップを勧めておこう。maildir の方が個人的には好きですね。

参考サイト:Mbox での問題

関連する投稿