我们每天都会从 cron 守护进程收到数百封邮件[电子邮件保护]。我该如何阻止这种情况?这些邮件涉及我们设置的自定义 cron 作业 - 以及 AWS 设置的其他作业。
邮件主题如下:
Cron <www-data@ip-172-12-34-56> [ -x /usr/share/awstats/tools/update.sh ] && /usr/share/awstats/tools/date.sh
我读到这是默认行为,但我找不到关闭它的方法。
既不包含指令,crontab -l
也不sudo crontab -l
包含MAILTO
除常规 cron 作业计时之外的任何内容。
> cat vim /etc/crontab cat: vim: No such file or directory
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
答案1
您有几种选择。
您可以MAILTO="*address*"
在 crontab 开始时设置一个变量来指定除 root@ 之外的电子邮件地址,或者将其发送到不存在的电子邮件帐户。
您可以使用输出重定向,这样您就可以通过将其添加>/dev/null 2>&1
到 cron 作业的末尾将所有内容发送到 /dev/null。
或者您可以使用某种输出重定向组合,仅将错误发送到电子邮件或日志文件等。
http://wiki.bash-hackers.org/syntax/redirection还有一些关于如何使用重定向的示例。