この章では、gnspool のインストール、記事の取り込みの設定について解説します。既に、 gnspool を使っている人は、適当に読み飛ばして下さい。
適当なディレクトリに、gn-1.35 のソースを展開します。Linux 用の Makefile は、
gn-1.35/mkfiles/unix/linux
という名前で用意されていますので、コピーして
下さい。
gn の config プログラムは、インストール先のディレクトリをチェックしますので、先 に必要なディレクトリを作っておきます。
mkdir /var/spool/news mkdir /usr/lib/news mkdir /usr/lib/news/bin mkdir /usr/lib/news/man
次に、gn-1.35/src/
に移動して configur
を実行します。
configur
の実行時にインストール先などの指定を求められます。私は次のよう
にしました。
BINDIR = /usr/lib/news/bin MANDIR = /usr/lib/news/man NEWSSPOOL = /usr/spool/news NEWSLIB = /usr/lib/news MAIL_KANJI_CODE = JIS PROCESS_KANJI_CODE = JIS FILE_KANJI_CODE = JIS DISPLAY_KANJI_CODE = JIS NEWSRC = ~/.newsrc
また、これらの設定は site.def
を変更することによっても変更できます。が、
site.def
を変更した後は、必ず、configur
を再実行しましょう。
この後、make ; make install
すれば、必要なファイルがインストールされる
はずです。
次のような内容の /usr/lib/news/.gnrc
を作成します。.gnrc
の設
定法の詳細については、gn(1) を参照して下さい。
NNTPSERVER news.server NAME Hoge Hoge DOMAINNAME mydomain.or.jp ORGANIZATION dokoka GENERICFROM 1 UNSUBSCRIBE all,!fj.os.linux ARTICLE_LIMIT 0 ARTICLE_LEAVE 0 SELECT_LIMIT 0 GNSPOOL_LANG EUC AUTHOR_COPY /dev/null NEWSRC ~/.newsrc
su news -c "/usr/lib/news/bin/gnspool -g -h news.server"
/var/spool/news
の下に記
事が取り込まれ、/usr/lib/news/active
が生成されているはずです。
誤動作を避けるため、NNTP Server はコマンドラインで明示的に指定して下さい。
gnspool は、.gnrc
の設定よりも環境変数 NNTPSERVER を優先します。さらに、
su コマンドは現在の環境変数を引き継ぎます。従って、環境変数 NNTPSERVER が設定され
ている状態で上記のコマンドを発行すると、意図しない NNTP Server に接続することがあ
り得ます。次のスクリプトを用いると gnspool に .gnrc
の指定を強制させるこ
とができます。
#!/bin/bash export NEWSLIB=/usr/lib/news export NEWSSPOOL=/var/spool/news gnrc=$NEWSLIB/.gnrc export NNTPSERVER=$(/usr/bin/awk '/^NNTPSERVER/ {print $2}' $gnrc) /usr/lib/news/bin/gnspool -g
/usr/lib/news/.gnrc
に次の設定を加えると、上流のニュースサーバーでキャ
ンセルされた記事がローカルスプールに存在する場合、その記事を消去するようになりま
す。
REMOVE_CANCELED 1
ただし、上流ニュースサーバーの expire 期限が経過した後もローカルの記事を残してお きたい場合には、この方法は使えません。
Message-ID による検索ができるようにするには、/usr/lib/news/.gnrc
に、
USE_HISTORY 1
/usr/lib/news/history
が生成
されるようになります。