
| ・ |
ドキュメントセンターを初めてご利用する方や運営方針についての基本的な姿勢をご覧になりたい方へ。
|
| ご利用の皆様から多く寄せられる質問にお答えしています。 |
|
| ・ |
ディーエーオフィスなどが利用する用語に関する解説を行います。
|
|
|
 |
 |  |
postfix、amavisd-newを利用した環境で、ある日、突然メールが配送できなくなりましたが? |
| ログを確認し、ディスク容量等の不具合ではないかを疑います。
! 原因を調べる
まずはログを確認します。明らかな不具合を指し示してくれる場合もありますし、直接確認できなくともヒントになるようなものを示してくれることも多いはずです。tailコマンドをfオプション付きで実行し、しばらく様子を見るのも良いでしょう。
tail /var/log/maillog
tail /var/log/messages
fオプションの指定で、リアルタイムな表示が行えるので、しばらく眺めてみて異常がないかを確かめます。
tail -f /var/log/maillog
tail -f /var/log/messages
次にディスクの使用状況を確認します。amavisは、いったんメールの内容をファイルにして処理します。例えば、ウイルスやスパムの検査で利用しているようです。あまりに多いキューがたまると、一つのディレクトリへ設置できるファイル数の限界を超えてしまうことがあります。
df -hi
cd /var/amavis
du -d1 | sort -dnr | less
現状のキューについても調べてみます。膨大な数のキューが残っていれば、処理の限界で動けなくなっている状態かもしれません。一部のキューを削除して対処するのも良いでしょう。
mailq
! 不具合の例
ある日、突然に使えなくなる場合、外部からの膨大なメールを処理しきれなくなったというのが妥当な考えだとは思いますが、いずれにせよ、限界に達してしまって処理ができなくなっていると考えると自然でしょうか。
mailqを実行すると、キューとして残っているメールに、以下のような不具合が記載されていました。
delivery temporarily suspended: lost connection with 127.0.0.1[127.0.0.1] while sending MAIL FROM
maillogに残っている、ディレクトリ不具合の例です。amavisd-newの場合、いったんtmpディレクトリへファイルができあがりますが、あまりに多いファイル数にOS上の限界へ達してしまったようです。
Aug 17 20:01:39 sv2 amavis[43101]: (43101-01) TROUBLE in process_request: Can't create directory /var/amavis/tmp/amavis-20060817T200139-43101: Too many links at (eval 57) line 95, line 4.
Aug 17 20:01:39 sv2 amavis[43101]: (43101-01) Requesting process rundown after fatal error
Aug 17 20:01:39 sv2 amavis[43101]: (43101-01) SMTP shutdown: Error writing a SMTP response to the socket: Bad file descriptor at (eval 57) line 778.\n
Aug 17 20:01:39 sv2 amavis[43105]: TIMING [total 4 ms] - bdb-open: 4 (100%), rundown: 0 (0%)
やむを得ず、古めのファイルを移動してみることにしました。
# mkdir /var/amavis/tmp.old
# cd /var/amavis/tmp
# mv ../tmp.old
「postfix flush」を実行して、再度配送を試みてもらいます。ちなみに、コマンドを実行せずとも定期的に再試行してくれるので、適切なタイミングで処理してくれるのを待ってみるのも良いでしょう。
# postfix flush |
| 文書番号 |
07147 |
| 日付 |
2006.08.17 |
| 参照数 |
3413 |
|