記事を uucp/rnews で転送する場合、そのしくみとしては、
自分の機械 | 相手の機械 | ||
uucp → | uux rnews → | rnews → | innd に nntp で投稿する |
自分のところに送られて来たけれど、失敗したよ と書いてあるなら、調べようがあるのですが。
という訳で、 uucp で送った rnews が転送された側で 失敗する場合に調べることは次の通りです。
ctlinnd mode とすると次のように表示される時です。
No innd.pid file; did server die?
Can't send "mode" command (sendto failure) No such file or directory.
もともと動かしていない (ps で見ても何も表示されない)
inndstart の問題 か、coredump してしまって止っているか
root になって /usr/news/bin/inndstart としてから /var/log/messages
を調べて見ます。
一番安易な方法として ctlinnd go 'reason' の後に expire をすぐ実行する などというのもあります。/var/news/etc/expire.ctl の設定が適切 であるか、適切なものに変更されていれば、これでうまく戻ること もあります。
* 許可が正しくない。 uucp user が実行出来て、news 権限で実行される必要がある。 最近、僕のところでは次のようになっています。 makoto@komekome 8:40:27/990807(/tmp/u)# ls -lag /bin/rnews -r-xr-s--- 2 uucp news 131072 Jan 27 1998 /bin/rnews (これを見ると uucp user で実行出来て、news group 資格 を持って実行するようになっています)この許可にするためには chmod 2750 /bin/rnews chown uucp.news /bin/rnews とするのも一つの方法です。 * rnews の許可と 一時作業域 の許可が合っていない。 これは上の rnews がどういう権限で実行されるかと関係しています。 僕のところでは次のように uucp にしてあります。 makoto@komekome 8:42:38/990807(/tmp/u)# ls -algd /var/news/spool/tmp drwxrwxr-x 2 uucp uucp 512 Aug 5 23:44 /var/news/spool/tmp ただし、これは確か失敗した時にだけ関係する設定で、通常は必ず しもこの通りでなくても rnews 自体は実行出来るはずです。
この時は rnews で送られる形式の問題が考えられます。
> pwd /var/spool/uucp/.Failed/vega/D. > ls D.vega16b166d > file D.vega16b166d D.vega16b166d: executable cunbatch script > これは自分のところに送られて来たのですが、innd が動いて いなかったために .Failed directory に保存されてしまった ものです。ここに書いてあるように cunbatch script となって いるのは正常なものです。圧縮されていないものであれば rnews script と表示されますが、それも正常です。 Last Update 19:53:32 03/12/08 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected]) (since 1999/08/07)