crontabジョブが正しく機能していることを確認する方法

crontabジョブが正しく機能していることを確認する方法

そのため、次のコマンドを使用してキャッシュを消去するデフォルトの.shファイルを作成しました。

sync; echo < 3 /proc/sys/vm/drop_caches

注文する。その後、私のユーザー名に保存します。

/home/marc 

その後、crontabを見つけ、ラップトップのRAMが非常に急速に消費されることを発見したので、このshファイルを使用して毎時間crontabを実行することにしました。 crontab -eを使用してファイルを次のように編集しました。

0 * * * * /root/clearcache.sh 

私の質問は、「私はすべてをうまくやっていますか?」です。 crontabファイルを正しく編集しましたか?それでは、ジョブが期待どおりに実行されていることをどのように確認しますか?

答え1

cronjobが期待どおりに機能していることを確認してください(見つからない)マニュアルページを読む)は特定のファイルに日付を報告する簡単なcronjobを追加します。

0 * * * * date >> /tmp/cronjob.test

その後、翌日(またはいつでも)を確認し、予期した時間に実行されていることを確認してください。

私は個人的にマニュアルページを読むことをお勧めします。より速いですが、上記の方法はより長く怠惰な方法です。 ;)

答え2

したがって、cronにはロギングやデバッグオプションがないようです。

短いスクリプトが期待どおりに実行されることを確認するには、strace -f -p $(pgrep cron)ターミナルウィンドウで確認できます。事前に実行して、strace -f my-basic.shそれが何であるかを知ることができます。しなければならないのように見えます。

cronスクリプトが出力を生成したら、ユーザーにメールで送信する必要があります。端末を開くと、メールがあるというメッセージが表示され、このコマンドはメールをmail表示します...このコマンドが別の「学習機会」になる可能性があるかどうか心配です。

エラーにより、スクリプトが出力を生成し、メッセージが生成されると予想される可能性があります。これがUNIX規約だ。 「ニュースは良いニュースです」

関連情報