Linux 下 /var/spool/postfix/maildrop 占用空间很大问题

磁盘空间排查

  • 查看磁盘占用
1
df -h

  • 查看根目录下占用情况
1
du -sh *

  • 发现 var 目录占用达到 21G,进行/var 目录进行排查

  • 经过多次排查,最终锁定在 /var/spool/postfix/maildrop 目录

原因分析

在网上查询相关文章之后得知,由于 Linux 在执行 cron 时,会把 cron 执行脚本中的 output 和 warning 信息,以邮件形式发送给 cron 所有者,但由于环境中的 sendmail 和 postfix 没有正常运行,导致邮件发送不成功,发送不成功时,就会将这些信息文件存入 maildrop 目录,而且没有自动清理转换的机制,时间一长就形成堆积。

解决

  • 清空 /var/spool/postfix/maildrop
1
2
cd /var/spool/postfix/maildrop
ls | xargs rm -rf
  • 若不需 crontab 进行邮件通知,可修改配置进行停止
    • crontab -e
    • 在 cron 的第一行加入 MAILTO=””

tips:Linux 如何删除大量碎小文件