/var/spool/postfix/maildrop 出现大量文件原因和解决办法

今天发现服务器硬盘报警,出现空间不足的情况,后经查看发现是 /var/spool/postfix/maildrop 有大量文件,但服务器本身没有启动 postfix服务。

继续上网查资料,发现是crontab 每次执行任务后会发送邮件,接受者是在他的配置文件 “/etc/crontab” 通过 MAILTO=root’ 来设置的,默认是root,如果执行输出没有十分必要要用邮件发送的话,可以修改此处。

下面是两个解决方法

 方法一:

修改“/etc/crontab”

将‘MAILTO=root’替换成‘MAILTO=""’修改之后没有成功,需要重启crond服务才可以

也可从在crontab(crontab -e)中最前面直接加入MAILTO=""

方法二:

如果是我们不关心的备注型等输出我们完全可以让其输出到 /dev/null 这样就不会因为发送失败到导致在/var/spool/postfix/maildrop下面产出什么文件。

例如:

*/10 * * * * /tmp/test.sh >/dev/null 2>&1

经过测试发现果然没有再出现新增的文件。当然如果输出内容有需要保存的话,可以输出到指定文件。比如下面这样

*/10 * * * * /tmp/test.sh >/log/test.log

本人倾向于第二种方案,虽然都解决问题,但第一种改变了需要发送的机制,造成所有的都不能接收到邮件,且需要重启crond服务,对执行crontab比较多的,有一定影响;第二种感觉比较灵活,且改完立即生效。

posted @ 2018-07-09 11:21  達達尼亞  阅读(8760)  评论(0编辑  收藏  举报