web-dev-qa-db-ja.com

fetchmailによって取得されたメールが見つかりません

そこで、リモートメールサーバーからIMAPを使用してメールを取得するようにfetchmailを設定し、それを実行することができました。ポーリングされているアカウントにテストメールを送信し、fetchmailで検出できるようにそれらを読んでいないので、メールが見つかったかどうかを知るにはどうすればよいですか。もう1つの問題は、fetchmailがMTA(この場合はpostfix)にそれらを引き渡しているかどうかわからないことです。

これが発生していることをどのように確認できますか?また、取得した電子メールはどこにありますか?

3
user1078020

Fetchmailを呼び出すときに使用できるオプションがあり、ログとデバッグ情報を出力します。これがmanページからです:

 For troubleshooting, tracing and debugging, you need to increase fetch-
 mail's verbosity to actually see what happens. To do that,  please  run
 both  of  the  two  following commands, adding all of the options you'd
 normally use.


 env LC_ALL=C fetchmail -V -v --nodetach --nosyslog

 (This command line prints in English how  fetchmail  understands
 your configuration.)


 env LC_ALL=C fetchmail -vvv  --nodetach --nosyslog

 (This  command line actually runs fetchmail with verbose English
 output.)

Fetchmailが実行され、電子メールをフェッチしてローカルMTAに渡す場合は、/ var/log/maillog(またはシステムにメールログを配置するように指示した場所)でもこの痕跡を見つけることができます。

3
Jenny D

ジェニーの答えは別として、fetchmailの肩越しに見守ることができます。電子メールがIMAPサーバー上にない場合は、電子メールが取得されたことを示す良い兆候です。 IMAPクライアントに接続できることを確認するか、サーバーのメールディレクトリを調べます(例:~/Maildir)。

クライアント側では、MTAを設定していない限り、fetchmailはおそらくメールを/var/spool/mailに保存します。配信する例: procmailを介して、後者の場合、受信者~/.procmailrcが物事の行き先を決定します。

あなたが物事がどこに向かっているのか追跡できないように思われる場合。メールログを確認してください(フェッチされたメールではバウンスされます)。最後の手段として、ファイルに触れることもできます( '/ var/tmp/now'、fetchmailを実行し、find / -newer /var/tmp/nowを使用して、システム上で最近作成/更新されたファイルを検索します。

0
Anthon