解決sendmail的“host map: lookup (domain): deferred”問題
博客分類: Unix系統
大多數Linux系統都默認自帶了sendmail,最近想通過sendmail將一些服務器信息直接發送到自己的郵箱裏面,結果發送之後一直沒什麼反應,最後發現是因爲我的服務器上沒有合法的域名和MX解析記錄,而sendmail默認會進行反向解析,所以就一直堆在隊列裏面發佈出去。
解決辦法很簡單,直接關掉sendmail的反向解析就可以了,具體配置如下:
我發送郵件的命令爲:
# mail -s "Daily report" [email protected] < /var/log/report.txt
查看電子郵件隊列信息:
# sendmail -bp
----------------------------
/var/spool/mqueue (1 requests)
-----Q-ID----- --Size-- -----Q-Time----- ------------Sender/Recipient-----------
p6C71EPC020359 10 Tue Mar 19 14:02
(host map: lookup (gmail.com): deferred)
Total requests: 1
----------------------------
出現了"host map: lookup (domain): deferred"錯誤,意思就是說郵件的發送被延遲了。
解決辦法很簡單:
# vim /etc/mail/sendmail.cf
找到 #O ResolverOptions=+AAONLY 這一行信息,並把它的註釋去掉。
# /etc/init.d/sendmail restart
重啓sendmail以後即可成功發送郵件。
不過,即使郵件能夠發送出去了,由於沒有合法的域名和MX解析記錄,稍微好點的郵箱都會把它丟到垃圾郵件中去,所以建議如果有自己的域名的話,可以考慮分配一個子域名和MX解析。
轉載於:http://xiaotian-ls.iteye.com/blog/1575665