Ubuntu ~crontab~

○ cron / crontab

xxxxx。

 

○ 設定ファイル/関連ファイル

場所/ファイル 内容
/var/spool/cron/crontabs/user-name
ユーザの自動タスク設定ファイル
/etc/crontab 毎時、毎日、毎月、毎週の自動タスクのメイン設定ファイル
/etc/cron.d/~ 下記以外の自動タスク設定ファイルを置くディレクトリ
/etc/cron.daily/~ 1日に1回 実行される自動タスク設定ファイルを置くディレクトリ
/etc/cron.hourly/~ 1時間に1回 実行される自動タスク設定ファイルを置くディレクトリ
/etc/cron.monthly/~ 1ヶ月に1回 実行される自動タスク設定ファイルを置くディレクトリ
/etc/cron.weekly/~ 1週間に1回 実行される自動タスク設定ファイルを置くディレクトリ

ツリービューでは
/  ルート
├etc
|  ├cron.d
|  |  └xxxxx  :下記以外の自動タスク設定ファイルを置くディレクトリ
|  ├cron.daily
|  |  └xxxxx  :1日に1回 実行される自動タスク設定ファイルを置くディレクトリ
|  ├cron.hourly
|  |  └xxxxx  :1時間に1回 実行される自動タスク設定ファイルを置くディレクトリ
|  ├cron.monthly
|  |  └xxxxx  :1ヶ月に1回 実行される自動タスク設定ファイルを置くディレクトリ
|  ├cron.weekly
|  |  └xxxxx  :1週間に1回 実行される自動タスク設定ファイルを置くディレクトリ
|  └crontab  :毎時、毎日、毎月、毎週の自動タスクのメイン設定ファイル
└var
    └spool
        └cron
            └crontabs
                └user-name  :ユーザの自動タスク設定ファイル

 

○ 設定の確認

xxxxx。

# crontab -l
# m h  dom mon dow   command
17 *    * * *   root    ls -l

xxxxx。

# crontab -u user-name -l
# m h  dom mon dow   command
17 *    * * *   root    cd

 

○ 設定の変更

xxxxx。

# crontab -e

xxxxx。

# crontab -u user-name -e

 

○ 設定の記述方法

xxxxx。

# 分 時 日 月 曜日 コマンド
xxxxx

項目 設定可能な値
1-59
0-23
1-31
1-12
曜日 0-6 ( 日曜日が0となります。 )
コマンド スクリプトなど、実行できるもの。

日時指定のサンプル集

記述 動作のタイミング
43 23 * * * 23:43に実行
0 17 * * 1 毎週月曜の 17:00に実行
0,10 17 * * 0,2,3 毎週日,火,水曜の 17:00と 17:10に実行
0-10 17 1 * * 毎月 1日の 17:00から17:10まで 1分毎に実行
0 0 1,15 * 1 毎月 1日と 15日と 月曜日の 0:00に実行
42 4 1 * * 毎月 1日の 4:42分に実行
0 21 * * 1-6 月曜日から土曜まで 21:00に実行
0,10,20,30,40,50 * * * * 10分おきに実行
*/10 * * * * 10分おきに実行
* 1 * * * 1:00から 1:59まで 1分おきに実行
0 1 * * * 1:00に実行
0 */1 * * * 毎時 0分に 1時間おきに実行
0 * * * * 毎時 0分に 1時間おきに実行
2 8-20/3 * * * 8:02,11:02,14:02,17:02,20:02に実行
30 5 1,15 * * 1日と 15日の 5:30に実行

 

○ 設定の変更

xxxxx。

# xxxxx
xxxxx

 

○ 設定の削除

設定していた内容が不要になったら、以下のコマンドで設定を削除できます。

# crontab -r

特定のユーザーの設定を削除する場合は、以下のようになります。

# crontab -u user-name -r

※ 設定が複数あった場合でも、上記の方法ではすべての設定が削除される。特定の設定を削除したい場合は、「-e」で編集するようにする。

 

○ ログの確認

ログは /var/log/syslog に残る。

# tail /var/log/syslog
Mar 26 14:17:01 ubuntu-v /USR/SBIN/CRON[4415]: (root) CMD (root    ls -l)

syslog はいろんなログが残るので、cronに関するログだけ抽出する。

#  grep cron /var/log/syslog
Feb  4 14:47:40 ubuntu-v /usr/sbin/cron[4166]: (CRON) INFO (pidfile fd = 3)
Feb  4 14:47:40 ubuntu-v /usr/sbin/cron[4167]: (CRON) STARTUP (fork ok)
Feb  4 14:47:40 ubuntu-v /usr/sbin/cron[4167]: (CRON) INFO (Running @reboot jobs)
Feb  4 14:50:54 ubuntu-v /usr/sbin/cron[4174]: (CRON) INFO (pidfile fd = 3)
Feb  4 14:50:54 ubuntu-v /usr/sbin/cron[4175]: (CRON) STARTUP (fork ok)


自宅サーバーWebRing << 前 |ID=231 |次 >> 乱移動前後5表示サイト一覧