crondのステータスを確認
$ /etc/rc.d/init.d/crond status
crond (pid 1491) を実行中...
- 設定の更新は自動で読みに来てくれるので、起動さえしていれば問題ない
cronの設定
# vi /etc/crontab
- 「crontab -e」を使う方法もあるが、一元管理するならcrontabを使ったほうがよさげ
- 単純な定期実行であれば、下記に設定するほうが推奨らしい
- /etc/cron.daily
- /etc/cron.weekly
- /etc/cron.monthly
メールを飛ばさないようにする
* * * * * [User] [Command] >/dev/null 2>&1
- 情報が失われるので、別途適切にログ等を出力させる必要あり
動作確認
ログを見る
/var/log/cron
- クーロンが実行されたか
- 設定ファイルをリロードしたか
/var/spool/mail/{User}
- メール飛ばしている場合
/var/spool/cron/{User}
- crontabコマンドで指定している場合
トラブルシュート
上手く動かない時は、↓あたりを疑うとよい
- 環境変数
- 権限
その他
- 実行ディレクトリはcrontabの場合HOMEに指定したディレクトリになる
- 外部ファイル化することもできるらしい
- 構成管理を考えるとそのほうがいいのかも?
参考
-
crontab.guru
- cronの書き方など調べるときに
- crontab -e は「絶対に」使ってはいけない
- cron上でのコマンド実行を再現する
- crontabの書き方と安全な使い方