/var/spool/clientmqueue分析处理 及 海量文件删除处理

某个服务器的/var/spool/clientmqueue目录存在很多文件,ls都要执行好半天,网上查了一圈,记录如下:

产生原因:系统中有用户开启了cron,而cron中执行的程序有输出内容,输出内容会以邮件形式发给cron的用户,而sendmail没有启动所以就产生了这些文件;

解决办法:将crontab里面的命令后面加上 > /dev/null 2>&1

知识点

2>:重定向错误。

2>&1:把错误重定向到输出要送到的地方。即把上述命令的执行结果重定向到/dev/null,即抛弃,同时,把产生的错误也抛弃。

清除海量文件办法:直接使用ls都有点困难,网上很多说用ls | xargs rm -f,这个方法可能会导致服务器负载升高,推荐使用如下方法:

1.建立一个空目录

mkdir /data/blank

 2.用rsync删除目标目录:

rsync --delete-before -a -H -v --progress --stats /data/blank/ /targetdir

 参数说明:

–delete-before 接收者在传输之前进行删除操作

–progress          在传输时显示传输过程

-a                       归档模式,表示以递归方式传输文件,并保持所有文件属性

-H                      保持硬连接的文件

-v                       详细输出模式

–stats                给出某些文件的传输状态

-d                      transfer directories without recursing

猜你喜欢

转载自yimi128.iteye.com/blog/1901248