
私はLinux gentooシステムを使っていて、毎日午前3時10分にcronjobを実行します。しかし、/etc
この特定のcronjobに関連する情報はファイルに含まれておらず、結果は以下のcrontab -l
ようになります。
# check scripts in cron.hourly, cron.daily, cron.weekly and cron.monthly
MAILTO=""
0 * * * * rm -f /var/spool/cron/lastrun/cron.hourly
1 3 * * * rm -f /var/spool/cron/lastrun/cron.daily
15 4 * * 6 rm -f /var/spool/cron/lastrun/cron.weekly
30 5 1 * * rm -f /var/spool/cron/lastrun/cron.monthly
*/10 * * * * test -x /usr/sbin/run-crons && /usr/sbin/run-crons
ディレクトリには/etc/cron.daily
問題のジョブが含まれている可能性がありますが、その時間は 3:01 です。なぜでしょうか。実際の cronjobn は別の場所に保存されていますか。Gentoo がジョブの実行を認識するのに 9 分かかりますか。
追加情報:
- 毎日ちょうど 13:20 に実行される、13:20 用の別の crontab ジョブ (cron.d 内) があります。
答え1
別のユーザーからのものではないかどうかを確認します:
getent passwd | while read r; do sudo -u $(echo $r | cut -d':' -f1) crontab -l; done
答え2
crontab -l
呼び出し元ユーザーのユーザーごとの crontab のみをリストします。また、システム crontab もあり、これは root のみが編集できますが、どのユーザーでもジョブを実行できます。システム crontab はファイル にあり/etc/crontab
、追加のジョブはディレクトリ 内のファイルにあります/etc/cron.d
。
ディレクトリ/etc/cron.daily
、/etc/cron.weekly
および/etc/cron.monthly
は cron によって組み込まれるのではなく、にリストされているジョブによって走査されます/etc/crontab
。