_/etc/cron.d/
_のエントリが自動的に実行されることを理解しました。しかし、これらは_/etc/
_でも見つかりました
_/etc/cron.daily/
/etc/cron.hourly/
/etc/cron.monthly/
/etc/cron.weekly/
_
_/etc/cron.d/
_で、次の内容の_0hourly
_を見つけました:
_01 * * * * root run-parts /etc/cron.hourly
_
_*daily
_、_*monthly
_、または_*weekly
_というファイルはありません。
これは、スクリプトを_/etc/cron.hourly
_に追加すると、自動的に実行されることを意味しますか?そして、これは_/etc/cron.daily
_、_/etc/cron.monthly/
_および_/etc/cron.weekly/
_のスクリプトでは発生しませんか?
編集:
変数Shell
、PATH
およびMAILTO
を初期化する場合を除いて、私の_/etc/crontab
_は空です。
_/etc/cron.hourly/
_で、_0anacron
_が今日実行されたかどうかを確認するスクリプト_cron.daily
_を見つけました。これを含む_/etc/anacron
_も見つかりました:
_# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.
Shell=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=45
# the jobs will be started during the following hours only
START_HOURS_RANGE=3-22
#period in days delay in minutes job-identifier command
1 5 cron.daily Nice run-parts /etc/cron.daily
7 25 cron.weekly Nice run-parts /etc/cron.weekly
@monthly 45 cron.monthly Nice run-parts /etc/cron.monthly
_
私はそれを行うためにいくつかの読書をしたと思います。特にanacron(8)
およびanacrontab(5)
。
CentOSはこの点ではUbuntuのようであり、構成が少し異なるだけです。 Ubuntuはanacronを使用して毎日/毎週/毎月のジョブを実行し、それらは/etc/crontab
および/etc/anacrontab
。
CentOSでは、最初に次のものが用意されています。
# cat /etc/cron.hourly/0anacron
#!/bin/sh
# Check whether 0anacron was run today already
if test -r /var/spool/anacron/cron.daily; then
day=`cat /var/spool/anacron/cron.daily`
fi
if [ `date +%Y%m%d` = "$day" ]; then
exit 0;
fi
# Do not run jobs when on battery power
if test -x /usr/bin/on_ac_power; then
/usr/bin/on_ac_power >/dev/null 2>&1
if test $? -eq 1; then
exit 0
fi
fi
/usr/sbin/anacron -s
anacronを1日に1回チェック/実行し、その後:
# cat /etc/anacrontab
# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.
Shell=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=45
# the jobs will be started during the following hours only
START_HOURS_RANGE=3-22
#period in days delay in minutes job-identifier command
1 5 cron.daily Nice run-parts /etc/cron.daily
7 25 cron.weekly Nice run-parts /etc/cron.weekly
@monthly 45 cron.monthly Nice run-parts /etc/cron.monthly
ここで、毎日、毎週、毎月のcrontabが構成されています。