系统中有用户开启了cron,而cron中执行的程序有输出内容,输出内容会以邮件形式发给cron的用户,而sendmail没有启动所以就产生了这些文件。
解决方式1:
将crontab里面的命令后面加上“> /dev/null 2>&1”
如:“1 2 * * * /xxx/xxx.sh > /dev/null 2>&1”
知识:
> /dev/null 2>&1 等价于“1> /dev/null 2>&1”
1>/dev/null: 表示标准输出重定向到空设备文件,也就是不输出任何信息到终端,不显示任何信息。
2>&1:表示标准错误输出重定向等同于标准输出,因为之前标准输出已经重定向到了空设备文件,所以标准错误输出也重定向到空设备文件。
这条命令的意思就是在后台执行这个程序,并将错误输出2重定向到标准输出1,然后将标准输出1全部放到/dev/null文件,也就是清空.所以可以看出" >/dev/null 2>&1 "常用来避免shell命令或者程序等运行中有内容输出。
解决方式2:
清空/var/spool/clientmqueue目录
cd /var/spool/clientmqueue
ls | xargs rm -f
这个目录下文件非常多,如使用rm -rf删除会报错,所以使用ls | xargs rm -f 方式删除.