Next Previous Contents

5. News Readers

这里所谓的 News Readers 是泛称许多架构在 Linux 上用以阅读 news的特定软体。 而一般来说, 最容易自 Linux 和 newspak 中取得的版本是"tin","rn","trn"。

基本上,当选择一个 news reader 时, 其标准不外是使用简单, 与容易设定(易於选择有兴趣想阅读的news, 并筛除掉不想阅读的文章)。

您可以设定路径到任何你高兴的地方, 只要全部的新闻读取程式可以从你安装的INN或Cnews找得到 "inews"及"mail"程式以送信去回覆张贴布告。 ( 译注: 如果您使用的是 Slackware Linux, 在安装时也有选择安装 N系列, 那麽系统就会自动帮您正确安装好 INN 与 C-News , 您所须要作的就只是跟著 /usr/lib/news/tools.linux目录中的 INSTALL.linux档案所说明的调整一些设定档而已。 )

本章接下来将会简短地提及 news reader 中几个较受欢迎且常见的软体。 不要你问,我有很多理由去用"nn"。

5.1 Tin

Tin 是一个相当适於新手使用的「讨论串式新闻读取程式」。 它可支援删除档案与 NOV 串列方式。 如果您使用的是 INN , 那麽 Tin 预设为读取 NOV.overlay 的档案, 而不写索引档。

如您想要在 Linux 的环境下编绎 Tin , 基本上只需在 makefile 中设定其软体所在位置 ( 尤其是 inews 所在的位置 ) , 然後输入 "make linux" 的命令即可。 对於在 Linux 下操作的 news 而言, 并不需要特别的补丁码。

至於讨论串式的阅读, 您可以输入 "tin -u" 来 update 索引档。

为了确保可以使用 NNTP 协定来阅读 news , 在编绎的过程中, 您必须设定 "NNTP_ABLE", 这个参数的设定在使用 local host 读取的情况下会生成 "tin" ; 而以 NNTP 方式读取 news 时,则会产生 "rtin" 的档案。 键入"tin -r"将可得到与键入"rtin"相同的功能。

Iain Lea 先生建议在 crontab 中加入以下的叙述, 并键入 "make daemon" 来 make "tind" 。

        # thread the database
        35 * * * * /usenet/bin/tind -u

我曾在 SLIP 协定下把 tin 当成 NNTP-based 的 newsreader 使用过。 如果您所要接上的系统接受全部的新闻群组时, 则您就必须花很多时间在等待系统载入 "active"这个档案。

5.2 Trn/Mthreads

trn 软体的前身是 "rn" , 而两者间的不同则在於前者可以提供讨论串式的阅读。 trn3.2 或者更新的版本可以选择使用 "mthreads" 方式 ( trn 的内定 ) 或是 NOV 方式 ( INN ) 来做串列式的阅读。

想要编译本软体, 只需执行 Configure , 并接受其所评估过的内定值。 还有就是你的系统中至少要有 lib4.4.1 和 bash-1.13 (现在在很多的Linux archive sites已经有beat版本) 才能使Configure 成功的执行。 你可能同时需要bash1.13和libs4.4.1以使得新的Configure可以正确的执行。

在 sunsite 的 newspak 包含有在 Linux 下给 trn 用的可以工作之config 档案。

一般来说去修改 trn 的 config.sh 档案并不是聪明的举动, 除非说只是一些非常单纯如修改路径以符合你的工作之类的动作。 如果您想这样做的话, 也最好在执行"make depend"、 "make"、 "make install" 之前先执行"Configure -S"。

尽管在 Linux 上以 bash1.12 执行 "configure" 失败, 但 "Configure -S" 却工作的很好, 因此如果你以 newspak 的 config.sh 作为一个起点, 那你就很接近了。

编译使用 NNTP 读取的 trn 也只是当 Configure 问你是不是要去做时简单的回答"yes"而已, ( 假设 Configure 可以正常作动 ) 。 未来的新版也将会把 NNTP 读取的 config.sh 包含进来 -- 一如在 local host 读取者的 config.sh 。

我曾在 SLIP 协定下把 trn 当成 NNTP-based 的 newsreader 使用过。 如果您所要接上的系统接受全部的新闻群组时, 则您就必须花很多时间在等待系统载入 "active"这个档案。

trn 有相当多的命令列指令可供使用, 您可以轻易地自其 man page 中取得您所需要的资讯细节。 至於我则使用另一个有方便的方法来设定trn :

在目前的 newspak 中都会有一个 .trnrc 档可做为例子,您可以参照看看。

trn3.2 及更新的版本可以自由选择使用支援 NOV 或 mthreads 的串列阅读方式。 因此,我个人建议设定 trn 软体, 使之两种格式都可阅读 (可在 Configure中设定 ) , 然後在启动 trn 时再选择其中一种来使用, 例如: 您可以用 "trn -Zo"选择 NOV 格式; 或者 "trn -Zt" 使用mthreads , 而且您可以在 alias 中写入上述命令, 这会使您的使用更方便。

为了要建立使用 mthreads 串列式阅读的资料库, 您尚须在 news crontab 中输入以下叙述。

        # thread the trn database
        35 * * * * /usenet/bin/mthreads all

5.3 NN

您可以在 sunsite 上取得这一套软体, 且其中亦包含安装 nn6.4.18 时完整可使用的组态档 (working configure file), 您只需取得此软体, 并在 Linux 下键入 "make" 便可自行编绎, 还有就是此组态档在nn6.5b3( nn6.5 的 beta 版 ) 亦可使用。

编绎完成後,进行下列步骤:

有关的细节,您必须再详读随nn而来的文件档。 除了您必须把nnmaster设定在crontab中执行而不是当成在背景执行的守护者(daemon)外, 在 Linux 中编绎, 设定与执行 nn 和在其他 *nix 系统并无不同。 此外如果您尝试把 nnmaster 直接丢到背景来执行, 那麽它也无法正确的被驱动。

设定 nn 的执行是相当简单的,您只需在 crontab 中加入以下叙述:

        # run nnmaster to collect "nn" stuff
        # (not needed if you use NOV from INN in nn-6.5beta3)
        25 * * * * /usenet/sw/nn/lib/nnmaster

        # expire the nn database
        # (not needed if you use NOV from INN in nn-6.5beta3)
        0  4       * * * /usenet/sw/nn/bin/nnadmin =EYW 

        # stash a copy of the active file for "nngoback" and keep last 7
        0 3 * * * /usenet/sw/nn/lib/back_act 7 

我曾试著在 SLIP 协定下把 nn 当成 NNTP-based 的 newsreader 使用过。 在这种情况下对 config.h 档案稍做修改仍是必要的, 而您可以在该档案的注解文字中得到更细节的资讯。 把 nn 当成 NNTP-based 的newsreader 使用时, nn 会在己端 (local) 执行 nnmaster保有一份串列式阅读的资料库, 因此,在己端选择文章的动作会比其他软体快许多。 ( 当然,如果您是使用 modem 上 silp ,一些合理的等待时间仍是无可避免的。 )

新版的 nn (6.5.x) 当然也支援 INN 的 NOV 资料库格式, 且当您使用此功能时, 您就可以不必执行 nnmaster 了, 我个人强烈推荐使用此功能, 因为如此您就可以不用浪费 cpu 的时间去执行 nnmaster 与取得串列式阅读的资料库, 至於真正的 news 文章在此功能下则是非同步的取得。

5.4 其他的新闻读取程式

下列是一些亦可在 Linux 下使用,但未提及的 newsreader。


Next Previous Contents