Postfix清除邮件队列 解决不能发送邮件的问题

桜庭清夏 · 2021-01-03 20:27:40 


突然发现邮件发不出去了,例行检查发现没任何问题,后台大量的smtp进程不断在刷屏,看来是什么故障了。

使用mailq命令或者postqueue -p命令查看等待发送队列,里面出现了几千个邮件,这当然发不出去了。

但是要摸清它到底是什么,才能解决问题,不然这个问题还会复发。

因此这里不仅仅是清除队列,还要找出到底是发生什么了。

检查问题

输入mailq或者postqueue -p查看显示

绿色线的位置是编号,随便复制一个。

然后输入postcat -q编号

就会显示这封邮件的内容。

调查原因

发现里面是Fail2Ban的内容。于是去Fail2Ban的jail.conf里面把收件人改为root@127.0.0.1就解决了问题。不再会发送垃圾邮件了。

但是解决了问题,这个序列还在,还会阻塞正常的消息发送,如何清除呢?

清除队列恢复功能

输入postsuper -d ALL再输入postqueue -p,等到Mail queue is empty出现之后,就可以重新正常发送邮件了。


你是否会像清风拂过花儿一样与我相遇呢?