cron.hourly sendmail 错误,即使我的脚本不涉及发送邮件

cron.hourly sendmail 错误,即使我的脚本不涉及发送邮件

我在 /etc/hourly.cron 中只有一个非常简单的 shell 脚本。它只控制 Twitter 机器人 - 它运行一个简短的 python 脚本,该脚本使用 tweepy 发布到 Twitter。它不涉及电子邮件或任何 sendmail 命令。

我已经设置了近一年,没有任何问题,但现在它出现与 sendmail 相关的奇怪错误。

首先,在 /var/log/syslog 中,我得到了这个:

Dec 30 10:17:01 sarah-ThinkPad-X220 CRON[29527]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Dec 30 10:17:02 sarah-ThinkPad-X220 cron[865]: Please install an MTA on this system if you want to use sendmail!
Dec 30 10:17:02 sarah-ThinkPad-X220 CRON[29526]: (root) MAIL (mailed 2136 bytes of output but got status 0x00ff from MTA#012)

然后我安装了 postfix 来尝试调试它并得到了这个:

Dec 30 15:17:01 sarah-ThinkPad-X220 CRON[4542]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Dec 30 15:17:03 sarah-ThinkPad-X220 cron[865]: sendmail: fatal: open /etc/postfix/main.cf: No such file or directory
Dec 30 15:17:03 sarah-ThinkPad-X220 postfix/sendmail[4546]: fatal: open /etc/postfix/main.cf: No such file or directory
Dec 30 15:17:03 sarah-ThinkPad-X220 CRON[4541]: (root) MAIL (mailed 250 bytes of output but got status 0x004b from MTA#012)

我是 cron 新手,完全不知道为什么需要 MTA。如能提供任何帮助,我将不胜感激。

答案1

默认情况下,cron 运行的任何输出都会通过电子邮件发送给 crontab 的所有者。要禁用此功能,请确保您的脚本不产生任何输出,或将其重定向到/dev/nullcrontab,或MAILTO=""在您的 crontab 顶部添加。

答案2

只需在 cron 文件顶部设置即可

MAILTO=""

不会发送任何邮件

相关内容