问题现象:linux操作系统中的/var/spool/clientmqueue/目录下存在大量文件

原因分析:

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

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

2、知识点: 2>:重定向错误。

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

  3、具体代码:

  (1)、# crontab -u cvsroot -l

  01 01 * * * /opt/bak/backup
  01 02 * * * /opt/bak/backup2

  (2)、# vi /opt/bak/backup#!/bin/shcd /
  getfacl -R repository > /opt/bak/backup.acl

  (3)、# vi /opt/bak/backup2#!/bin/shweek=`date +%w`
  tar zcvfp /opt/bak/cvs$week/cvs.tar.gz /repository >/dev/null 2>&1

  4、清除/var/spool/clientmqueue/目录下的文件:# cd /var/spool/clientmqueue# rm -rf *如果文件太多,占用空间太大,用上面命令删除慢的话,就执行下面的命令:# cd /var/spool/clientmqueue# ls | xargs rm -f