针对开启了crontab的Linux系统,在/var/spool/clientmqueue/ 会存在大量的小文件,如果没有及时做清理,可能会造成/目录空间爆满或者inode太大,普通的/bin/rm -rf等方法会报/bin/rm: Argument list too long 的错误。
下面为验证OK的方法,记录一下。
1、临时删除方法:
如果文件太多,普通删除方法会报错。
建议采用下面方法:
find命令内置的 "-delete" 参数 ,使用这种方法删除文件,速度大概是 2000个文件/秒,速度比之前方法得到极大提高。当然也可以加上 "-print"参数来显示每个删除的文件。
find . -type f -delete
find . -type d -print -delete /var/spool/clientmqueue/
2、彻底解决方法:
就是将crontab里面的命令后面加上> /dev/null 2>&1
01 02 * * * /opt/bak/backup.sh >> /dev/null 2>&1
网友评论