メールサーバ引越し
研究室の自分のメールサーバに使っていた SunBlade 1000 が調子悪い。一見ちゃんと動いているようなんだけど、数日動かしっぱなしだと、いつの間にか止まっている。そろそろやばいのかなぁ?
んでもって、メールを受けるのも送るのもスプールするのもこのサーバなんで、止まったらメールが使えない。一応バックアップを取ったけど、またいつ止まるか分からないので、とりあえずメールだけでも引っ越すことに決定。
ということで、研究室の FreeeBSD が動いているサーバにメールを引っ越すついでに、courier-IMAP を動かしてみることにした。
インストール
とりあえず ports から mail/courier-imap と mail/procmail をインストール。
SSL対応の準備
/usr/local/etc/courier-imap/imapd.cnf.dist を imapd.cnf にコピーして、中身を研究室用に書き換え。
/usr/local/share/courier-imap/ で mkimapdcert を実行して imapd.pem を作らせる。
courier-imap 用の daemon が起動するように、/etc/rc.conf を修正。
courier_imap_imapd_ssl_enable="YES" courier_imap_imapd_enable="YES" courier_authdaemond_enable="YES"
Maildir 作成
自分の Home で
maildirmake Maildir
を実行すれば Maildir が作られる。
sendmail で Maildir 形式に保存するように procmail を設定
サーバ全体で使うなら /etc/mail/sendmail.mcに
FEATURE(`local_procmail')
を追加してから sendmail.cf を作りなおす。(実際は /etc/mail で最初に make すると、hostname.mc が作られるので、それを書き換えてからもう一度 make して hostname.cf を作り、確認してから make install で sendmail.cf を入れ替える。その後 sendmail の再起動すれば OK)
サーバデフォルトの profmailrc も、/usr/local/etc/procmailrc として作成する。
DEFAULT=$HOME/Maildir/new
今回は自分だけなので、sendmail.cf はそのまま。$HOME/.procmailrc に上記の内容を書き込んで、$HOME/.forward で profmail を使うように設定(/usr/local/share/example/procmail/forward をコピーしてから YOUR_LOGIN_NAME ってところを書き直せば OK)。
これで、取りあえず IMAP は使えるようになった。
メールの引越し
IMAP を使っているんで、古いサーバから新しいサーバにコピーしてもいいんだろうけど、たくさんのフォルダに分かれていて面倒なので、一気にやることにした。
mbox 形式だったなら ports に mail/mb2md ってのがあるのでそれを使う。
今回は MH 形式で管理していたので、まずはそのディレクトリを丸ごと新しいサーバにコピー。
あとは、http://www.informatik-vollmer.de/software/mh2maildir.php にある mh2maildir で一括変換。
sh mh2maildir -f -R -courier -r Mail Maidir
これで、Mail に記録されている MH 形式のメールが、フォルダの階層を保ったまま、Maildir に変換される。