博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
系统磁盘优化——"/var/spool/postfix/maildrop"
阅读量:6854 次
发布时间:2019-06-26

本文共 1194 字,大约阅读时间需要 3 分钟。

hot3.png

系统磁盘优化——"/var/spool/postfix/maildrop"

文件清理

最近某服务器磁盘空间告警,在排查过程中发现"/var/spool/postfix/maildrop"目录下堆积了很多小文件,起初想直接删除,但是使用rm删除是提示“参数列表过长”,后来使用rsync来清楚垃圾文件:

# 创建一个临时空文件夹mkdir /tmp/blankdir# 清理/var/spool/postfix/maildroprsync -av --delete /tmp/blankdir/  /var/spool/postfix/maildrop/# rsync选项说明:# --delete-before 接收者在传输之前进行删除操作# --progress 在传输时显示传输过程# --a 归档模式,表示以递归方式传输文件,并保持所有文件属性# --H 保持硬连接的文件# --v 详细输出模式# --stats 给出某些文件的传输状态

注意:

  • 不管是使用rm还是rsync,在清理文件之前一定要仔细确认文件是否有用,避免误操作。
  • 使用rsync时空目录的路径后要带上"/"

追根溯源

在清理完文件后不久又有一次内存告警,检测发现有大量的“CRON、sendmail、postdrop”进程,同时还发现“/var/spool/postfix/maildrop”又有大量文件生成,Why?

于是开始排查,经过一番“海底捞”,真相终于浮出水面:

由于 Linux 在执行 cron 时,会将 cron 执行脚本中的 output 和 warning 信息,都会以邮件的形式发送 cron 所有者, 而由于客户环境中的 sendmail 和 postfix 没有正常运行,导致邮件发送不成功,全部小文件堆积在了 maildrop 目录下面,而且没有自动清理转换的机制,所以长达一年的时间,此目录已堆积了大量的文件。查看 man cron 的信息,可以知道会发送给 cron owner。

既然定位到是cron惹的祸,那就先把“sendmail、postdrop”干掉,解决燃眉之急,然后查找解决方案吧,办法如下:

  • 将/etc/crontab文件中MAILTO="root"改成MAILTO=""(该办法只对crontab下的cron有效);

  • 在所有cron的第一行加入 MAILTO=""便可,这样执行当前用户的Cron时,就不会发送邮件了

    MAILTO=""* * * * * root /usr/sbin/python /tmp/test.py

之后再次清理“/var/spool/postfix/maildrop”下的垃圾文件,观察一下,没有文件再生成,问题解决!

Done!!!

转载于:https://my.oschina.net/adailinux/blog/1833466

你可能感兴趣的文章
如何在web范围内实现微服务负载均衡
查看>>
信息安全的“无间道” 如何严防内鬼?
查看>>
云计算容器服务该何去何从
查看>>
Python操作MySQL基本环境搭建及增删改查实现
查看>>
Hacking Team事件导致一名韩国情报官员死亡
查看>>
高通肯花300亿美元收购恩智浦吗?
查看>>
英国Ofcom确定物联网频段 充分利用VHF甚高频部分频段
查看>>
《Linux内核精髓:精通Linux内核必会的75个绝技》一HACK #6 使用localmodconfig缩短编译时间...
查看>>
CNCC 2016 | 南京大学黄宜华教授 50 张 PPT 剖析 Alluxio 及其应用
查看>>
盘点:视频监控行业的潜在商机
查看>>
机器视觉在安防行业是如何应用的
查看>>
IIS URL Rewrite 重定向域名到www
查看>>
Generating Text with Deep Reinforcement Learning
查看>>
如果你没被WannaCry感染就一定要小心Adylkuzz
查看>>
HR:2017/2018年数据中心驱动400Gbps部署
查看>>
单元测试覆盖工具coverlipse
查看>>
Jmeter分布式部署文档
查看>>
微软打算用DNA存储数据 但成本和速度仍是个大问题
查看>>
使用Java向properties存数据
查看>>
产能过剩的光伏电池,是否还是未来的朝阳产业?
查看>>