
Ubuntu日本語フォーラム
ログインしていません。
Ubuntu8.04 Serverをインストールすると、
デフォルトではanacronはインストールされないようです。
しかし、/etc/crontabのデフォルトの設定を見ると
anacronがないと、Daily,Weekly,Monthlyは動作しないようです。
anacronをインストールすれば問題ないのですが、
デフォルトでインストールしてくれた方が親切に思えるのですが、
いかがでしょうか。
anacronをデフォルトでインストールしない理由があれば、
ご教授願います。
オフライン
たとえば「25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )」ですが、Vixie Cronで6時25分にroot権限で「test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )」が実行されます。
このとき、anacronがインストールされているとrun-partsが実行されません。
常に起動しっぱなしのサーバならこれで問題がないはずなので、インストールされないのではないでしょうか。
デスクトップ環境などで起動していない間にcron.dailyが実行されるはずだった時間を過ぎたときにも、実行されるはずだったものを実行してくれるのがanacronです。
オフライン
ZNZ様 ご回答ありがとうございます。
たしかに、サーバが常に動いていることが前提にあるのかもしれませんね。
個人的にはanacronをデフォルトで入れても特に問題はないとは思うのですが、
好みもありますので、一概には言えないですね。
anacronを入れないとcron.dailyが動いていない気がしたのですが、
別の問題もあるかもしれませんのでちょっと調べてみます。
オフライン
cronが動かない原因がわかりました。
原因はanacronではなく、run-partsにあったようです。
run-partsではスクリプトにピリオドが含まれていると実行しないようです。
run-parts --list /etc/cron.daily
にて確認できます。
スクリプトにピリオドを含まないようにすれば大丈夫でした。
久々にハマりました。
オフライン