Q. mnews の MH モードで、pop サーバからメールを取り込むことができませ ん。どうすればよいのでしょうか。 A. POP3 サーバ、あるいは APOP サーバからメールを取得しようとしていま せんか? その場合、「ユーザの入力が不要な inc」が実行できるように .netrc などに設定を加える必要があります。具体的には次のようにします。 1. mnews の設定ファイル ${HOME}/.mnews_setup ファイルに以下を追加します: mh_mode: on msgchk_rule: 2 2. POP3 サーバからメールを取得する場合は、MH の設定ファイル ${HOME}/.mh_profile に以下を追加します: inc: -norpop -noapop -host pop-hostname -user pop-account msgchk: -norpop -noapop -host pop-hostname -user pop-account APOP サーバからなら、次のようにします: inc: -apop -host pop-hostname -user pop-account msgchk: -apop -host pop-hostname -user pop-account ここで pop-hostname には POP3/APOP サーバ名、pop-account には POP3/APOP アカウント名を記述します。 3. MH の inc, msgchk コマンドを問い合わせなしで実行するため、 ${HOME}/.netrc ファイルを作成し、以下の記述を加えます。 machine pop-hostname login pop-account password pop-password pop-hostname には POP3/APOP サーバ名、pop-account には POP3/APOP アカ ウント名、pop-password には POP3/APOP パスワードを記述します。 上記のように、$HOME/.netrc ファイルには生のパスワードが記述さ れるため、その取り扱いには細心の注意を払って下さい。他のユーザーに読ま れないように、ファイルのモードは 600 にしておきます。 % chmod 600 $HOME/.netrc 以上の設定でメールを取り込んで読むことができるようになるでしょう。 なお、mnews 1.21 は環境変数 MH による設定ファイル (.mh_profile) 切り替え には対応していません。対応させるには、たとえばこんな patch を適用して mnews を作り直す必要があります: ----patch start---- --- src/mh.c.dist Fri Sep 4 11:28:45 1998 +++ src/mh.c Fri Sep 4 12:07:05 1998 @@ -416,7 +416,36 @@ if (!mh_mode) { return(0); } - sprintf(init_file, "%s%c%s", home_dir, SLASH_CHAR, MH_INIT_FILE); + { + char *mymh; + + if ((mymh = getenv("MH")) != NULL) { + /* set alternate MH profile path */ + if (*mymh == SLASH_CHAR) { /* absolute path */ + if (PATH_BUFF < (strlen(mymh) + 1)) { + fprintf(stderr, "init_file buffer is not enough: current = %d\n", PATH_BUFF); + exit(1); + } + sprintf(init_file, "%s", mymh); + } else { + char *p; + + if ((p = getcwd(NULL, PATH_BUFF)) == NULL) { + perror("getcwd"); + exit(1); + } + if (PATH_BUFF < (strlen(p) + 1 + strlen(mymh) + 1)) { + fprintf(stderr, "init_file buffer is not enough: current = %d\n", PATH_BUFF); + exit(1); + } + sprintf(init_file, "%s%c%s", p, SLASH_CHAR, mymh); + free(p); + } + } else { + /* set standard MH profile path */ + sprintf(init_file, "%s%c%s", home_dir, SLASH_CHAR, MH_INIT_FILE); + } + } buff1[0] = buff2[0] = '0'; init_field[0].field_buff = &buff1[1]; init_field[1].field_buff = &buff2[1]; ----patch end---- この patch を適用した mnews であれば、 % env MH=/other/place/other_mh_profile mnews args... として、標準とは異なる MH 設定ファイルを利用できます。 なお、/usr/local/share/doc/mnews/ ディレクトリ内に mnews 関連ドキュメ ントがありますので、こちらも随時参照して下さい。
グループ名: MH