CRONコマンド
log確認
cat /var/log/cron
ステータス確認
service crond status
自動起動設定確認
chkconfig --list crond
cronコマンドの書式
crontab [- u :user] {-l|-r|-e} オプション
-
リスト
crontab -l -u [ユーザ]
-
編集
crontab -e -u [ユーザ]
-
削除
crontab -r -u [ユーザ]
crontabコマンドで実際に書き込まれるディレクトリ
cd /var/spool/cron/[ユーザ]
cronの設定ファイル(CentOS)
ディレクトリ名 | 利用者 | 主な用途 |
---|---|---|
/var/spool/cron/user | 全ユーザ | ユーザ毎の自動タスク設定ファイル |
/etc/crontab | root | 毎時、毎日、毎月、毎週の自動タスクのメイン設定ファイル |
/etc/cron.hourly | root | 毎時実行される自動タスク設定ファイルを置くディレクトリ |
/etc/cron.daily | root | 毎日実行される自動タスク設定ファイルを置くディレクトリ |
/etc/cron.monthly | root | 毎月実行される自動タスク設定ファイルを置くディレクトリ |
/etc/cron.weekly | root | 毎週実行される自動タスク設定ファイルを置くディレクトリ |
/etc/cron.d | root | 上記以外の自動タスク設定ファイルを置くディレクトリ |
crontab -r で設定が全て吹っ飛ぶので、ローカルファイルにバックアップを取っておく
- 現在の設定をバックアップ (例)
crontab -l > ~/crontab
- ローカルファイルを反映する (例)
crontab < ~/crontab
書式
- 分:
0~59
- 時:
0~23
- 日:
1~31
- 月:
1~12
または
jan,feb,mar,apr,may,june,july,aug,sept,oct,nov,dec
- 曜日
0~7
(0,7は日曜日) またはsun,mon,tue,wed,thu,fri,sat
コマンド
- リスト
0,15,30,45
(分フィールドで指定した場合、15分に一度処理を実行) - 範囲
1-5
(曜日フィールドで指定した場合、月曜日~金曜日に処理を実行) - 共存
1,3,7-9
(時間フィールドで指定した場合、1時、3時、7時、8時、9時に処理を実行) - 間隔値
1-5/2
(時間フィールドで指定した場合、1時、3時、5時に処理を実行)
※「/」の後ろに指定した値の間隔で処理を実行
参考URL
https://www.express.nec.co.jp/linux/distributions/knowledge/system/crond.html