Dovecotが時々落ちてしまう場合¶
- こんな方向けの情報
- 高負荷でもないのに時々Dovecotだけサービスが死んでいる
- 再起動した時に、初めは動いていたDovecotが数分後に死んでいる
原因¶
- Dovecotはタイムスタンプ関連に厳しいため、起動中に時刻が
一定以上変化すると、自動的にサービスが止まるようになっている。
- つまり、原因として考えられるのは
- 起動後一定時間内にntpサーバが一定時間以上の時刻修正を行った
- 電池切れなどでハードウェアクロックがUNIX時間に戻った
などが考えられる。
対処法¶
- 直接的な対処法はありません。下記のような提案をします。
- NTPサーバを設定し、slewモード(ずれていたら少しずつ合わせる)で動作させる。
- → 無難な方法ではあるが、大幅にずれた時に時刻同期までに時間がかかる
- cronでスクリプトを書く
- → lsofなどでdovecotで使っているimap/imapsポートがlistenしなければリスタート。
- Hinemosなどの監視サーバで監視させるのも手だと思います。
- NTPサーバを設定し、slewモード(ずれていたら少しずつ合わせる)で動作させる。
- 特に時刻がずれやすい仮想サーバなどでは注意が必要です。
- NNI環境でもリブートでほぼ確実に発生するので、ぜひ頭の片隅に置きたい知識。
¶
¶