次のcrontabがあるとしましょう。
*/30 * * * * /root/scripts/remove_log_files.sh
これにより、不要なログの一部が30分ごとに削除されます。
25分後にサーバーがシャットダウンし、10分後にcrontabが有効になって再起動した場合はどうなりますか?
更新:一部の検索によると、この役職は解雇されません。ところが、作業がまた30分、25分ほど遅れるのでしょうか?
この問題を議論するいくつかのリソースがオンラインで見つかりません。ほとんどの議論は、crontabを使用してシステムをシャットダウンする方法についてです。
ありがとう
答え1
既存のアプローチは、cron
現在の時間が時間パターンの1つと一致することを1分ごとにチェックし、crontab
一致する各行を実行します。 「逃した仕事」や「今後の仕事」という概念はまったくありません。模様
*/30 * * * *
分を30で割ることができる(つまり、0と30)タイムスタンプを一致させます。
「システム稼働時間の25分ごとに実行」などのことをしたい場合は、より現代的なcron
実装が必要です。
1つは、従来の方法では実行できないfcron
非常に便利な「これら2つのタスクを同時に実行しないでください」など、タスクの実行時期を説明するいくつかの追加方法を追加することです。cron