/etc/cron.monthly/ と crontabコマンド の違い

今まで cron の設定は「crontab -e」でやっていた。
これはこれでいいらしい。

ただ、cron にはデフォルトで定期実行が設定されている。
具体的には「毎月」「毎週」「毎日」「毎時間」の4つが、
以下のディレクトリに対応している。

1. /etc/cron.monthly/
2. /etc/cron.weekly/
3. /etc/cron.daily/
4. /etc/cron.hourly/

これらの実行時間は CentOS5 であれば「/etc/crontab」で設定されており、
CentOS6であれば「/etc/anacrontab」で設定されている。

CentOS6 は「/etc/crontab」で設定されていないとは・・・少しハマった・・・。

つまり、「/etc/crontab」or「/etc/anacrontab」で
設定されているスケジュールで各ディレクトリ配下のスクリプトが実行される。


今までは全てのスクリプトを「crontab -e」で設定していたが、
スクリプトの実行時間に厳しい制約がなければ、
任意のディレクトリに放り込めば実行される。
なんて便利なんだ・・・・。

ちなみに、「/etc/cron.d/」は
インストールされたパッケージ専用ディレクトリらしいので、
いじる必要なさそう。

いつも使っていた「crontab -e」で作成されるファイルは
「var/spool/cron/」の配下にユーザー名別で配置されています。