Tips記事
» 2002年10月02日 20時34分 UPDATE

anacronデーモンって何?

[木田佳克,ITmedia]

 anacronを利用すると、24時間稼働させていないLinux上でも毎日、毎週、毎月のcronタスクが架空な積算状態として、実行させることが可能になる。

 anacronは、各タスクごとに実行結果が記録される仕組みを持つ。何故かというと、指定期間内に実行されたかを確認することで、例え電源オフの期間を経ても状態比較をしながら自動実行させることを可能とするためだ。

 また、通常のcronデーモンと異なるのは、指定したタスク設定が期間内に実行されていない場合、後述する「delay」に指定された遅延時間の後、再度コマンド実行をする仕組みを持つことだ。次に挙げるファイルがanacronのメイン設定ファイルになる。

# cat /etc/anacrontab
# /etc/anacrontab: configuration file for anacron

# See anacron(8) and anacrontab(5) for details.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:
/usr/bin

# These entries are useful for a Red Hat Linux system.
1   5   cron.daily   run-parts /etc/cron.daily
7   10   cron.weekly   run-parts /etc/cron.weekly
30   15   cron.monthly  run-parts /etc/cron.monthly

 上記の設定ファイルから、黄色の1行をピックアップして解説してみよう。

実行頻度
[単位:日]
(period)
遅延時間
[単位:分]
(deley)
保存ファイル名
(job-identifier)
実行コマンド(command)
1 5 cron.daily run-parts /etc/cron.daily

 上の表から分かるのは、1日置きにコマンド「run-parts /etc/cron.daily」を実行するが、/var/spool/anacron/ディレクトリ下にjob-identifierに基づく実行結果を現す保存ファイルが見られない場合、5分置きにコマンドを再実行するという意味だ。

Copyright © ITmedia, Inc. All Rights Reserved.