メールクライアントを選んでいる状態だと、imapって便利なのだなぁ、と思うことひとしおだったりします。
今まで使ってなかったのでなおの事思うのかもしれないですけどね。
でも結局、まだメールクライアントは決まってなかったりするんですが。
単純に個人で使う分には、emacs+mewでもええやん、という話しもあります。
XFree86 + X localeにして、Emacs21が動くようになってますしね。
それはそうなんだけど、何となく。気分の問題。
クライアントでデータを管理してるかサーバーでデータを管理してるかの違い。
(でも、結局はクライアントマシンで動かすんだから同じという話もあり)
メールアドレスはなんだかどんどん増えていきます。
プロバイダからもらう分、会社や学校、家でサーバーを立てる人もいますよね。
一ケ所に集められればいいのですが、セキュリティや停電などのバウンスの関係でぽこぽこ飛ばすわけにもいきません。
しかも、来るメールはいろいろなものがあります。
メーリングリスト、特定の人物、取引先……。
フォルダで管理できるimapなので読んでくる時にフォルダで仕分けしてくれると助かりますよね。
そこで。せっかく標準で入っているので(MacOSX PBで見た時は笑った)使ってみましょう。
fetchmail + procmailです。
これらの設定で、複数のサーバーからメールをローカルのcourier-imapへ自動振り分けする仕組みが出来上がりました。
- fetchmailの設定
- fetchmailはメールを読み込むソフトです。
メールサーバーからメールを読んできて、ファイル、もしくはプログラムに渡す、という動作をします。
設定は~/.fetchmailrcに書き、コマンドライン上から動かします。
(例)pollは自動実行されるサーバーで、skipはコマンドラインで指定しないと実行されないサーバーです。poll mail.mac.com protocol pop3 username k_suka password secret mda "/usr/bin/procmail " keep skip mail.homeip.net protocol pop3 username tempest password secret mda "/usr/bin/procmail " keep
mdaはメールが渡されるプログラム名を指定します。指定がなければsendmailに渡されます。
設定ファイルはパーミッションの設定をしないと動かないので注意しましょう。
$ chmod 600 ~/.fetchmailrc
- procmailの設定
- procmailは標準入力のデータを振り分けてファイルに保存するアプリケーションです。
振り分けには正規表現を使い、標準入力内でパターンマッチしたものを指定ファイルやフォルダに保存します。
設定ファイルは~/.procmailrcです。
(例)安全のため、imapのユーザーのサブフォルダは設定前にメールクライアントによって作りましょう。SAVEFILENAME=`perl -e 'print time . "." . getppid;'` MAILDIR=$HOME/Maildir DEFAULT=$HOME/Maildir/new/$SAVEFILENAME :0: * ^Subject.*macosx-jp: $HOME/Maildir/.MacOSX-JP/new/$SAVEFILENAME :0: * ^Subject.*palm-tech-ml $HOME/Maildir/.PalmTech/new/$SAVEFILENAME
すると、~/Maildir/.SubFolderのように、フォルダが作られます。
その中のnewフォルダ内に目がけてファイルを作るのです。
ターミナル上からコマンドラインで実行するとずんどこ処理してくれますよ。
$ fetchmail -v -a --nokeep mail.homeip.net
移動しないマシンなら--daemonコマンドラインオプションを使うかcronに設定してしまうのも一つの手です。
けっこう自信満々で書いてるように見えますが。
全然自信はないんです。
ほんまにこんな使い方してええんか?って思いますしね。
(とりあえず動いてるようには見えますが)
これは一つの方向性、ということで。