[Mutt-j-users 74] Re: Muttのメール受信について

Back to archive index

TAKAHASHI Tamotsu ttaka****@lapis*****
2005年 9月 14日 (水) 19:02:04 JST


* Tue Sep 13 2005 山口 輝一 <r-kam****@ryose*****>
> 今までは mutt+fetchmail+procmail+sendmail で構成しようと 
> 思っており
> ましたが,とりあえず受信に関しては fetchmail をはぶき mutt 
> +procmail
> としました.

私は procmail を使ったことがないのですが、
Mutt の POP 機能 (fetch-mail) によって受信したメッセージを
procmail に渡すことはできないのではないかと思います。

procmail を使いたいのであれば
メールサーバ上で使うか fetchmail と組み合わせるかするのが
普通の使い方だと思っていました。


> mutt にてメールを受信すると一旦 spoolファイルに溜まるので 
> しょうか?

はい。

> また,mutt -y にてmboxに移動して受信した場合は移動先 
> のmboxにメールが
> 溜まるのでしょうか?

いいえ。


> 私の場合は
> 
> set mbox_type=Maildir
> set spoolfile="/var/mail/spool"
> set folder="~/Maildir"
> 
> と muttrc に設定してあります.
> この場合
> 
> % mutt
> 
> でオプションなしで起動した場合はショートカット"G"で受信し 
> たメールが
> /var/mail/spool に溜まり
> 
> % mutt -y
> 
> で起動して~/Maildir/mboxへ移動後に"G"で受信したメー 
> ルは~/Maildir/mbox
> に溜まるのでしょうか?

Mutt の fetch-mail 機能 (G) は常に $spoolfile へ受信します。
(マニュアルの 4.11 あたり、「POP3 サポート」の項を参照。)


> また,spoolファイルは一般的にはどのように使われるのでしょ 
> うか?
> オプションなしで起動した場合に set spoolfile で指定した 
> ファイルが表示されて
> 受信したメールが表示されますが,"q"で終了させると/home/ 
> user/Maildir/mbox
> に既読メッセージを移動するか?と表示されるところを見ると,一旦 
> spoolに
> 受信してそれぞれのmboxへ移動するという使い方のような気がし 
> ますが...

おおむね、それで合っています。
($mbox に移動するかどうかは $move で設定できますが。)

実は Mutt において fetch-mail (G) は異端でありまして、
本来「受信は Mutt の仕事ではない」ということになっております。

以下は、長い割にどうでもいいことなので、読まなくても大丈夫です。

Mutt に関してもともと想定されている使い方というのは、

┃1. sendmail がメッセージを受信する。(たとえば /var/mail/tamo に)
┃
┃2. 同じホストで Mutt を起動する。既にメールは /var/mail/tamoに
┃ 置いてあるので、fetch-mail (G) は必要ない。
┃ set spoolfile=/var/mail/tamo と設定しておけば良いだけ。
┃ すぐ読める。
┃
┃3. 読み終わったらホームディレクトリのどこかにメッセージを移動する。

という感じなのだと思います。


しかしサーバ上でメールを読む人ばかりではありませんから、
$spoolfile を NFS や IMAP の場所にすることもあります。
(一応、POP サーバを指定することもできます。)
これは 2 の部分を置換しているわけですね。

それでも不満な POP ユーザは、2 ではなく 1 を取り替えます。

┃1.1. リモートの SMTP サーバがメッセージを受信する。
┃1.2. 自ホストからは fetchmail を起動する。
┃1.3. リモートの POP サーバがメッセージを fetchmail に渡す。
┃1.4. fetchmail がメッセージをローカルファイルシステム上に置く。
┃ たとえば /var/mail/spool に。
┃
┃2. Mutt を起動する。既にメールは /var/mail/spool にあるので、
┃ Mutt で fetch-mail (G) 機能を使う必要はない。


この仕組みすら面倒だという人は

┃1. リモートの SMTP サーバがメッセージを受信する。
┃
┃2.1. Mutt を起動する。読むメッセージがローカルにない。
┃2.2. Mutt の fetch-mail を実行する。
┃2.3.リモートの POP サーバがメッセージを Mutt に渡す。
┃2.4. Mutt がメッセージを $spoolfile に置く。
┃2.5. やっと読める。

という使い方をします。
これだと「メールを読もう」と思って Mutt を起動してから
実際に読めるようになるまで手間がかかるので、不便ですね。
cron で fetchmail を実行するか、$spoolfile に POP を
指定するのが私の個人的なオススメです。

-- 
tamo



Mutt-j-users メーリングリストの案内
Back to archive index