前: Rmail Rot13, 上: Rmail


25.18 movemailとPOP

新着メイルを取得するとき、rmailはまずinboxファイルからrmailファイルに 新着メイルをコピーします。 それから、rmailファイルを保存します。 そして、inboxファイルの内容を消します。 こうすると、システムがクラッシュするとinboxとrmailファイルに メイルを重複して持つことになりますが、 メイルを紛失することはありえません。 変数rmail-preserve-inboxnil以外ならば、 rmailは、inboxファイルからrmailファイルに新着メイルをコピーしてから inboxファイルの内容を消しません。 たとえば、旅行中は携帯コンピュータでPOPを介してメイルを調べ、 メイルをサーバーに残しておいてあとでワークステーションに保存するように するには、このような設定をします。

場合によっては、rmailは間接的にinboxファイルから新着メイルをコピーします。 まず、movemailプログラムを実行して、 inboxから~/.newmail-inboxnameという中間ファイルに メイルを移動します。 それから、rmailは中間ファイルから新着メイルを併合して rmailファイルを保存してから中間ファイルを削除します。 これを実行中の都合が悪いときにクラッシュすると中間ファイルが残ってしまい、 rmailがつぎにinboxから新着メイルを 取得するときにまたそのファイルを使ってしまいます。

rmailが~/.newmail-inboxnameのデータを独自形式(Babyl形式) に変換できないと、同じデータでトラブルが再発しないように ファイル名を~/RMAILOSE.nnは名前が一意になるような整数)に変えます。 このファイルを調べて、rmailが解釈できなかったメッセージ (たぶん、コントロール下線の文字、8進コード037を使ったメッセージかもしれない) を探してそれを削除します。 そうしてから、1 gコマンドを使って修正したファイルから 新着メイルを取り込みます。

inboxファイルにデータを保存するかわりに、 POPと呼ばれる方法を用いてユーザーのinboxのデータを参照する 場合もあります。 movemailをコンパイルするときにマクロMAIL_USE_POPを定義して コンパイルすればmovemailはPOPを使って動きます。 (Emacsをインストールするとき、 `--with-pop'を指定してconfigureを実行すれば、 このようにできる。) movemailはPOP3でしか動かず、POPの古いバージョンでは使えません。

movemailを適切にコンパイルしてインストールしたとすると、 rmailファイルのinboxリストで、 `po:username'の形の『ファイル名』でPOPのinboxを指定できます。 movemailは、そのような名前に対しては、 POPサーバーに対する接続を開きます。 MAILHOST環境変数で、どのマシンでサーバーを探すかを指定します。

POP経由でメイルを参照するにはパスワードが必要です。 変数rmail-pop-passwordnil以外のときは、 これはPOPに対してを使うパスワードを指定します。 あるいは、変数rmail-pop-password-requirednil以外ならば、 rmailはユーザーにパスワードを尋ねます。

movemailにコマンド行オプションを追加する必要があるときには、 変数rmail-movemail-flagsに指定したいオプションのリストを設定します。 inboxの内容を保存するオプション`-p'を指定するために この変数を使わないでください。 かわりにrmail-preserve-inboxを使ってください。

読者のサイトでインストールしたmovemailプログラムは、 Kerberos認証を使うかもしれません。 その場合、 rmail-pop-passwordrmail-pop-password-requiredが設定されて いなければ、POPでメイルを取得するときにデフォルトで Kerberos認証を使います。

POPサーバーによってはメッセージを逆順序に保存します。 そのようなサーバーで受信順にメイルを読むには、 rmail-movemail-flagsにフラグ`-r'を追加して、 ダウンロードしたメッセージを逆順にするように movemailに指示します。