Posted at

cron と anacron の比較

More than 3 years have passed since last update.


cron と anacron の比較


cron の特徴


  • 指定したスケジュール(日時・曜日・時・分の粒度で時間を指定)にジョブを実行する

  • 指定した時刻に実行できなかった場合、次回の指定時刻まで待つ必要がある。

  • /etc/crontab, /etc/crond 以下のファイル、各ユーザのcrontabファイルなど、様々なジョブの指定方法があり、誰でも設定できる。

  • crondプロセスが常駐してジョブを実行する。


anacron の特徴


  • 指定したスケジュールにランダムな遅延を挿入してジョブを実行する。

  • 指定した時刻に実行できなかった場合、実行できなかったジョブを再実行する機能がある。

  • /etc/anacrontab でのみジョブの指定が可能で、rootユーザでしか設定できない。

  • デーモンプロセスは存在しない。


両者の使い分け

anacron は、ランダムな遅延を挿入するため、複数のサーバで同時に実行したくない場合に使うと良いと考えられる。例えば、複数のサーバでログを収集し、1つのサーバに集約したり、負荷の高いサービスを複数サーバで提供していたりする場合などである。

しかし、同時に実行しないのが感覚的に気持ち悪かったりするので、基本的には cron で良いような…気がする…。