Linux 何年触っていても躓きやすい cron
、困ったときのログ確認方法を記載します。
(私は Docker に設定するとき躓いた)
主に Debian 系のログ確認方法を記載(他 OS では未確認のため)
cron 設定は crontab
コマンドで設定する方法もありますが、今回は /etc/cron.d/
に設定ファイルを配置して設定しています。
方法 2 つを記載
- ログファイルを確認する方法(設定方法も)
-
journalctl
コマンドを使う方法
/var/log/syslog
や /var/log/cron
ファイルでログ確認
Google 検索すると出てくるログファイルの場所
# /var/log/syslog ファイル
cat /var/log/syslog | grep CRON
# /var/log/cron ファイル
cat /var/log/cron
ただ、試した環境ではどちらにもファイル出力されていなかった。
どうやら初期設定ではログ出力されないようなので、設定を変更します。
以下の行をコメントアウトする。(行頭の #
を取り除く)
/etc/rsyslog.d/50-default.conf
cron.* /var/log/cron.log
rsyslog
を再起動して反映
sudo systemctl restart rsyslog.service
# or
# sudo service rsyslog restart
/var/log/cron.log
にログ出力されるようになったはず。
journalctl
コマンドでログ確認
journalctl -xe -f -u cron
cron が動いているか確認
そもそもログがない場合は動いているか確認
systemctl status cron.service
その他参考サイト