我有一个CentOS服务器,我找到了一个脚本,向我发送有关机器健康状况的电子邮件。 Postfix正确配置,因为脚本完成了他的工作,我收到报告到我的gmail帐户,但是当我在/ etc / crontab中请求cron作业每天晚上11点发送一次这个报告时,我会收到120封电子邮件!
第一个是我要求的报告,第二个是如下:
交付给以下收件人永久失败:
root@server.localdomain
永久性失败的技术细节: DNS错误:server.localdomain的地址解析。失败:找不到域名
120封电子邮件,其中包含60份报告,另外60份是上述错误消息。
同样,如果我现在运行该脚本它工作正常,我收到1封电子邮件与我的报告,没有失败的交付。
与cron有什么关系?第/etc/crontab
行如下:
* 23 * * * root sh /home/fr2632v2/Downloads/linuxhealthcheck.sh
由于
答案 0 :(得分:1)
Cron正尝试向root
电子邮件地址发送电子邮件,默认情况下为root@hostname
。你有两个选择。
在root
中配置全局/etc/aliases
电子邮件。
# Person who should get root's mail
root: your@email.com
配置cron以将报告发送到特定地址
/etc/crontab
并将MAILTO=
更改为所需的电子邮件地址。 现在您已经配置了它,您应该收到2封电子邮件:1来自脚本本身(正如您提到的那样,即使您手动运行它也会收到一封)和2来自作业的cron STDOUT(正常输出)。如果您不希望收到第二个,请将您的cronjob更改为以下内容:(如果出现错误,它仍会发送电子邮件):
* 23 * * * root sh /home/fr2632v2/Downloads/linuxhealthcheck.sh > /dev/null