【自動実行】cronとanacron

こちらの記事を参考に

cron

指定したスケジュール(日時・曜日・時・分の粒度で時間を指定)にジョブを実行する
指定した時刻に実行できなかった場合、次回の指定時刻まで待つ必要がある。
/etc/crontab, /etc/crond 以下のファイル、各ユーザのcrontabファイルなど、様々なジョブの指定方法があり、誰でも設定できる。
crondプロセスが常駐してジョブを実行する。

anacron

指定したスケジュールにランダムな遅延を挿入してジョブを実行する。
指定した時刻に実行できなかった場合、実行できなかったジョブを再実行する機能がある。
/etc/anacrontab でのみジョブの指定が可能で、rootユーザでしか設定できない。
デーモンプロセスは存在しない。

両者の使い分け

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

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

シェアする

  • このエントリーをはてなブックマークに追加

フォローする