web-dev-qa-db-ja.com

「defer(-52):再試行時間にまだ達していない」exim4ログを取り除く方法は?

Exim4のmainlogにそのようなログがあります。私がexim4で行うことはすべて学習することだけなので、すべてのメールは偽物です。次に、頻繁に表示されるこれらのログを管理しようとします。

2016-12-20 14:28:01 1cJ2UW-0006Yq-3m == [email protected] R=manualrouteadam T=maildir_home defer (-52): Retry time not yet reached
2016-12-20 14:28:01 1cJ8rt-0001Ur-Qj == [email protected] R=manualrouteadam T=maildir_home defer (-52): Retry time not yet reached
2016-12-20 14:28:01 1cJ2YZ-0000W9-W5 == [email protected] R=manualrouteadam T=maildir_home defer (-52): Retry time not yet reached
2016-12-20 14:28:01 1cIsqP-0002Xn-KY == [email protected] R=dnslookup T=remote_smtp defer (-53): retry time not reached for any Host
2016-12-20 14:28:01 1cJE0z-00028i-Ve == [email protected] R=manualrouteadam T=maildir_home defer (-52): Retry time not yet reached
2016-12-20 14:28:01 1cIrmt-0002Hz-Td == [email protected] R=dnslookup T=remote_smtp defer (-53): retry time not reached for any Host
2016-12-20 14:28:01 1cIsS3-0002Rj-MM == [email protected] R=dnslookup T=remote_smtp defer (-53): retry time not reached for any Host
2016-12-20 14:28:01 1cJ2X1-0000R4-EY == [email protected] R=manualrouteadam T=maildir_home defer (-52): Retry time not yet reached
2016-12-20 14:28:01 End queue run: pid=11801

私はそれを必要としないのでそれを削除するにはどうすればよいですか?

2
trzczy

一部のアドレスで遅延エラーが発生する場合があります。どのホストでも再試行時間に達していません。

1Ruz3Y-0005TQ-Ek == [email protected] R=dnslookup T=remote_smtp defer (-53): retry time not reached for any Host

したがって、address.comのメールを管理するために使用されているSMTPサーバーを見つける必要があります。これを行うには、Hostコマンドまたはより高度なDigを使用します。このコマンドはメールサーバーで発行する必要があります。

Host domain.com
domain.com has address X.X.X.X
domain.com mail is handled by 50 remote.smtp.server.

まず最初に、リモートSMTPサーバーが25/tcpで接続を受け入れ、予期しないエラーが発生することなく動作していることを確認してください。

telnet remote.smtp.server 25
Trying x.x.x.x...
Connected to remote.smtp.server.
Escape character is '^]'.
220 remote.smtp.server bla-bla-bla

次のステップは、exim再試行データベースを整理することです:

/usr/sbin/exim_tidydb -t 1d /var/spool/exim retry > /dev/null

場合によっては、すべての再試行エントリを削除することができます。

rm -rf /var/spool/exim/db/retry
rm -rf /var/spool/exim/db/retry.lockfile

ソース: https://linuxnlenux.wordpress.com/2013/08/11/exim-defer-53-retry-time-not-reached-for-any-Host/

8
Tolsadus

次のコマンドを実行します。

strings /var/spool/exim/db/retry

Eximで到達できないホストを確認するには、次のような出力が表示されます。

No route to Host
T:mail.siemens.com:138.162.19.16
Permission denied
T:mail.siemens.com:2a01:7a01::f05c:91cf:feb8:b2e1

エラーを修正し、何が問題かを確認します。

DNSの古いキャッシュエントリの問題ではないことを確認します。これを処理するには、ファイルを編集します/etc/resolve.confとし、最初のnameserverエントリの直前の最上部に次の行を配置します。

# File: /etc/resolve.conf
nameserver 8.8.8.8

これは、Google DNSを使用してeximがチェックを正しく実行するように指示します。

追加のオプションのステップで、凍結されている可能性があるすべてのメッセージをeximキューから削除します。

 exiqgrep -i | xargs exim -Mrm

Eximを再起動します。

 systemctl restart exim
2
Basil A