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

7. usenet(c.o.l.* その他) についてよくある質問

7.1 なぜ議長のいるグループに投稿できないのですか?

ニュースリーダはメールを送るために /bin/mail を呼ぼうとしますが、多分 それが良くないのでしょう。SLS 版の /bin/mail を mailx-5.3b.tar.z のも のに置き換えて、( elm のように) mail グループでモードが 2755 として 作成して下さい。mailx-5.3b.tar.z は、 sunsite.unc.edu の pub/Linux/system/Mail ディレクトリに置かれています。

それ以外では、ローカルシステムで議長がいるニュースグループを議長がいな いかのように設定し、どこかの上流サイトが記事を黙って削除した(いくつか のシステムソフトウェアであって、人ではない)場合も考えられます。2〜3 週間毎に news.admin に投稿される checkgroups 記事が到着した時に、 checkgroups を実行して確認して下さい。

7.2 なぜパーミッション関連の問題が発生するのでしょうか?

あなたがインストールした配布版の /etc/passwd と /etc/group ファイルに news ユーザとグループが存在するかと、パーミッションをチェックして下さ い。これらはまだ、 Linux 標準のアカウントになっていないようです。

/usr/local/lib/news/setnewside をルートに setuid する以外は、 /usr/local/lib/news ディレクトリのファイルの所有者は news.news でなけ ればいけません。

news にはどんな uid と gid を使ってもかまいません。

7.3 なぜローカルに投稿した記事が、下流サイトに送られないのですか?

多分、 cron で newsrun を起動していないか、 sys ファイルの編集を失敗し たか、 /usr/spool/news/out.going 以下のディレクトリ等が存在しないのか もしれません。

ニュースグループの作成やニュースの配送を、active や sys ファイルを(エ ディタを使って)編集して設定してはいけません。このような設定は /usr/local/lib/news/bin/maint にあるユーティリティを使って行って下さい。

7.4 なぜバイナリ配布版は Cnews の performance release ではないのですか?

いくつかの Linux で問題がありますし、 performance release 以前のバージョ ンでも、手頃なシステムで安定して高速に動作するものが含まれていますので、 オプションになっています。まだ信じられない人のために、 Cnews の README.new ファイルからいくつか引用します。

「C news の Performance Release 1993/02/20 版は、 1992/03/02 版からい くつかのインストールの問題点と重大なバグだけを改良したものです。」

「このリリースは、 cleanup release と呼ばれるものへの大体の中間点です。」

「古い Cnews で問題のない人は、スケジュールが遅れ公開されていませんが、 cleanup release を待った方がいいでしょう。」

主に、SLS1.01 が出来た頃のコンパイラとライブラリが、 Performance Release に全然ふさわしくなかったからでしょうが、これらは現在改良されて います。

7.5 なぜバイナリ配布版に nntp が含まれていないのですか?

Linux をセットアップしてすぐに使うことを想定していて、ニュースリーダと ニューストランスポートプログラムで nntp を利用するものとしないものの両 方を管理する手間が非常に大きくなるのを避けたかったからです。また、ロー カルな情報を含んでコンパイルすると、実行時に設定ファイルの内容で置き換 えられないからです。

7.6 なぜ時々、 doexpire (もしくは relaynews もしくは ...)で severe space shortage が発生するのですか?

/etc/mtab が読まれていないのでしょう。( /etc/mtab の)モードを 644 に 設定して下さい。これは、ルート所有のファイルが全ユーザのリードが許可さ れないような umask で、ルートによってマウントされたファイルシステムを アンマウントする時に起こります。

7.7 全て正常に見えるのに、投稿できないのはなぜですか?

古いバージョンの Linux には、 Cnews がハングしてしまうような壊れた sed が含まれていました。古い SLS 版の上に重ねてインストールしたなら、 /bin や /usr/bin にあるのが新しい sed であるか確認して下さい。

7.8 trn/tin/nn に 新しい NOV の機能を付加し、独立したスレッドデータベー スを置き換えることはできますか?

はい、できます。 trn3.3 は現在サポートされていますし、 tin は次のバー ジョンでサポートされる予定です。

Cnews の Performance Release やその他いろいろなニュースリーダに接続で きます。

NOV をサポートしている nn6.5 のベータコピーを使っていますが、 Linux で きちんと動いています。私は、 nnmaster を動かさずに (!) 、 nn を動かし ています。 uniwa.uwa.edu にコピーを置いています。

7.9 なぜ NNTP はバイナリで配布されていないのですか?

ローカルのみに重要な情報がコンパイル時に設定されていまい、実行時に自動 的に決定することができないからです。

7.10 ローカルにニュースの記事やデータベースを蓄えずに、ネットワークを 経由して読んだり投稿したり出来るように、NNTP を設定するにはどうすればいいですか?

( mdw@sunsite.unc.edu (Matt Welsh 氏) )

  1. ローカルアーカイブサイトから nntp と rn の reference implementation を入手します。 ftp.uu.net では、 nntp.1.5.11.tar.Z は /news/nntp ディレクトリに、 rn-4.4.pl3.tar.Z は /news/rn ディレクトリに置かれています。
  2. 以下の手順で nntp をコンパイルします。 /usr/local/lib/news にある全ての news 関連のファイルを残すことにしまし た。そのため、( ACTIVE_FILE, NEWSGROUPS_FILE, 等)ファイルにある残り のパスを全て設定し、 /usr/local/lib/news を使うようにしました。このよ うなファイルのうち多くはクライアントではなく NNTP サーバでしか使われま せんが、安全のために上記のパスが正しいディレクトリを指すよう変更しまし た。もちろんデフォルトのパスを使うことも出来ますので、この場合は単にデ フォルトのディレクトリを作成して下さい。
  3. ユーザ usenet が存在しなければ、作成します。inews プログラムはこの ユーザで実行されます。このユーザには、ユーザ id は必要ですが、ホームディ レクトリやシェルやその他については必要ありません。下の行を /etc/passwd に追加して下さい。
    usenet:*:13:1::/:
    
    ユーザ id (上では 13 )が重複していないか、確認して下さい。グループは 何でもいいですが、ここでは daemon (gid 1) を使っています。
  4. 上で書いた SERVER_FILE を作成します。例えば、ニュースサーバが wonton.tc.cornell.edu であれば、下の行を含めて /usr/local/lib/news/server ファイルを作成します。
            wonton.tc.cornell.edu
    
  5. PASSFILE を作成します。このファイルは、下の形式で記述します。
    <サーバ名> <ユーザネーム> <パスワード>
    
    ニュースサーバ(上記の SERVER_FILE の中のもの)が shoop.vpizza.com で、 そのマシンで投稿するためにはユーザネームが news、パスワードが floof の ユーザの権限が必要だとしましょう。この場合、稿するために必要な権限を持っ ているのであれば、 /usr/local/lib/news/nntppass )に、下の行が必要です。
    shoop.vpizza.com news floof
    
  6. ファイルの安全性を高めます。inews プログラムはユーザ usenet で動か して、ニュースのディレクトリと nntppass ファイルのオーナを usenet にし ます。
    chown usenet /usr/local/lib/news 
    chmod 755 /usr/local/lib/news 
    chown usenet /usr/local/lib/news/nntppass 
    chmod 600 /usr/local/lib/news/nntppass 
    
    ( nntppass ファイルに書かれている)パスワードは暗号化されていないので、 (ユーザ usenet と root 以外には)読めなくします。
  7. nntp.1.5.11 のソースディレクトリに戻って、 make client を行ないます。 ここでは、 inews の NNTP バージョンを構築します。これは NNTP クライア ントが使う唯一のファイルです。 私が inew を構築した時は、 uname.c にある uname() 関数が自分自身を永久 に呼び続けるというライブラリのバグがありました。これはもう修正されたは ずです。inews がハングしたように見えたり、システムの動きが相当遅くなっ たりしたら、 uname.c にある uname() を例えば my_uname() に変更し、 ( inews.c の中で)代わりに my_uname() を呼ぶように変更して下さい。こ の問題が発生したら、メールで知らせて下さい。 ( これは私 (VDS) ではなく :-) Matt 氏にメールして下さい。 )
  8. inews のプログラムをインストールするために、 make install_client を 行ないます。これにより、 /usr/local/lib/news/inews から /usr/local/bin/inews へのリンクも作られます。
これで、(手で)投稿することが出来るようになります。下のように、やって みて下さい。

$ inews -h << EOF
Newsgroups: misc.test
From: me@foo.bar.com
Subject: Testing
Reply-To: my-real-address@wherever.edu

This is a test.
EOF

入力すると、 inews が記事を投稿し、上の Reply-To の行にあるアドレスに、 misc.test のテストレスポンダから返事が送られてきます。どうか c.o.l.* :) のような実際のグループで、投稿のテストはしないで下さい。

7.11 nntp ベースのニュースリーダ/ポスタである rrn を構築するにはどう すればいいですか?

( mdw@sunsite.unc.edu (Matt Welsh 氏) )

  1. rn のソースディレクトリに移って、 ./Configure を実行します。ほとん ど全ての質問でデフォルトを選択します。rn が利用できるように、 /lib の 中に cpp (通常は /usr/lib/gcc-lib/i386-linux/2.3.3 の中)へのリンクが あることを確認して下さい。 まだ makedepend を実行しないで下さい。次のステップに進みましょう。
  2. config.h を編集します。 まだ直っていなければ、
    #define ROOTID
    
    の行を
    #define ROOTID 0
    
    に変更して下さい。
  3. rrn-4.4.pl3 には、 Linux には存在しない SIGEMT に関して小さなバグが あります。rn はプロセスがまだ動いているかチェックするために SIGEMT を 使用しています。POSIX.1 では代わりにシグナル 0 を送ってやるだけです。 init.c の 243 行目が
    if (kill(processnum, SIGEMT)) {
    
    となっていれば
    if (kill(processnum, 0)) {
    
    に変更して下さい。 #ifdef で変えればいいと思われるでしょうが、 final.c の中の sigignore() で問題が発生しますので、 SIGEMT を 0 に定義してはいけません。
  4. makedepend > makedepend.out を行ないます。
  5. make を行ないます。これで rn のコンパイルが完了します。
  6. make install を行ないます。

これでできあがりです。 rn は(いくつかのニュースリーダと同じように)ニュー スグループファイルを扱うために大量のメモリを使用することを忘れないで下 さい。 rn を最初に実行する時は、ニュースグループを調査して .newsrc ファ イルを作るために少し遅くなるでしょう。せっかちな人は、他の人が使ってい る .newsrc ファイルをコピーして下さい。


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