cron
1.cronとは
決められた時刻にコマンドを定期的に実行したり、シェルスプリクト、さらにはインタースプリクト言語で書かれたプログラムを動作させたりするデーモンプロセス。
これは、crondというデーモンによって管理することができる。
2. cronの設定
①サービス起動しているか確認
# /etc/rc.d/init.d/crond status
②設定ファイル確認
/etc/cron.hourly root 毎時実行される自動タスク設定ファイルを置くディレクトリ /etc/cron.daily root 毎日実行される自動タスク設定ファイルを置くディレクトリ /etc/cron.monthly root 毎月実行される自動タスク設定ファイルを置くディレクトリ /etc/cron.weekly root 毎週実行される自動タスク設定ファイルを置くディレクトリ /etc/cron.d root 上記以外の自動タスク設定ファイルを置くディレクトリ
ここらに実行したいスプリクトを書く!!!!!!!!!!!!!!!!
③ cronコマンドの設定
/etc/crontab root 毎時、毎日、毎月、毎週の自動タスクのメイン設定ファイル を編集
or
crontab -e で編集
SHELL=/bin/bash ※/etc/passwdの記述に関係なく、強制的にここで定義されたシェルを使う。 PATH=/sbin:/bin:/usr/sbin:/usr/bin ※パスの設定。ここに記述されたディレクトリ内の実行ファイルはパス名を省略して記述することが可能。 MAILTO=root ※cronの実行結果をここで指定されたユーザー宛にメールで送ります。(デフォルトではroot)。 HOME=/ ※crondによりプログラム実行されるときの カレントディレクトリの指定。 # run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly
↑
分 時 日 月 曜日 コマンド
(曜日は0と7が日曜日、1から月、火、水、木、金、土)
④ cronコマンドの設定 を確認
crontab -l
ユーザは、それぞれのcrontabファイルを「/var/spool/cron」配下にユーザー名をファイル名として保存される。
# ls -l /var/spool/cron -rw------- 1 root root 172 3月 3 13:45 root
rootというファイルが作成