2010年3月26日

[postfix-jp: 3760] Re:[FYI] mailq に溜っているメールを無理矢理 Maildir 形式に変換

やまぐちです。

(2010/03/25 21:02), matumoto@xxxxx wrote:
> 松元@どっかの大学です。
>
> うちの学科の教職員にメールサーバ障害で相談されました。
>
> その教職員は学科のメールサーバから 研究室のメールサーバに ~/.forwardで

> 転送してます。
>
> それで、研究室のメールサーバがこけたんだが、復旧まで時間がかかるので上
> 流の学科メールサーバに詰まっているメールが読みたい。という事でした。
>
> 少量なら 手作業で送ろうと思ったので、mailqに溜っているメールが300通近
> くあったため、悩んでみたのですが、とりあえずこれでどうにかなりました。

postfix にかぎらず MTA 全般において、キューを人間が直接いじるのは
内部構造によほど詳しくないかぎりやめておいた方がいいです。
キューの読み書きは手順を正しく守ってやらないとメールが壊れるかもしれません。
どうしても手でいじる必要があっても、最低限 MTA の制御が及ばないところに
移動してからにすべきです(postfix なら postsuper -h で hold キューに移す)。

hoge というユーザが fuga@xxxxx に転送しようとして
キューにたまったメールを hoge 本来のメールボックスに落とすには
以下のようにすればいいです。

-- transport
fuga@xxxxx local:
-- aliases
fuga: hoge

以上により、fuga@xxxxx 宛のメールがローカルの fuga 宛になり、
fuga -> hoge のエイリアスによって hoge のメールボックスに入ります。
ローカルパートが一致してるなら aliases は不要。.forward に転送設定が
残っているとループしてバウンスするので事前に消す必要あり。

ユーザ hoge とも fuga@xxxxx とも別に fuga というローカルユーザが
存在している場合や、hoge が unix アカウントではなく仮想アカウントの場合は、
procmail や maildrop、あるいは dovecot をお使いなら dovecot devliver で
そのユーザのメールボックスに落としこむような transport を master.cf で
定義してやって、tranport_maps で local: のかわりに指定してやればいいです。

_______________________________________________
Postfix-jp-list mailing list
Postfix-jp-list@xxxxx
http://lists.sourceforge.jp/mailman/listinfo/postfix-jp-list


投稿者 xml-rpc : 2010年3月26日 12:22
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/94371
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。