Linux sendmail發送郵件失敗診斷案例(一)


在新服務器上測試sendmail發送郵件時,發現郵件發送不成功,檢查日志文件發現如下錯誤(Notice:由於涉及公司服務器,郵箱等,故下面hostname、郵箱地址等信息使用xxx代替)

tail -40  /var/log/maillog

 

May 15 09:43:38 xxxxx sendmail[9182]: s4F1hcQe009182: from=root, size=58269, class=0, nrcpts=1, msgid=<201405150143.s4F1hcQe009182@xxxx>, relay=root@localhost

May 15 09:43:38 xxxxx sendmail[9182]: s4F1hcQe009182: to=konglb@xxxx, delay=00:00:00, mailer=esmtp, pri=88269, dsn=4.4.3, stat=queued

May 15 09:43:58 xxxxx sendmail[9186]: NOQUEUE: SYSERR(oracle): can not chdir(/var/spool/mqueue/): Permission denied

出現這個問題,是因為原來是(/var/spool/mqueue/)的權限配置不正確,sendmail沒有權限訪問這個目錄,執行下面命令即可解決。

chmod 755 /var/spool/mqueue

image

此時再去測試時,發現如下錯誤,郵件狀態一直為queued ,錯誤信息如下所示:


May 15 10:21:41 xxxxx sendmail[9850]: s4F2LfrT009850: to=<konglb@xxxx>, delay=00:00:00, mailer=esmtp, pri=37549, dsn=4.4.3, stat=queued

出現這個問題是因為dns server不正確設置導致,需要修改配置文件/etc/resolv.conf 下的nameserver值。

 

-----------------------------------------------------------------------------------------------分割線   2018-06-27-------------------------------------------------------------------------------------

 

最近又遇到了這個案例, 起因是因為系統管理員遷移了SMTP服務器,IP地址保持不變,但是SMPT服務器名改了,而配置文件 /etc/mail/sendmail.cf中DS使用的是mailhost

 

 

 

# vi /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
10.xxx.xxx.xxx  servername mailhost

 

而由於沒有修改/etc/hosts下面的配置(使用舊的服務器名稱),結果出現了上面錯誤現象。 其實上面所敘說的關於/var/spool/mqueue的權限是錯誤的。本質原因就是因為配置錯誤導致!

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM