Chinaunix首页 | 论坛 | 博客
  • 博客访问: 145639
  • 博文数量: 68
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 720
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-28 20:01
文章分类

全部博文(68)

文章存档

2015年(68)

我的朋友

分类: 系统运维

2015-08-31 17:23:46

早上收到一台服务器的磁盘根分区告警,登录服务器检查后发现/var/spool/clientmqueue/目录下存在大量文件,先看看文件内容:

[root@301 clientmqueue]# file qfp9L2S2PU020380

qfp9L2S2PU020380: Non-ISO extended-ASCII text    

[root@301 clientmqueue]# strings qfp9L2S2PU020380

T1319164082

K1319165415

P1297004

MDeferred: Connection refused by [127.0.0.1]

$_market@localhost

${daemon_flags}c u

Smarket

Aappmarket@localhost.localdomain

MDeferred: Connection refused by [127.0.0.1]

C:appmarket

rRFC822; market@localhost.localdomain

RPFD:appmarket

H?P?Return-Path: <

H??Received: (from market@localhost)

        by localhost.localdomain (8.13.8/8.13.8/Submit) id p9L2S2PU020380;

        Fri, 21 Oct 2011 10:28:02 +0800

H?D?Date: Fri, 21 Oct 2011 10:28:02 +0800

H?x?Full-Name: CronDaemon

H?M?Message-Id: <201110210228.p9L2S2PU020380@localhost.localdomain>

H??From: root (Cron Daemon)

H??To: appmarket

H??Subject: Cron <market@301> /opt/appmarket/shell_sh/kalaokftpget.sh >/home/market/shell_sh/kalaokftplog.txt

H??Content-Type: text/plain; charset=UTF-8

H??Auto-Submitted: auto-generated

H??X-Cron-Env: <SHELL=/bin/sh>

H??X-Cron-Env: <HOME=/opt/market>

H??X-Cron-Env: <PATH=/usr/bin:/bin>

H??X-Cron-Env: <LOGNAME=market>

H??X-Cron-Env: <USER=market>


从上面的文件内容可以看出,这是一个邮件头,发邮件的原因与定时任务  "/opt/market/shell_sh/kalaokftpget.sh >/opt/market/shell_sh/kalaokftplog.txt" 有关。

    原来,crontab定时运行的任务,当任务发生问题时会有错误信息输出,这时crontab会自动利用sendmail将输出内容以邮件的形式发给运行任务的用户;而sendmail在提交一个邮件时,会先将需发送的邮件内容copy到 "/var/spool/clientmqueue"目录,然后调用sendmail的MTA将内容从"/var/spool/clientmqueue" copy到/var/spool/mqueue并发给目标收件人,如果MTA没有启动或调用失败,那么这些需发送的邮件内容将会一直累积到/var/spool/clientmqueue目录,这也是这我们这台服务器/var/spool/clientmqueue目录存在大量文件的原因,之前为了安全我们关掉了服务器一些不必要的服务,其中就包括了sendmail。

解决办法:

(1)先清除这些文件解决目前的问题

[root@301 clientmqueue]#ls | xargs rm -f

(2)将定时任务出错时的错误信息定向到黑洞,即不要输出错误信息

[root@301 clientmqueue]#crontab -e -u market 

 5 * * * * /opt/appmarket/shell_sh/kalaokftpget.sh >/home/market/shell_sh/kalaokftplog.txt 2>/dev/null
阅读(1040) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~