次のページ 前のページ 目次へ

5. ニュース

5.1 オンライン(接続時)用ニュース閲覧ソフトの設定法

PPP が生きている限り、オンラインでニュースを読むことができます。これ用に使え るプログラムは星の数ほどあります。簡便な代替策としては、 rtin や trn があり ます。

ニュースを読むために設定しなければならないのは、大抵の場合( .profile で一度 指定しておしまいというのが普通の方法です)以下のことだけです。


       export NNTPSERVER=news.acme.net

送信時の From アドレスを正しく設定するためには、以下の指定が必要なプログラム もあります。


       export NNTP_INEWS_DOMAIN=acme.net

5.2 オフライン(非接続時)用ニュース閲覧ソフトの設定法

非接続時にニュースを読めるようにして、電話代を節約すると同時にニュースと柔軟 に付き合えるようにするためには、何らかのローカルニューススプールをつくる必要 があります。それには若干の設定をしなければなりません。また、ある程度の大きさ のディスクの空きも不可欠です。ひとたびスプールを作ってしまえば、後はだいたい のことが自動で実行できます。時々気を配ってやらなければならない項目はあります が、大したものではありません。

二種類の方法を以下に御紹介しましょう。

5.3 C News の設定法

ここで御紹介する方法は、C News というニュースサーバと NNTP というプロトコル を利用するものです。C News はもともと我々の用途とは異なる使用局面を想定した ものですが、本書の目的にとっても有用なものです。もっと新しいパッケージである INN というニュースサーバーを使ってみたいという方もいらっしゃると思いますが、 これは C News 以上に資源を蕩尽します。いずれにせよ、この両方を組み込むことの ないように注意してください。両雄並び立たずなのです。

ニュースの維持作業はすべて news というユーザー名でログインしている間に済ませ るというのが鉄則です。また設定ファイルはどれもを /usr/lib/news に置く必要も あります。このためには root でひとまずログインした上で、改めて su news; cd を実行するのが良いかもしれません。

設定ファイルの中では以下のものがもっとも大切です。

active は購読中のニュースグループの概観を与えるものです。これを更新 するには addgroup という命令を使用します。用例: addgroup comp.os.linux.networking y

organization にはヘッタのorganization という項目に記入した い名称を記入します。本文書の場合なら、

Dirk Gently's Holistic Detective Agency

となります。

mailname には本文書の例なら、 acme.net と記入します。

mailname

whoami にはあなたのサイト名を Path: 以下に指定します。ここ での設定では NewsX を使っているので、

sys

sys はニュースの取得、再配布を司るものです。以下の例は acme.net を パスに追加するプロバイダを想定したもので、このプロバイダが唯一のニュース取得 源となっています。この例は、受信したニュースをすべて受け入れる・未読のニュー スだけをacme.net に投稿する・投稿するニュースはあらかじめ手元のサイトに送付 されているということを示しています。この例は簡素なもので、すべてのニュースグ ループを一つのところから取得する用になっています。/allという指定は 配布を指定するもので必ず必要です。F は、投稿する記事が一つのファイ ルに集められているということを示しています。


       ME:all/all::
       acme/acme.net:all,!junk/all:FL:

送り出すニュース用のサブディレクトリを作成します。私共は以下のようにしました。


       mkdir /var/spool/news/out.going/acme

mailpaths

mailpaths は moderate された グループ宛ての投稿を管理するものです。し かし、これは普通プロバイダに委ねる仕事です。

C News には毎日必要な管理作業があります。しかし一度指定してしまえば、この仕 事は news というユーザで crontab -e 命令を実行するという方法で済ま せてしまうことが可能です。以下の推奨例を御覧下さい。必要なものは押さえてあり ます。


       # maintain incoming and outgoing batches
       10,40 *  * * * /usr/lib/newsbin/input/newsrun

       # expire C News, once a day
       30 0  * * * /usr/lib/newsbin/expire/doexpire

       # monitor and report if needed
       00 2  * * sat /usr/lib/newsbin/maint/addmissing
       40 3  * * * /usr/lib/newsbin/maint/newswatch
       50 3  * * * /usr/lib/newsbin/maint/newsdaily

newsrun は記事の授受を司り(一時間に二回起動)、doexpire は 古くなった記事を削除する(毎日00:30に起動)ものです。その後の三つの命令は様々 な監視業務、エラー訂正作業を行うためのものです。

上記の諸作業がきれいに処理されていることをコンピュータ起動時に確認する必要が あります。ルートになって、以下の一行を /etc/rc.d/rc.local に付け加 えてください。


       su news -c /usr/lib/newsbin/maint/newsboot

ニュースは NewsX というプログラムを用いて NNTP サーバーから購読することも できます。このプログラムの所在は以下の通りです。

ftp://sunsite.unc.edu/pub/Linux/system/news/transport/newsx-0.9.tar.gz ftp://ftp.sn.no/user/egilk/newsx-0.9.tar.gz

NewsX の組み込みは至って簡単です。以下のような古典的な方法で行えます。


       make
       su
       make install
       exit

ここで概要を紹介した方法で組み込みを行った場合、このほかに必要なのは addgroup を使って購読したいグループを作成することだけです。

記事を取り寄せるには、news というユーザーとして以下の命令を実行します。(PPP あるいは同様の方法を用いるものとします)。


       newsrun
       newsx acme news.acme.net
       newsrun

-d というオプションを付けると、画面上に記事がずっと表示され続きます。 詳細については、NewsX の付属文書を参照してください。

NeewsX はニュース記事の投稿をも司ります。

古くなった記事を処理するためには、explist というファイルが必要です。以下の例 に付した解説は、ニュースの管理にはどのような作業が必要かを説明するためのもの です。


       # hold onto history lines 14 days, nobody gets >120 days
       /expired/           x    14   -
       /bounds/            x    0-1-120 -

       # 以下のグループの記事は二ヶ月保存
       comp.sources,comp.os.linux.all     x    60   -

       # ごみは捨てる 
       junk,control             x    2    -

       # その他は二週間保存。書庫化は行わない。
       all                 x    14   -

代替案:小規模のニューススプールなら、 control というニュースグルー プを作る必要がないことも少なくありません。利用する量に比べて情報流通量が大き すぎるからです。重要な点は、記事は削除されるのにグループは自動的に作成されて しまうということにあります。newgroup を含む制御メッセージが話をめちゃくちゃ にしないように気をつけてください。newgroupperm というファイルを使って、何を 許容するかを指定します。


  comp.os.linux  tale@uunet.com yv
  all       any       nq

この例は、comp.os.linux 以下のすべてのグループを作り(y)、ユーザーニュース を通知する(v)場合のものです。これ以外のものは全部、表示せず(q)無視されます (n)。手作業ですべてのグループを作るのであれば、二行目だけで十分です。

代替案: NewsX の代わりになるものとしては suck、 slurp (postit と組み合わせ て使用する)があります。Slurp は NNTP NEWNEWS を使用します。NNTP NEWNEWS は 処理量の多いニュースサーバーで活躍しているものです。

5.4 Leafnode の設定法

今一つの別解は統合パッケージである leafnode を組み込むという方法 です。これは、個人がニューススプールを利用する際に必要となる作業をすべて処 理するものです。設定も容易です。入手先は以下の通りです。

http://www.troll.no/freebies/leafnode.html

C News と同様に、ニュース管理の作業は news というユーザーで行う必要があり ます。

leafnone のホームディレクトリは /usr/lib/leafnode です。組み込 むためには、以下の作業を行います。


       cd /usr/lib/leafnode
       tar -xzvf leafnode-0.8.tgz
       cd leafnode-0.8
       make
       su
       make install

ルートとしてログインしている間に、 /etc/inetd.conf の中の NNTP を制御している部分を変更します。


       nntp  stream  tcp  nowait  news  /usr/sbin/tcpd /usr/local/sbin/leafnod
e

次のようにして再起動します。


       killall -HUP inetd

exit を実行して、news というユーザーに戻ります。/usr/lib/leafnode/conf の NNTP サーバーに関する部分を変更します。こ こでの例なら以下のようにします。


       server = news.acme.net

crontab -e を用いて news というユーザとして 以下の命令を実行す るようにすれば、あとは leafnode がすべてを引き受けてくれます。


       # expire Leafnode, once a day
       0 4 * * * /usr/local/sbin/texpire

news というユーザーとしてニュースを送受するには、以下の命令を用います。 (PPP が立ち上がっていることを前提としたものです)


       /usr/local/sbin/fetch

ニュースを読もうとするユーザーは "オンライン(接続時)用ニュース閲覧ソフトの 設定法" の項で説明した方法を用いてください。ただし、ローカルマシンに関する 以下に示す設定は例外です。


       export NNTPSERVER=localhost

必要な作業はこれですべてです。最初に fetch を実行したときに、購 読できるニュースグループの一覧が取得できます。 次いで leafnode は利用者が どのグループを購読しようとしているかを調べ、次回起動時用にはこれを利用しま す。

代替案: leafnode の代りに nntpcache を使うこともできま す。これは以下の場所にあります。

ftp://ftp.suburbia.net/pub/nntpcache/nntpcache.tgz


次のページ 前のページ 目次へ