Cronタスクが時々動作しない理由をトラブルシューティングしようとしています。 cronはデフォルトでログファイルをどこに保存しますか?/var/log/syslogですか?
私はそのファイルを見ましたが、空です。何か設定する必要がありますか?
デフォルトとして、cronのログは/ var/log/syslogに保存されます。 rsyslogdの構成に依存します。変更できます:
rsyslog configに移動します
cd /etc/rsyslog.d/
Sudo nano 50-default.conf
不明な行:
#cron。* /var/log/cron.log
ファイルを保存してrsyslogを再起動します
Sudoサービスrsyslogの再起動
Cronデーモンを再起動して、新しいファイルからメッセージを取得します
Sudoサービスcronの再起動
cron
が機能しない場合、ユーザーroot
にメールを送信します。唯一の問題は、メールボックスにメールを送信/保存するソフトウェアがないことです。
しかし、恐れることはありません。Postfix
はここにあります!
sudo apt-get update sudo apt-get install postfix heirloom-mailx
postfix
をインストールすると、セットアップ方法を尋ねられます。最初の画面でlocal only
を選択し、他のすべてのデフォルト設定を続行します。
次に、お気に入りのエディターを使用して、/etc/aliases
を編集します。最初は次のようになります。
#format postmaster:root のman 5エイリアスを参照してください。
つまり、postnaster
に送信されたメールはすべてroot
にも送信されます。この場合、root
(cronメールおよびその他のシステムメール)に送信されるメールはusername
(us)に送信されます。
そのため、/etc/aliases
を次のように編集します。
#format postmaster:root root:norman のman 5エイリアスを参照してください。
(norman
を明らかにユーザー名に置き換えます。私と同じ名前/ユーザー名を持っている場合を除きます。:))
すべての説明が終わったら、次のコマンドを実行してPush
変更を行います。
sudo newaliases
さて、実行後:
sudo dpkg-reconfigure postfix
postfix
をインストールするときと同じ画面が表示されます。デフォルト(Local Only
など)を実行します。ルートとポストマスターのエイリアスを要求するときにその部分に到達したら、上記の/etc/aliases
に追加したものと同じであることを確認してください。次に、デフォルトを実行し続けます。
完了したら、次のコマンドを実行してpostfix
を再起動し、開始します!
sudoサービスのpostfix restart
これで、cronにエラーがある場合は、メールで送信されます。しかし、あなたはおそらく疑問に思うでしょう、世界でどのように私の(ローカル)メールをチェックするのですか?
それを行うには、次のコマンドを実行します。
郵便物
簡単です。メールがない場合は、No mail for <username>
と表示されます。それ以外の場合は、きちんとしたターミナルインターフェイスを使用できます。受信ボックスを操作する方法については、 manページ を参照してください。
または、必要に応じて、次のコマンドを使用してローカルのmanページにアクセスできます。
manメール
そして、これで完了です! :)
追伸cron
問題の詳細については、 this をお読みください。
mail
を実行すると、次の応答が返されました。
The program 'mail' is currently not installed. To run 'mail' please ask your administrator to install the package 'mailutils'
代わりに、/var/mail/root
に保存されているエラー/メールを見つけました