我不确定这里是不是最适合回答这个问题的地方,但我在 Google 上搜索了一番,似乎找不到解决我的问题的方法。如有必要,请随时将我重定向到其他地方。:)
因此,我在 Ubuntu 14.04 上托管了一个邮件服务器,使用 postfix。我最近注意到,自上周以来,我没有收到任何邮件。在
/var/log/mail.log
我看到很多
milter-reject: END-OF-MESSAGE from localhost[127.0.0.1]: 4.7.1 Service unavailable - try again later;
消息。我能找到的关于该特定错误的唯一线程(https://serverfault.com/questions/676473/postfix-milter-reject-end-of-message-from-4-7-1-service-unavailable-try-again) 建议从 DKIM 移至 OpenDKIM。但是,我已经在使用 OpenDKIM,所以(可能)这不是问题。
我还注意到这些信息位于
/var/spool/postfix/maildrop
但不知道如何将它们从那里弄出来/它们为什么在那里。有一些错误说以下目的地不可写,但现在我已经给了它正确的权限...我想。
/var/lib/spamassassin/sa-update-keys/
root@ip-00-00-00-00:/var/spool/postfix/maildrop# ls -l /var/lib/spamassassin/sa-update-keys/
total 8
-rw------- 1 spamd spamd 2783 Oct 28 2015 pubring.gpg
-rw------- 1 spamd spamd 0 Oct 28 2015 pubring.gpg~
-rw------- 1 spamd spamd 0 Oct 28 2015 secring.gpg
-rw------- 1 spamd spamd 1200 Oct 28 2015 trustdb.gpg
我尝试过重启所有服务,但都无济于事。我现在有点不知道该怎么做,所以任何帮助我都会很感激。
问候 B
答案1
因此,我意识到 clamav-daemon 没有正确重启,它也使用(正确的术语??)milter。在查看 clamav-milter 的日志(/var/log/clamav/clamav-milter.log)时,我可以看到 clamd 服务器没有正确启动
Sun Jun 12 06:29:00 2016 -> WARNING: No clamd server appears to be available
Sun Jun 12 06:29:25 2016 -> ERROR: Failed to initiate streaming/fdpassing
查看 clamav.log (/var/log/clamav/clamav.log) 我发现内存分配存在问题:
Mon Jun 13 13:20:55 2016 -> LOCAL: Unix socket file /var/run/clamav/clamd.ctl
Mon Jun 13 13:20:55 2016 -> LOCAL: Setting connection queue length to 15
Mon Jun 13 13:20:55 2016 -> ERROR: daemonize() failed: Cannot allocate memory
Mon Jun 13 13:20:55 2016 -> Socket file removed.
查看内存使用情况:
total used free shared buffers cached
Mem: 992 759 232 10 6 75
-/+ buffers/cache: 677 314
因此,我没有扩大我的 AWS 实例(从而增加成本 :P),而是使用了这个(https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04)添加交换空间,然后服务就启动了!:)
然后我可以按照这个(http://www.anta.net/misc/telnet-troubleshooting/smtp.shtml) 检查我是否通过 telnet 接收邮件。
我希望我的悲剧能够帮助到别人。
快乐地使用 Ubuntu。
编辑 1:删除我悲惨的“postfix flush”建议,遗憾的是它会删除主队列,而不是像我最初读到的那样“处理”邮件队列。:(