网络管理员指南 -19.Newsreader配置

/ns/wz/net/data/20020808042302.htm

网络管理员指南 -19.Newsreader配置


本文出自:http://www.linpus.com.tw 作者: Andrew Anderson



Newsreader用来提供归用户简便的访问新闻系统的功能。如邮递文章或者是用方便的方法剔除一个新闻组的内容。
这个界面的品质是一场无休止的战争。

有许多可以使用的newsreaders插入到Linux。下面我将介绍三个最流行的,名字为namely tin, trn, 和nn的基本设置。

一个最有用的newsreaders是:

$ find /var/spool/news -name '[0-9]*' -exec cat {} \; | more
这是die-hards阅读它们的新闻的方法。

然而,主要的newsreaders更为复杂。他们通常提供一个全屏界面,含有为显示所有用户曾经订阅的组的分层,用来
显示一个组中所有文章以及单独文章的总览。

在新闻组层,多数的newsreaders显示一个文章的列表,显示他们的标题行和作者。在大组中,保留文章之间的关联
对用户非常重要,尽管到较早的文章中识别应答是可能的。

一个经常重复原始文章题目的应答添加``Re: ''。另外,文章的信息id可能是在参考中给出内容的直接跟随:标题行,
称为threads.写入一个newsreader的其中一个任务是设计一个threading的有效的方案,因为时间要求是是文章数
量、的平方。

这里,我们将不继续挖掘用户界面是如何建立的,当前所有的newsreaders都有一个好的帮助功能,因此你可以自己
解决。

在下面,我们将知识处理管理性的问题。多数是关于建立threads的数据了帐户。
--------------------------------------------------------------------------------

Tin配置

考虑到线的最为通用的newsreader是TIN。它由Iain Lea著,并在一个名字为tass的较早的newsreader松散的模拟。
当用户进入newsgroup的时候它做它的threading,而且速度非常快除非你通过NNTP做。

在一个486DX50上,从磁盘直接阅读1000文章大约需要30秒。通过NNTP来装载新的服务器需要5分钟以上,你可能需要
通过经常使用-u选择更新你的索引文件来改进,或者通过使用-U选择引发tin。

通常tin将它的threading数据倾倒到用户根路径.tin/index下面。但是这可能因为来源问题而昂贵,因此你必然想要
在一个中心的位置保留一个单独的副本。例如。这可以通过使tin设置到新闻来达到,或者是一些无特权的帐户。
Tin将保留所有的线数据到/var/spool/news/.index下面。对于任何的文件访问或者shell撤离,它都将重新设置它的
有效uid到引发它的用户的实际的uid中。一个较好的解决是安装tind索引daemon,它作为一个daemon运行并有规律的
更新索引文件。这个daemon不包含在任何的版本所以你需要自己编辑。如果你正在使用一个中心新闻服务器运行一个
LAN,你可能需要在服务器上运行tind并通过NNTP使所有客户能够恢复索引文件。当然,这需要一个到NNTP的扩展。
N安装这个扩展的ntpd补丁包含在tin来源中。Tin的版本所在的产品有些没有NNTP的支持,但是现在大多数的都有了。
当作为rtin启动或者使用-r选择的时候,tin尝试连接到在/etc/nntpserver 文件中或者是NNTPSERVER环境变量中指定
的NNTP服务器。Nntpserver文件只是简单的在一个单独行中包含服务器名。


--------------------------------------------------------------------------------
Trn配置

Trn也是一个较早的newsreader的后辈产品,名为rn(意思是阅读新闻)。T在这个名字中代表“线性的”。由
Wayne Davidson.撰写。

与tin不同,trn在运行时间没有为它的线形数据准备的条款。相替代的,它使用由一个称为mthreads的程序来准备,
它们需要从cron经常引发来更新索引文件。

但是,不运行mthreads并不表明你不能访问新的文章,它只所名你将有所有那些``Novell buys out Linix!!''文章
散布在你的文章选择菜单,而不是一个你可以简单跳过的一个单一线。

要为特定的新闻组打开线,mthreads同新闻组列表一起在命令行启动。列表的组成与你SYS文件的风格完全一致:

mthreads comp,rec,!rec.games.go
将为所有的comp 和 rec启动threading,除了rec.games.go(运行Go的人不需要fancy threads)。这之后,你简单
的启动它而不需要任何的选择来使他连接任何新到的文章。在你活动文件中发现的所有组群中的Threading可以通过
与一个所有组群的列表一起启动mthreads来打开。如果你在晚上收到新闻,你将按惯例在早上运行mthreads。但是你
还可以在需要的时候更为经常的运行。非常繁忙的站点可能想要在daemon模式运行mthreads。当它使用-d选择在启动
时间开始,它会把自己放在背景中,并每10分钟唤醒一次来检查是否有新到的文章并排列它们。要在daemon模式下运
行mthreads,在你的rc.news手稿中输入下面的行:


/usr/local/bin/rn/mthreads -deav
-a选项使mthread自动为新的组打开线来建立;-v启动详细的记录信息到mthreads记录文件,mt.log位于你安装
trn的路径。

旧的不再需要的文章必须被经常从索引文件中定时清除。默认下,只有低水标记数字的文章将会被移动。这个数字上
面的文章仍然不过期(因为最旧的文章被一个到期标记为最长:表仪栏)可能通过给定的mthreads的-e选项来强制执
行一个``enhanced''到期运行。当mthreads在daemon模式运行时,-e选项使它每天放置到这样的提高到期,简短的说
就是在午夜之后。


--------------------------------------------------------------------------------

Nn配置

Nn由 Kim-F. Storm撰写,声称是一个newsreader,他的最终目的是不阅读新闻。他的名字代表“没有新闻,他的座
右铭是“没有新闻就是好新闻。Nn更好。”

为了达到这个矛盾的目标,nn同一个不仅允许产生线,而且扩展的在这些数据的连续性、会计、集合使用统计以及访
问限制上检查的大分类的维护工具一起使用。还有一个管理性程序称为nnadmin,它允许你相互执行这些任务。它是
直觉性的,因为我们将不留恋在这些方面,并且只处理索引文件的产生。

Nn线数据管理器称为nnmaster。它通常作为一个daemon运行,从rc.news或者 rc.inet2 script开始。它被作为这样
启动:

/usr/local/lib/nn/nnmaster -l -r -C
这为显示在你的活动文件中的所有的newsgroups启动线性。

同样的,你可能从cron定期启动nnmaster,给出一个组列表来向上执行。这个列表用在SYS文件中的处方列表非常类
似,除非它使用空格代替逗号。不使用假的组名,一个需要做的空的论述被用来指示所有的组。下面是一个样子:

# /usr/local/lib/nn/nnmaster !rec.games.go rec comp


注意到,这里的顺序非常明显:最左边的组指定比赛总是赢。于是,如果我们曾经输入!rec.games.在rec之后,来
自这个组的所有文章仍然已经被线性。

Nn提供了几个方法来从他的数据中移动到期的文章。第一个是通过检查新闻组路径和整个放弃那些不再需要的相应
的文章来更新。这是由nnmaster启动的默认操作,其选项是-E。它相当迅速,除非你正在通过NNTP使用。

方法2行为就象一个mthreads的到期运行,因为它只移动那些指定到文章的路径,这些文章的数字在活动文件的水
标注之下。它可能使用-e选项来启动。最后,第三个方案是按照上面的样子给出-F选择。然而,如果你使用
nnmaster作为daemon运行,你必须在到期可以替换之前杀掉它(使用-k),并在之后使用原始选择重新启动它。
因此在所有的组上使用方法1运行到期的正确的命令是:

# nnmaster -kF ""
# nnmaster -lrC
有更多的标记可能用来调节NN的行动。如果你考虑移动坏的文章或者消化文章分类,阅读nnmaster手册页。

Nnmaster依靠一个名为GROUPS的文件,它位于/usr/local/lib/nn。如果它在最开始不存在,它就会建立。对于每
一个新闻组,他包含一个从组名开始的行,任意的跟随一个时间标记和标志。因可能编辑这些标志来为有问题的组
启动特定行动,但是你可能不更改组出现的顺序。标记允许以及它们的影响也在手册页有详细介绍。