[紹介マニアTop]

Powered by SmartDoc

fetchmail+procmailでメイル受信・振り分け・転送

$Date: 2002/05/04 05:55:35 $
$Author: sakito $

fetchmail,procmailに関して記述します。

主にクライアントとしての利用を主眼とした記述です。

Mac OS X専用文書

目次

機能と入手

fetcmail

POPやIMAPなどに対応したサーバからメイルを受信するためのプログラムです。

UNIXでは通常一つのプログラムに多くの機能をもたせるのではなく、いくつかのプログラムの組み合わせにより望む機能を実現する事が多いです。

Classic Mac OSに親しんだ人の場合、メイル受信機能は普通メイルソフトが保持している物だと思うかもしれませんが、実際の所受信機能が弱いメイルソフトがあったりします。

それだったらいっその事専用プログラムにまかせてしまった方が安全です。

fetchmailについてのさらなる詳細はManpage of fetchmailを見ればわかります。

procmail

自動メイル処理プログラムです。

メイル振り分け、転送や、メイルを特定のプログラムに渡して処理をさせるなどに利用します。

やはり専用プログラムなので、いろんな事ができます。

入手とインストール

Mac OS X10.1以上であれば標準でインストール済です。

/usr/bin/fetchmail,/usr/bin/procmailにあります。

fetchmail

設定

ここでは簡易な設定を記述しておきます。

$HOME直下に.fetchmailrcというフィイルを作成します。

記述例
defaults
  protocol pop3
  no rewrite
  no mimedecode           #mimedecodeしない
  keep                    #サーバにメイルを残す
  mda "/usr/bin/procmail" #procmailで処理する

poll pop.isp.hogehoge.com 
  username "username"     
  password "pass"       
                          
poll second.isp.second.com  
  username "username"        
  password "pass"       

記述後、

chmod 600 .fetchmailrc

といして、権限を変更する必要があります。

権限変更しないとエラーとなります。

defaults節は基本設定のため、pollで設定変更する事も可能です。

設定詳細はman fetcmailした方がよくわかります。

この設定の場合procmailを設定していないとおかしな事になるので、注意してください。

設定解説

man fetcmail

英語ですけど。

procmail

設定

ここでは振り振り分けの設定例を記述しておきます。

設定例
# 全体的な設定                            
PATH=/usr/bin:/bin:/usr/local/bi
                                
# ディレクトリの設定            
MAILDIR=$HOME/Mail
DEFAULT=$MAILDIR/inbox/.
LOGFILE=$MAILDIR/from-log
LOCKFILE=$HOME/.lockmail
                                
# 行数を正しく表示させる
:0     
* ! ^Lines:
{  
  # Count number of lines
  :0B
  * 1^1 ^.*$
  { }
  LINES = $=

  # Add Lines: header  
  :0 fhw  
  | formail -a "Lines: $LINES"
}

#レシピと呼ぶ
:0
* ^To:.*hoge@hoge.jp
* ^Reply-To:.*hoge@hoge.jp
hoge/hoge/.

# それ以外のメールは、すべてinboxに持ってくる。
:0:
inbox/.

最後の「.」はMH形式(一メイル一ファイル)の設定です。

設定解説

man procmail

英語です。

またgoogleで検索すれば大量に資料があります。

運用・移行

起動方法

設定例のように設定した場合、$HOMEにMailというフォルダを作成しておいてください。また振り分け先のフォルダもあらかじめ作成しておく方が安全です。

fetchmail

で起動します。keep設定がされていれば、メイルがサーバに残りますので、しばらく実験する事ができます。ぼくの場合は移行に一週間ほど実験期間を持ちました。

講読

メイルを読むにはメイルソフトが必要です。

MH形式であれば、Mac OSメール環境(OME)や、Emacs上のWanderlustなどで利用可能です。

OMEの場合GUIですので割りに利用しやすいかもしれません。

メイルの移行

既存のメイルソフトからの移行の場合いろいろな問題がある場合があります。

まず、メイルソフトのファイル保存形式の問題があります。ARENA Internet Mailerでは、unix form(mbox)形式上位互換形式ですが、Shift_JISで保存されています。

通常メイルはISO-2022-jpで受信しているのにわざわざ文字コードを変換しているわけです。移行のためには、この文字コードをISO-2022-jpの形式にもどす必要があります。

文字コード変換にはQKCを利用するのが簡単で速度も早いです。

Finkを利用しているならばunstableですが、fink install qkcでインストール可能です。また、UNIX用ソースを上記サイトからダウンロードして,

make
sudo cp -p ./qkc /usr/bin/qkc

などとすれば利用が可能です。

特定のフォルダ中にファイルを移動して以下のようにします。ファイル上書きとなるので、元ファイルはバックアップしておいてください。

使用例
qkc -su ./*

mbox形式から、MH形式にする場合

formail -Ydes mbox-file > mhforlder

とすれば分割されます。

ほとんどの場合上記方法で分割されますが、WanderlustなどMarildir形式に対応している場合mbox2maildirといったプログラムもありますので利用してみるもいいかもしれませんん。

どちらにしても、メイルソフトの移行はめんどくさい物なので、なんらかの主義がないと普通はしないかもしれませんが(^_^;


[紹介マニアTop]
copyright (c) 2002 sakito.All rights reserved.sakito@sakito.com

Generated from $Id: fetchmail.sdoc,v 1.4 2002/05/04 05:55:35 sakito Exp $