SSブログ

Postfix: ローカルメール配送問題を解決 [Mac]

Postfix を勉強しないとだめ?
Mac OS X の /var/spool/mail/postfix/maildrop にファイルがいっぱい。
[...]
これを消すのではなく、できれば普段使うアカウントへ配送したい。[...]

PowerBook G4 購入以来のローカルメールが未配送であることがわかった一件、
わりとあっさり解決することができた。

やりたいのは、/var/spool/mail/postfix/maildrop にたまったメールを、
ローカル IMAP サーバ (Binc IMAP 1.2.12final) の INBOX に配送すること。

まず、/etc/aliases の root 宛メールの受取人を、普段使う一般ユーザにする。
忘れがちだと思い、先にすませた。ここでは『me』としておく。以下抜粋。

# Person who should get root's mail. Don't receive mail as root!
root:           me

次に Postfix の設定を変える。/etc/postfix/main.cf の home_mailbox の値を、

home_mailbox = Library/Mairdir/INBOX/

とする。これは Binc IMAP の depot 設定を IMAPdir にしていて、
そのうえ IMAP メールの在処が /Users/me/Library/Maildir の場合。
(depot が Maildir++ の状況では使っていないので、わからない)
なお、名前のとおり qmail 流の Maildir を使っている。
qmail 流の配送には、home_mailbox の値が / で終わっていることが大切。
設定は postconf コマンドで確かめられる。
-n オプションをつけると、デフォルト値以外に設定された変数だけ出力する。
SMTP サーバとして使わない今回の目的では、/etc/postfix/master.cf は変更なし。

最後に、/etc/hostconfig を変更する。
以下に抜粋するように、MAILSERVER の行を -NO- から、

MAILSERVER=-AUTOMATIC-

と変える。『-YES-』ではないことに注意。
『-AUTOMATIC-』にすると、/usr/sbin/postfix-watch (ソース) が
/var/spool/mail/postfix/maildrop ディレクトリを見張って、
メールがあれば Postfix を起動、なくなれば終了させる、という仕事をする。

これで準備は整ったから、再起動。
ログインする前からいつも以上に HDD が音を立てている。始まったみたい。
top でプロセスを見ると、pickup, cleanup, qmgr, local が次々と実行され、
~/Library/Maildir/INBOX にメールが配送されていく。
約 1300 通、55MB のメールがあって、終わるまでに 7 分ぐらいかかった。

Apple Mail で見るとキャッシュを作るのに時間をとられてしまうと思い、
Wanderlust でチェック。1000 通を超えるメールにちょっと社長さん気分。
ほとんどが crontab 関連。一部は sudo の失敗など security まわり。
crontab ものの内訳は、MO のマウントをさぼったときの pdumpfs のエラーと、
この不具合に関連すると思われる、fetchmail 実行時のエラー (10.3.9 にしてから激減)。
最後のメールを配送し終えて 1 時間後、Postfix のプロセスが終了。
ちゃんと postfix-watch が働いている。

わからないこと。
このメール掃除のあとに、sudo 認証を失敗する、MO をセットしない、
という cron からのメール通知を引き起こす間違いをわざとしてみた。
すると、sudo の方はメールが一旦くだんのキューにためられて、
なかなか配送されてこない。結局 security 警告メールが配送されたのは、
MO にバックアップする pdumpfs が crontab で走り出す時刻になってから。
それに続いて、MO がないことを知らせる警告メールも送られていた。
crontab の実行が引き金になるような仕組みは見当たらないんだけど...。

まあ、ほぼ一件落着。
ところで、よく考えるとシステムからのメールには spam はないから、
少なくとも個人的には scmail を通す必要はなかった。
一日数通だし、見たらすぐ捨てるから自動振り分けも要らないし。


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。