プロジェクト

全般

プロフィール

Dovecotが時々落ちてしまう場合

  • こんな方向けの情報
    • 高負荷でもないのに時々Dovecotだけサービスが死んでいる
    • 再起動した時に、初めは動いていたDovecotが数分後に死んでいる

原因

  • Dovecotはタイムスタンプ関連に厳しいため、起動中に時刻が
    一定以上変化すると、自動的にサービスが止まるようになっている。
  • つまり、原因として考えられるのは
    • 起動後一定時間内にntpサーバが一定時間以上の時刻修正を行った
    • 電池切れなどでハードウェアクロックがUNIX時間に戻った

などが考えられる。

対処法

  • 直接的な対処法はありません。下記のような提案をします。
    • NTPサーバを設定し、slewモード(ずれていたら少しずつ合わせる)で動作させる。
      • → 無難な方法ではあるが、大幅にずれた時に時刻同期までに時間がかかる
    • cronでスクリプトを書く
      • → lsofなどでdovecotで使っているimap/imapsポートがlistenしなければリスタート。
      • Hinemosなどの監視サーバで監視させるのも手だと思います。
  • 特に時刻がずれやすい仮想サーバなどでは注意が必要です。
  • NNI環境でもリブートでほぼ確実に発生するので、ぜひ頭の片隅に置きたい知識。

 

戻る