トップ 差分 一覧 ソース 置換 検索 ヘルプ PDF RSS ログイン

anacron について

http://aikotobaha.blogspot.jp/2011/02/rhel6-7cronanacron.html

anacronについて

crondをサポートするような機能。

crondは起動すると一分おきにcrontabを見に行って、起動条件に合致するものがあればそれを実行する。しかし、crondが起動していない時間は無視されてしまう。

例えば、毎日 23:00 にあるバッチを起動しているとする。何かの理由で 22:55〜23:05の間、サーバをメンテナンス等で止めたとする。

この場合、当然ながらバッチは起動されない。これはこれで正しい動作なのだが、それでは困る場合にanacronへ設定を入れておくことでシステム起動後にバッチを遅延起動させる事ができる。

設定の書き方

 1       65      cron.daily              run-parts /etc/cron.daily

  • 1カラム目

何日おきに実行するか?

  • 2カラム目

1カラム目で指定された期間実行されていなかった事を検知した場合、次に処理を実行する場合の遅延時間

  • 3カラム目

識別子 /var/spool/anacron 以下のこの名前のファイルが作成される。anacronは処理を実行するとこのファイルに実行された日付を書き込む

  • 4カラム目

実行する処理

run-parts

run-parts

は指定したディレクトリにある実行可能なファイルを実行するコマンドだが、実行権限やファイル名によっては実行されないので注意。
実行されるかどうかは

run-parts --test /etc/cron.daily

または

run-parts --list /etc/cron.daily

で確認できる。

CentOS5とCentOS6 の cron の動きの違い

RHEL5まではcron.{daily|weekly|monthly} 以下の実行スクリプトは、crontabにて指定された時間に実行されていたが、RHEL6からは全てanacron配下に置かれている。

そのほか、RHEL5でanacronは個別のサービスとして登録されていたが、RHEL6ではcronによって制御されている

[カテゴリ: OS > Linux]



  • Hatenaブックマークに追加
  • livedoorクリップに追加
  • del.icio.usに追加
  • FC2ブックマークに追加

最終更新時間:2019年12月03日 19時31分16秒