当前位置:首页 > linux教程 > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2015-04-21 15:53:42 浏览: 评论:0 

在linux下使用sendmail发邮件会发现在var/spool/clientmqueue/目录下产生的大量文件了,这如果邮件发得多空间都得占满了,下面我们来介绍删除这些文件的方法.

如何删除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/目录下的文件.

  1. # cd /var/spool/clientmqueue 
  2. # rm -rf * 或 ls | xargs rm –f --phpfensi.com

如果文件太多的话,这两条命令都有可能出现参数太多的错误提示,可以采用下面的方法:

# find /var/spool/clientmqueue | xargs rm –f //这样的缺点是非常占系统资源

# rm –rf /var/spool/clientmqueue //删除完之后,再手动创建一个,并设置好属主及权限.

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

Tags: sendmail clientmqueue

分享到: