一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

删除sendmail 在var/spool/clientmqueue/目录下产生的大量文件

时间:2015-03-04 编辑:简简单单 来源:一聚教程网

如何删除sendmail 在var/spool/clientmqueue/目录下产生的大量文件

故障现象:

今天早上一过来,运维同学就告诉我,TW_LDJ项目机器的/var分区已经使用超过85%

原因分析:

为什么这个目录会这么大呢?这要从/var/spool/clientmqueue/这个目录的作用谈起。当你使用简单的sendmail发邮件的时候, 或者系统默认要发一些邮件(比如cron发的邮件)的时候,首先会把邮件拷贝到这个目录里,然后等待MTA(mail transfer agent) 来处理,MTA做的事情通常是把这个目录中的邮件弄到/var/spool/mqueue里,然后再发送到真正的目的地。出现/var/spool /clientmqueue/非常大的情况通常因为没有合适的MTA发送邮件,就都积累在这里了,假如这里的邮件并不是你需要的,比如是系统默认发的每分 钟跑一次的什么什么cron的信,你可以简单的删掉他们。

解决办法:

1、 将crontab里面的命令后面加上> /dev/null 2>&1
2、清除/var/spool/clientmqueue/目录下的文件:
# cd /var/spool/clientmqueue
# rm -rf * 或 ls | xargs rm –f
如果文件太多的话,这两条命令都有可能出现参数太多的错误提示,可以采用下面的方法:
# find /var/spool/clientmqueue | xargs rm –f //这样的缺点是非常占系统资源
# rm –rf /var/spool/clientmqueue //删除完之后,再手动创建一个,并设置好属主及权限

注意事项:

我们在删除这个目录下的文件前,最好应先将sendmail停掉,否则,直接删除可能空间不能直接释放掉,需要再卸载掉/var目录对应的分区,这样就会非常麻烦了。

热门栏目