首页 > tips, TroubleShooting > Disable the mail alert send by cron

Disable the mail alert send by cron

2010年12月22日 发表评论 阅读评论

  Linux系统下cron jobs执行的时候,只要有输出到标准输出或者错误输出,cron就会发邮件给这个cron jobs的所有人,可如今,谁还会去登陆Linux看(并整理)系统邮件呀?!这样日复一日,月复一月,/var区很快就会被撑满(系统邮件在目录/var/mail/下)。/var区被撑满可是很严重的问题呀,首先,系统的log大都在/var/log/目录下,这样的话马上会导致log记不上,紧接着,如果写log的程序做的不够鲁棒的话,马上就会因为不能写log而挂掉。
  于是。。。回到正题上来,怎样避免cron发警告邮件呢?办法很简单,man crontab看一下crontab的manual(手册),都在其中了。
  首先,我们可以在crontab文件的第一行,写上

MAILTO=””

,采用把变量MAILTO置空的办法来避免发邮件;
  其次,釜底抽薪法。我们可以把cron job的标准输出和错误输出都干掉,这样的话cron以为一切OK,也就不会发报警邮件了。但是怎样把cron job的标准输出和错误输出都干掉呢?很简单,重定向。就像这样

>/dev/null 2>&1

,或者是

&> /dev/null

  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.