カテゴリー
FreeBSD Software

Command time limit exceeded (procmail)

先日から、自サーバーにメールを送ったらMAILER-DAEMONさんからこんなエラーが返ってくるようになりました。

Subject: Undelivered Mail Returned to Sender
Command time limit exceeded: “/usr/local/bin/procmail”

自サーバーではprocmailを使ってスパムメールの処理をさせていますが、これと言ってエラーの原因になるようなログが残っていません。時々エラーが返ってくることがある程度だったのがだんだん増えてきました。procmailを通らない経路のメールはちゃんと配信されているのでprocmailのどこかが変です。

ネットで色々調べてみてもこれと言った事例が見つからず、最終的にはprocmailのログが10MB超えでメール件数で8万件まで巨大化してたのでログを一度クリアしてみたところまた元通りにスパム処理をして配信するようになりました。

ログファイルが大きくなり過ぎるとメールを取りこぼすという方も見つかりました。

http://www.e-sen.com/centos/spamfilter_config.php

■ procmail.log の肥大化を防止
ある時、どうもメールを取りこぼしているような気がする・・・これが一般ユーザーへの配信不能を意味するのか・・・メールには届けられなかったファイル (これもテキスト形式のメールだが。)が添付されている。postmaster に聞けっていわれても、このサイトではすべて自分。なんとかじぶんで解決しなければ・・・
まだ推測の域を出ないのだが、大量のスパムメールの配送をやっているうちに、procmail.log が肥大化しているのが原因のような気がする。

これを見る限り同じ現象のようです。

同じく、procmailのログファイルをログローテート設定して様子を見てみることにしました。

/etc/newsyslog.conf に以下の行を追加します。これでログサイズが100kBを超える度にログローテートし、過去10回分のログを残してくれます。ログはとりあえず非圧縮で残してます。

(ログファイルのパス)/procmail.log    vmail:vmail     644  10    100  *      B

これでしばらく様子見です。

参考)
NEWSYSLOG(8)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です