我的 Postfix 守护程序有时会将一天的邮件保留在队列中,并出现以下错误
15F0C64ADD 7422 Fri Sep 9 07:59:31 [email protected]
(delivery temporarily suspended: Host or domain name not found. Name service error for name=smtp.teksavvy.com type=AAAA: Host not found, try again)
[email protected]
问题是:host smtp.teksavvy.com
给我完全有效的 IP 地址。上述消息是由于之前的问题(通常是 DSL 连接中断)导致的,该问题已在几个小时前修复。 postqueue -f
没有帮助。但是,如果我停止并重新启动 Postfix 守护程序,事情就会好转。
除了强制不断停止和重新启动之外,如何才能让 Postfix 在没有人工干预的情况下清除队列(并且比一天结束时更快)?
在配送暂时停止:未找到主机或域名,用户postqueue -f
在重新连接到网络时运行,但就我而言,机器始终处于启动状态并“始终”可以访问网络(显然,除非上游出现问题),因此它不知道何时运行postqueue -f
。
无论如何,运行postqueue -f
都无济于事:这些电子邮件仍停留在队列中,并出现相同的“未找到主机或域名”错误,尽管瞬时 DNS 错误早已修复。我应该将其报告为 Postfix 错误吗?
答案1
无论如何,我遇到的问题是由于 Postfix 设置为在 chroot 中运行(这是 Debian 测试中的标准 Postfix 设置),而/etc/resolv.conf
chroot 中的文件没有自动与主文件保持同步。我通过安装包resolvconf
(运行预期用于保持文件同步的钩子)解决了该问题。