解决/var/spool/clientmqueue占用大量磁盘空间问题
猛然发现磁盘/dev/sda2的空间占用率为100%,df命显示结果如下:
FileSystem XXX Used%
/dev/sda2 xxx 100%
………………………………….
为什么呢?
于是想着一般临时或日志文件都存放在/var目录下,于是执行了如下命令
cd /var && du -sh `ls`
吓了一大跳,spool/clientmqueue占用了好几G的空间,为什么呢?仔细思考了
一下,应该是一些未被处理的消息被以文件的形式存在了这里。因此,如果没有
紧要的消息队列,此目录下的文件是可以清理的。
cd /var/spool/clientmqueue && rm * -rf
好了,问题解决了~~~~~~~~~~
上面解决了磁盘空间的问题,但出现这种问题的源头在哪呢?于是看了一下clientmqueue内部
的一个文件,显示是脚本运行的一个错误。与是查证了一下该脚本是以crontab方式运行的,
如下:
1 * * * * * cd /home/test/test && sh test.sh
问题找出来了,原来对于结果没有进行重定向!修改一下吧
1 * * * * * cd /home/test/test && sh test.sh 1>/dev/null 2>/dev/null
再看clientmqueue目录下,果真不再有新的文件生成了:)
实际上,输出重定向有另外一种更简洁的写法,即&>/dev/null,上述代码可写成:
1 * * * * * cd /home/test/test && sh test.sh &>/dev/null
怎么样,是不是更简洁了。
多谢
张久安
If you enjoyed this post, make sure you subscribe to my RSS feed!









One Comment, Comment or Ping
felix021
原来还可以这么写。。我一直都这么用: sh test.sh >/dev/null 2>&1
Jan 26th, 2010
Reply to “解决/var/spool/clientmqueue占用大量磁盘空间问题”
You must be logged in to post a comment.