したがって現在のところ、ニュースグループは local.test しかない。 (もちろん control や junk はあるけど…)
だけど、できれば fj のいくつかのグループの記事は、ちょっとこっ ち(つまり cipher ね)に持ってきておきたい。貴重な情報が良く流 れているからね。
でもだからといってわざわざ NetNews をフィードしてもらうわけにも いかない。だっていつでも cipher は立ち上がっているとはかぎらな いし、そんなことすると色々と面倒だしねぇ。
ではどうすればよいか。答えは suck を使えば良い。
基本的に suck というのはリモートの NNTP サーバからの記事のフィー ドを受けることなくローカルの News サーバに記事を取り込むものです。
では早速インストールしましょ。始めに展開。
cipher:~# ls -l suck-3.3.0.tar.gz -rw-r--r-- 1 yokota users 100598 Oct 18 09:01 suck-3.3.0.tar.gz cipher:~# tar xfz suck-3.3.0.tar.gz cipher:~# cd suck-3.3.0あとは ./configure と make でコンパイルはできる。ただし 環境によっては Makefile と suck_config.h を修正したほう がよい。
cipher:~# ./configure cipher:~# make CFLAGS=-O2 LDFLAGS='-O2 -s'あとは make install でインストール完了である。ただし私は /usr/local/suck/ にインストールしたかったので、自分でコピーして しまった。
cipher:~# mkdir /usr/local/suck cipher:~# mkdir /usr/local/suck/doNews cipher:~# cp suck rpost testhost sample/get.news.innxmit /usr/local/suck cipher:~# cp sample/put.news /usr/local/suck/doNews次に get.news.innxmit を環境に合わせて修正する。私の場合は以下 のようになる。
cipher:~# diff -u get.news.innxmit_orig get.news.innxmit
--- get.news.innxmit_orig Tue Oct 22 22:49:38 1996
+++ get.news.innxmit Tue Oct 22 21:57:39 1996
@@ -2,12 +2,12 @@
#BEFORE USING - check to ensure all the paths defined below are correct!!
-REMOTE_HOST=news.pixi.com
+REMOTE_HOST=news.msi.co.jp
LOCAL_HOST=localhost
SPOOLDIR=/usr/spool/news # base directory for articles to be rposted
NEWSDIR=/usr/lib/news # base directory for news binaries
-BASEDIR=/home/boby/doNews # base directory for scripts and data files
+BASEDIR=/usr/local/suck/doNews # base directory for scripts and data files
LOCALPOST=${NEWSDIR}/bin/innxmit # location of binary
CTLINND=${NEWSDIR}/bin/ctlinnd # location of binary
@@ -22,9 +22,9 @@
SCRIPT=${BASEDIR}/put.news # my filter for rpost
OUTFILE=/tmp/tmp$$ # used by rpost as article after it is filtered
-TESTHOST=testhost
-RPOST=rpost
-SUCK=suck
+TESTHOST=/usr/local/suck/testhost
+RPOST=/usr/local/suck/rpost
+SUCK=/usr/local/suck/suck
# is the local host up and running so we can post messages we download?
${TESTHOST} ${LOCAL_HOST} -s
@@ -60,7 +60,7 @@
fi
# now upload messages
- if [ -s ${OUTGOING} -o -s ${OUTGOINGNEW}]; then
+ if [ -s ${OUTGOING} -o -s ${OUTGOINGNEW} ]; then
${TESTHOST} ${REMOTE_HOST} -s
最後の箇所、これは私の /bin/sh ではエラーになったので修正したも
のです。もしかしたら大丈夫な人もいるのかもしれないですね。ちなみに私の
/bin/sh は bash 1.14.7 です。そして sucknewsrc を作成しておく。私の場合はとりあえず fj.mail と fj.os.linux を設定しておく。
cipher:~# cd /usr/local/suck/doNews cipher:~# cat sucknewsrc fj.mail -1 fj.os.linux -1この sucknewsrc は、読み込むグループの指定、及び既にどこまで読 み込んだかを記録しておくファイルです。-1 を指定しておけば suck が最大記事番号を調べてくれます。詳しくは man suck してください。
さて suck の設定は以上だ。極簡単に最小限のことしかここでは記し ていないが、suck に関しては付属のドキュメントに目を通してくださ い。3.3.0 以降は日本語のドキュメントが付属しています。
あとはローカル(つまり cipher ね)側の inn の設定をして おく。つまりニュースグループの追加である。これをしておかないと取り込ん だ記事を junk に放り込むことになる。
cipher:~# su news bash$ cd /usr/lib/news/bin bash$ ./ctlinnd newgroup fj.mail y yokota@cipher Ok bash$ ./ctlinnd newgroup fj.os.linux y yokota@cipher Okこれで OK だ。あ、そうそう。最後に /usr/lib/news/expire.ctl の 中で「寿命」を設定しておこう。
例えば私の場合は /usr/lib/news/expire.ctl に
fj.*:A:never:never:neverと入れておく。これは fj.* では expire されないで記事が残っ ていることになる。でもきっと DISK が切迫してきたら適当な日数をいれるこ とになるでしょうな。:-)
ではでは。実際に起動してみよう。まずは PPP 接続をする。それから get_news.innxmit を起動してみる。
cipher 511# ./get.news.innxmit Attempting to connect to news.msi.co.jp Using Port 119 Official host name: quux.msi.co.jp Alias news.msi.co.jp Address: 192.51.54.2 Connected to quux.msi.co.jp 200 msi.co.jp InterNetNews NNRP server INN 1.4 22-Dec-93 ready (posting ok). Elapsed Time = 0 mins 0.56 seconds 0 Articles to download Deduping Elapsed Time = 0 mins 0.00 seconds Deduped, 0 Items remaining, 0 dupes removed Processing History File Elapsed Time = 0 mins 0.03 seconds Processed history, 0 dupes removed Total Articles to Download: 0 No articles. Closed connection to quux.msi.co.jp Cleaning up after myself No articles to download You can hang up the modem now最初は二つのグループとも -1 にしておいたので記事を取り込むこと はない。そのかわり sucknewsrc に最大記事番号が記されている。
cipher:~# cat doNews/sucknewsrc fj.mail 5291 fj.os.linux 13001これでリモートの NNTP サーバに新たに記事がとどけばローカルに記事を取り 込むことができる。
もちろん以前の記事も取り込みたいのであれば、この数字を変える。つまり取 り込みたい記事番号に修正をしてから再び get_news.innxmit を起動 すればよい。
今日はルンルンのスィッチオフ。