特定のディレクトリでrsyncを実行しているcronジョブがあります。
Rsyncコマンド自体Sudo rsync -av --delete /directory1 /directory2
を実行すると、問題なく実行され、意図したとおりに動作します。
Cronジョブが実行されると-/var/log/syslog.1に表示され、次のように表示されます(要約):
Mar 12 11:38:01 ip-xx-xx-xx-xxx CRON[4970]: (root) CMD (rsync --delete /my/directory /backup/directory)
Mar 12 11:38:01 ip-xx-xx-xx-xxx CRON[4970]: (CRON) info (No MTA installed, discarding output)
ただし、ファイルはバックアップディレクトリにありません(したがって、完了していません)。
「No MTA installed
」に関する2番目のステートメントは、cronジョブの完了を妨げますか?そのcronジョブを完了してMTAエラーを取り除く最良の方法は何ですか?
この答え を見つけましたが、それが仕事の終了を妨げるかどうかはわかりません。
いいえ、CRONジョブの終了を妨げません。
通常、CRONジョブに出力先を指示せずに出力を生成させないでください。この場合のように、CRONはどこかにメールを送信しようとします(crontab
ファイルでも指定されています)。成功しなかった場合、ログファイルに記載されているように、出力を破棄して続行します。
あなたの場合、「メッセージ転送エージェント」はインストールされていません。これは、postfix
コマンドを提供するssmtp
やmail
などのパッケージの一般的な名前です。
それぞれ>
と2>
を使用して、rsync
コマンドからSYSOUTとSYSERRをリダイレクトすることをお勧めします。興味がない場合は、出力を/dev/null
にリダイレクトします。