操作を誤って設定するとcron
自動的に失敗するようです。何が間違っているかを調べるには、エラーログでどこを調べる必要がありますか?
ベストアンサー1
他の人が指摘したように、cron
実行中のすべてのプログラムの出力は(存在する場合)電子メールで送信されます。したがって、結果が出ない場合は、基本的に3つの可能性があります。
crond
プログラムを実行したり電子メールを送信するためにシェルを起動することもできません。crond
メール出力に問題があるか、メールが失われました。- プログラムは出力を生成しません(エラーメッセージを含む)。
シナリオ1.可能性は低いですが、cronログに何かを記録する必要があります。 Cronには維持されるsyslogツールがあるため、ツールメッセージが送信される場所を/etc/syslog.conf
確認するには(またはディストリビューションの同等のファイル)を確認する必要があります。cron
人気の目的地には/var/log/cron
、/var/log/messages
、 があります/var/log/syslog
。
2回の場合は、メーラーデーモンログを確認する必要があります。 Cronデーモンからのメッセージは通常fromとして表示されますroot@yourhost
。MAILTO=...
crontabファイルの1行を使用して、cronに特定のアドレスに電子メールを送信するように指示できます。これにより、メーラーデーモンログをより簡単に収集できます。たとえば、
[email protected]
00 15 * * * echo "Just testing if crond sends email"
ケース3では、他のコマンドを追加してプログラムが実際に実行されているかどうかをテストし、その効果を簡単に確認できます。たとえば、次のようになります。
00 15 * * * /a/command; touch /tmp/a_command_has_run
したがってcrond
、mtimeを見ると、実際に何かが実行されていることを確認できます/tmp/a_command_has_run
。