crontabで一分後に実行設定したが動かない

crontabで一分後に実行設定したが動かない


 crontabの設定テストをしようと思って、実行時を一分後に設定したら動かなかった。
 

 具体的にはこうだ。17:30に以下の設定をした。

% crontab -e ←crontab編集。viでcrontab設定が開く

31 17 * * * /home/admin/test.sh ←毎日 17:31に/home/admin/test.shが実行される設定

vi閉じる

1分待つ 

 予想では、17:31に/home/admin/test.shが実行されるはず。しかし、実行されなかった。
 test.shがエラーで失敗している場合は、実行ユーザ宛にOSからメールが来るが、実行された気配自体がないのだ。/var/log/cronlog(cronの実行ログ)を見てみると、17:31にRELOADというのが実行されている。
 そこで、テストの実行タイミングを2分後に設定してみた。つまり、現在17:30だったら、17:32に動くように設定するということだ。結果、あっけなく動いた。 よくわからないが、crontabの設定変更をしたら、一分後にRELOAD(たぶん、OSの設定読み込み処理)が実行され、ようやく設定が反映されるということらしい。
 というわけで、crontabの実行テストをする場合は、現在時刻より2分以上あけて実行しようということを心に刻み、今回の覚書を終わる。