經常會遇到這樣的問題,登陸系統或輸入指令時,系統總會提示:
You have new mail in /var/spool/mail/root
有時很煩,具體產生的原因如下:
cron中執行的腳本有輸出導致的。很多人寫腳本都不考慮標準輸出和錯誤輸出如何處理,這樣一旦有輸出,cron就會把輸出內容發郵件給目前用戶。很多網上說的停止MTA(sendmail or postfix)等是不管用的,刪除sendmail指令也不行。
比較普通的處理方法就是在每條cron後面添加如下方法進行屏蔽。
1 |
>/dev/null 2>&1 |
或
1 |
&> /dev/null |
如:
1 |
*/2 * * * * /usr/local/sbin/dog_lighttpd.sh >/dev/null 2>&1 |
還有更簡單的方法:
直接修改crontab
1 |
vi /etc/crontab |
在第一行添加
1 |
MAILTO="" |
在/etc/crontab中定義了收件人,我們把收件人留空白就可以了