inn 入口 | inn は難しくない | INSTALL の読み方 | INN-2 for NetBSD | site map for INN

INN は難しくない

INN はそれほど難しくはないが、初めてだと、数多く設定するものが あるので、途中でいやになってしまうこともある。 それと、ニュース記事の転送ということで相手のあることでもある。 自分だけ張切っても相手がいなければ、先に進まない。

これらを克服するには、一つづつ確めながら段階を踏んで行くのも一つの方法だと思う。 ここでは、そのようにして INN と近づく方法を紹介したいと思う。

相手がいなくても出来るところまでやって見ると、相手を探すはずみにもなる。

また Intranet などであれば、(転送相手のいない) 単独サーバというのも可能である。 (読み書きする人がいないと結局、さびしいことになってしまうが)

さて、INN って何 ? と思った方は Internet Network News で news server ということで、それ以上は下の ISCのところを御覧下さい。

書いた方がいいと思っているのに書いてないこと

INN 関連 URL
INSTALL の読み方 INN-2.3/INSTALL という名前の譜の読み方(日本語訳)。もし分らないことや、読みにくいことがあったら お知らせ下さい
ISC (本家) Internet Software Consortium, inn を作っているところ
(http://www.isc.org/products/INN/)
INN-2.3.3 インストール & 設定ガイド 酒井さんによるとても親切丁寧な説明
http://www.asahi-net.or.jp/~mu6k-ski/inn.html
ki.nu ki.nu/software/inn/ の入口、雑多な情報
http://www.ki.nu/software/inn/
diary 藤原の inn 日記(といっても単なる時系列の記録というだけ)
(この日記を読みながら、ここに整理して書いているところ)
http://www.ki.nu/software/NetBSD-sun3x/inn.shtml
Dave Barr's INN Page (英語) 情報が山ほどある。時間のある時に読みたい。
http://www.visi.com/~barr/INN.html
INN-2.2.2 付属文書翻訳 http://village.infoweb.ne.jp/~fwif0083/mine/lan/news/inn-2.2.2/
MIRROR list ftp://ftp.isc.org/isc/MIRRORS
入手先例 ftp://ftp.iij.ad.jp/pub/network/isc/inn/
ftp://ftp.tokyonet.ad.jp/pub/network/news/inn/
ftp://ftp.win.ne.jp/pub/network/news/inn/
ftp://ftp.isc.org/isc/inn/
ftp://ftp.kyushu-u.ac.jp/pub/Net/isc/inn/
ftp://meeko.EECS.Berkeley.EDU/pub/isc/inn/ (ここには 2.3 はない)
ftp://ftp.dti.ad.jp/pub/net/isc/inn/
ftp://ftp.u-aizu.ac.jp/pub/net/isc/inn/

まず、いくつか決めること

(この情報を読んでいただける方は) 多分 inn はまだ慣れていない方 だと想定している。
inn 初めに決めること
perl/pgp を使うかどうか perl は多分既に用意してあると思うので、使う。pgp は(最初は)なしでも いいと思う。欲しかったらまた最初からやり直せばいい。
disk の構成 400 MB から 1GBytes くらいのものを /usr/local/news に全部割当てる という使い方がいいと思う。 試すだけだったら 50MBytes くらいの区画でもいい。
記事の保存形式 traditional / time hash / cnfs のどれにするか → traditional とする。
設置先 inn-2 では (何も指定しないと) /usr/local/news/ に入るので、 それをそのまま使う。
上記はまず手初めに「こうして見たら」ということで選択を紹介した だけで、当然これ以外の選択をすることも出来る。

configure/make/make install

これは OS に依る。普通に使われているものなら configure と make だけ で出来るはず。引数については下の表を参照のこと。

uid/gid で一度困ったことがある。nis map と local の 対応が違って いて、自分で混乱し、

Jul 10 16:07:34 nazuha inndstart: can't setgroups: Operation not permitted
Jul 10 16:07:34 nazuha inndstart: seteuid(0) failed: Operation not permitted
のようになってしまい。 make install をやり直したことがある。OS によって 数字が違っていたりするので id, group, ls -ln などで確認が必要なこと もある。
条件 uidgidその他
NetBSD 設置時 68uid(8) は未使用
hoge 機 88 uid(6) は mail
某 nis map 6100uid(8) は 未使用

上記で決めたことは ./configure の引数に指定する。 一番最近使ったのは次のような方法

./configure の引数について
VersionDateargumentcomment
2.2.11999 09/06
 env CFLAGS=-O2 LDFLAGS=-s \
 ./configure \
  --with-perl \
  --with-sendmail=/usr/sbin/sendmail \
  --mandir=/usr/local/man

2.2.3 2003/03/01
./configure \
  --with-perl \
  --enable-uucp-names \
  --enable-setgid-inews
以前の spool から復活するため、一旦版を戻す
2.3.0 2000 09/15
 ./configure \
  --with-perl \
  --enable-uucp-names \
  --enable-setgid-inews \
  --tagged-hash
history がおかしい
2.3.0 2000 10/21
 ./configure \
  --with-perl \
  --enable-uucp-names \
  --enable-setgid-inews
tagged-hash は外したが、まだ 436 cant store article
2.3.2(2001)
06/27
07/14
08/29

2.3.4(2003)
03/01

(configure --help とすると沢山表示される)
make install の前に /etc/group に uucp の行を作っておく。 そうしない と chgrp: uucp: invalid group name と言われる
make install をしたら次のように終った。

Do not forget to update your cron entries.
Also run makehistory if you have to.
Create/obtain an active file and run makehistory -o if
this is a first time install

とにかく innd を動かして感触をつかむ

そのためには、次の設定だけはしておく
作業権限項目説明
root/etc/group(uucp/rnews を使う場合に限る) uucp の行が必要な時もある。
root/etc/passwd に newsvipw を使えば /etc/passwd または /etc/master.passwd を変更してくれる。 news という login 名が用意されていない OS もあるのでその時には
news:xyzxyz:6:8:Inter NetworkNews:/usr/local/news/etc:/bin/tcsh
のような行を用意する。 (ついでに ~news/.cshrc の path に /usr/local/news/bin を加えておく と後々楽)
newsactive (2.3.2 等だと既に作ってあるので作成不要)
/usr/local/news/db/active に次の 二行を手で書いておく(これ以降は手で編集しない)
control 0000000000 0000000001 y
junk 0000000000 0000000001 y

(これ以後、active を変更する時には ctlinnd newgroup .... ; ctlinnd rmgroup .... などを使う)
newsstorage.conf (2.3.2 では不要)
2.3.0 からは、これを必ず 設定する。そうしないと history が出来ない
method tradspool {
       newsgroups: *
       class: 2
}
というような行を加えておく
news 2.3.2 の場合、
touch db/history
makedbz -i とする。
history
makehistory -o
とすると /usr/local/news/db に
-rw-r--r--  1 news  news  61 Sep  7 05:40 active
-rw-rw-r--  1 news  news   0 Nov 10 22:18 history
-rw-rw-r--  1 news  news  41 Nov 10 22:18 history.dir
-rw-rw-r--  1 news  news   0 Nov 10 22:18 history.hash
-rw-rw-r--  1 news  news   0 Nov 10 22:18 history.index
が出来るはず。
root /etc/syslogd.conf
news.crit       /usr/local/news/log/news.crit
news.err        /usr/local/news/log/news.err
news.notice     /usr/local/news/log/news.notice
変更した後は syslogd に SIGHUP を送っておく kill -SIGHUP `cat /var/run/syslogd.pid`
HP-UX では news.crit と書く代りに 56.crit と書く必要が あるらしい。

こうしておいて、
/usr/local/news/bin/inndstart と入力する。(この時には権限は何でもいいはず)
(/etc/rc.local に設定するような時には次のようにする
su news -c /usr/local/news/bin/rc.news)
そうして次のようにして動いているか確める。

まずは動作確認
方法結果・様子
ps axu |grep inn news 7186 1.8 0.2 1288 176 ?? Ss 10:57PM 0:00.22 /usr/local/news/bin/innd -p4
telnet localhost nntp 別掲
tail -f /var/log/messages 別掲
tail -f /usr/local/news/log/news.notice多分最初は空
tail -f /usr/local/news/log/news多分最初は空
tail -f /usr/local/news/log/errlog多分最初は空
ここまで来たら、後は長丁場。相手を探して、 などを決める。これらは殆んど /usr/local/news/etc の下で設定する。
/usr/local/news/etc の下の設定
設定項目重要度(必要性)説明
inn.conf 下記の中では organization (組織名 -- 必須), pathhost (Path: に使う名前 -- 変更したい時だけ), domainname (通常不要のはず), complaints (投稿される記事に対して苦情がある時のメール先), くらいを設定すればいいか。
newsfeeds 到着記事の処理方法
incoming.conf転送受入の設定(以前の hosts.nntp)
port 119 で転送を受入れる相手を記述する
nnrp.access 読書系の許可 (News reader の接続許可)
active 有効ニュース・グループ
moderators ×会議制(moderated)の記事を送る先
control.ctl control message の処理方法
expire.ctl 記事の消去期限
motd.news ×
distributions×配布範囲
syslog.conf 記録を取る
その他の設定
設定項目重要度(必要性)説明
crontab定期的(定時的)に実行する設定
/etc/rc.local機械が起動した時に innd が動くようにする
/etc/aliasescontrol message の実行の様子、 毎日の日課作業(daily )の結果の送付先を設定する。

Last Update
19:53:33 03/12/08
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Apache/2.0.65 (Unix) mod_ssl/2.0.65 OpenSSL/1.0.1g DAV/2 PHP/5.4.26
Count.cgi
(since 1999/11/09)