📄 install.ms.2
字号:
.PPMake sure that you configure \fInntpd\fP so that it is using DBZ, and haveit feed each individual article to \fIinews\fP; don't use the \&``batchedinput'' option.It should also be set up so that it acts as if it is running under\fIinetd\fP.You should also make sure that \fIinetd\fP does nothing with the NNTPport, number 119..NH 1NNTP-based newsreaders.PPIf you already have your NNTP-using newsreaders installed and running,you do not have to do anything.This includes \fIxvnews\fP, \fIxrn\fP, \fIrrn\fP and so on.INN implements the standard NNTP protocol, with some extensions.INN does not provide the extensions used by \fItrn\fP, \fItin\fP orother newsreaders.(You can enable the \fItrn\fP ``XTHREADS'' by modifing \fInnrpd/nnrpd.h\fP;change the ``DONT_DO_XTHREAD'' to ``DO_DO_XTHREAD'' and verify the othermacros in that section.INN will not implement all the different indexing systems because theright solution is to have a generic interface that all readers can use.).PPFor administrative convenience, however, you might wish to have all yournewsreaders use the INN library and configuration files to talk to the server.The next section describes how to do that for \fIrn\fP.It is provided as an example, to help you convert other programs youmight have.INN does not provide, nor fully support, any newsreaders..NH 1Remote rn.PPThe ``remote'' version of \fIrn\fP (also called \fIrrn\fP) uses a set ofroutines in the NNTP ``clientlib'' file.INN can emulate these routines; see \fIdoc/clientlib.3\fP.If you need to build \fIrn\fP for client machines that don't have theentire INN distribution available, use the \fIMakeLib\fP script tobuild a distribution directory of the necessary routines.Use this script the same way you use the \fIMakeInews\fP script..PP\fIRn\fP, \fIrrn\fP, and \fItrn\fP are moving targets so these instructionsmay be out of date.The maintainers have agreed to officially support INN, however, which isa good thing..PPThere are two ways to build \fIrn\fP so that it uses the INN library.If you don't have the NNTP distribution installed you will have to usethe first way..PPThe first way is to apply a patch to the latest \fIrn\fP \fIConfigure\fPscript and then execute it and rebuild the program.To do this, type the following:.DScd \fIrn_source\fPpatch <$inn/frontends/rn.pch\&./Configuremake.DEAt some point, \fIConfigure\fP will ask you if you want to use theInterNetNews library; answer \fIyes\fP.You can then use either the full sources, or a special library thatcontains just the needed header and sources files.Tell \fIConfigure\fP the appropriate pathnames, and then proceedwith the rest of the \fIrn\fP installation..PPThe second way is to edit a couple of files after you have run \fIConfigure\fPand set it up to build the remote rn.First, replace the \fIrn\fP file \fIserver.h\fP with the INN file\fIinclude/myserver.h\fP.The next step is to edit the \fIrn\fP Makefile to remove the ``clientlib''file from the source and object file lists.This can probably be done by commenting out the definitions of the\fIc5\fP and \fIobj5\fP variables.You must also edit the Makefile to add the INN library to the list oflibraries that are linked in.This can probably be done by editing the line that defines the \fIlibs\fPvariable so that the full pathname to \fIlibinn.a\fP is the first itemafter the equal sign..NH 1Removing the Other Stuff.PPThe names below assume a ``standard'' news setup; things might be differenton your machine.Also, many programs have alternate names and links; make sure you chase downand remove \fBall\fP of them..PPYou might find it easiest to rename your \fI/usr/lib/news\fP (and\fI/usr/lib/newsbin\fP) directories to something else and start with aclean slate, copying over the files as they are needed.Make \fBsure\fP that your news processing is completely stopped beforeyou begin this process.That includes any \fIcron\fP jobs that may be running..PPThe \fI/usr/lib/news\fP directory can become cluttered \(em that's whyC News split everything up into separate directories.The following files are compatible with C News and B2.11 News, and should be\fIkept\fP:.DS.ta 1.5iactive active.times.DEIf you are running C News keep these files, otherwise delete them and use\fImakehistory\fP to rebuild them:.DShistoryhistory.dirhistory.pag.DE.PP\fIRn\fP does not have to be modified so leave this directory alone (orcopy it back if you moved your original):.DS/usr/local/lib/rn.DEIf you set up \fIrn\fP to use the INN library, remove this file:.DS/usr/local/lib/rn/server.DE.PPThe input system is completely replaced.Remove the following programs and their manpages:.DS/bin/cunbatch/bin/inews, /usr/lib/news/inews, etc.../bin/rnews, /usr/bin/rnews, etc.../usr/lib/news/rnews.stall/etc/nntpd, /usr/etc/nntpd, etc....DEAlso remove the following directories and everything within them:.DS/usr/lib/news/bin/input/usr/lib/news/bin/relay/usr/lib/news/bin/ctl/usr/lib/news/bin/inject/usr/lib/news/nntp (mkgrdates, nntp_access, shlock, etc).DE.PPThe transmission facility is completely replaced.You may keep your current feed subsystem if you want to, but it will requiresome changes to make sure that batchfiles are properly flushed; see the\fIsend-xxx\fP scripts for examples.Remove these files and programs:.DS/usr/lib/news/batchparms/usr/man/man8/newsbatch.8.DERemove the following directory and everything within it:.DS/usr/lib/news/bin/batch.DEYou can continue to use \fInntplink\fP, \fInewsxd\fP, and the like, subjectto the caveat just mentioned..PPArticle expiration and maintenance of the history and active files iscompletely replaced.Remove this file:.DS/usr/lib/news/explist.DERemove the following directories and everything within them:.DS/usr/lib/news/bin/expire/usr/lib/news/bin/maint.DEIf you do not remove the \fIexpire\fP directory, you will probably haveproblems installing INN's \fIexpire\fP, which is a program that oftenhas the same name as the C News directory..PPThe following programs in \fI/usr/lib/newsbin\fP are not needed and can bedeleted.Keeping them around is harmless, and if you find them useful don't deletethem:.DS.ta 1.5icanonhdr newshostnamectime newslockdbz queuelengetabsdate sizeofgetdate spaceforgngp.DENote that \fIctime\fP, \fIgetabsdate\fP, and \fIgetdate\fP are replaced by\fIconvdate\fP.More importantly, \fInewslock\fP does not lock \fIinnd\fP; it is bestto remove it..PPThe following files are replaced by INN configuration files.You should delete them, just to avoid confusion:.DS.ta 1.5imailname sysmailpaths whoamiorganization.DEIf you have other software that uses them (except \fIsys\fP),you can keep them.The following will be rebuilt (or overwritten) by \fIinnd\fP and\fIscanlogs\fP so you should remove them:.DS.ta 1.5ierrlog log.DE.PPIn addition to the manpages for the programs listed above, the followingmanual pages should be removed:.DS.ta 1.5iactive.times.5 newsmail.8expire.8 newsmaint.8mkgrdates.8c nntpd.8cnews.5 nntpxmit.1newsaux.8.DE.PPAny other files and directories can probably also be discarded..\".bp.SHAppendix III: Setting up different feeds.PPThis section gives some notes and advice on how to set up differenttypes of outgoing news feeds.It duplicates and expands upon the information in the manual pages..NH 0Ihave/sendme feed.PPFor a standard UUCP newsfeed, a site batches up all the articles itreceives and sends them to the downstream site, which unpacks the batchand processes each article. If the downstream site has multiple feeds,however, it might want to ``filter'' the articles that get sent. This isdone by having the feeding site send a list of Message-ID's as an``ihave'' control message. The receiving site examines the list to seewhich articles it does not currently have, and sends it back to theupstream site as a ``sendme'' message. The original site receives thismessage and prepares a batch in the standard way..PPNote that this has nothing to do with NNTP. It is a specialized type ofbatched feed that is not used very often.To do ihave/sendme with a site named remote, the local site must eitherhave a ``to.remote'' newsgroup or be compiled with MERGE_TO_GROUPS set to\&``DO''.PPAccepting an ihave/sendme feed is easy. Suppose an ``ihave'' message isreceived from a site named remote. When \fIinnd\fP processes the messageit will invoke the appropriate control script,\fI/usr/local/news/bin/control/ihave\fP. The script will filter the bodyusing \fIgrephistory\fP, creating a list of Message-ID's not found in the\fIhistory\fP database. It uses this output to create a ``sendme''control article which is posted to the ``to.remote'' newsgroup using\fIinews\fP. This article will then be queued and sent to remote in thenormal way. The remote site will then send the desired articles back..PPProviding an ihave/sendme feed is a bit more complicated. First, you mustcreate two entries in your \fInewsfeeds\fP file. The first should benamed remote.ihave. Make this a ``Tf,Wm'' feed that contains the remote'ssubscription list. This entry results in a a file that accumulates theMessage-ID's of all articles that remote might want. The other entryshould be named remote. This should be a ``Tf,Wn'' feed that onlysubscribes to the ``to.remote'' newsgroup.(Actually, if you feed some groups as a standard feed, you can put themon the remote entry, rather then the remote.ihave entry.).PPThe next step is to have the ``ihave'' control messages sent out. To dothis, review the \fIsend-ihave\fP script and make sure it is invoked asneeded (usually out of \fIcron\fP). It splits the batchfile from theremote.ihave \fInewsfeeds\fP entry and posts ``ihave'' control messagesinto the ``to.remote'' newsgroup. These messages will get queued for theremote entry..PPThe next step is to send out any articles queued for the remote entry.Treat this as a standard UUCP feed, invoking \fIsend-uucp\fP or\fIsendbatch\fP as appropriate, typically a few minutes after\fIsend-ihave\fP runs..PPWhen the remote site receives the ``ihave'' message it will filter it andsend back a ``sendme'' message whose body is the list of desiredMessage-ID's. When \fIinnd\fP processes this message it will invoke theappropriate control script, \fI/usr/local/news/bin/control/sendme\fP. Thisscript will call \fIgrephistory\fP to turn the list into a list of filesappended to the batchfile for remote. Examine this script (the filenameshould probably match the filename in the remote \fInewsfeeds\fP entry)and send the batch to the remote site (using \fIbatcher\fP, often called by\fIsend-uucp\fP or \fIsendbatch\fP)..NH 1Feeding a large number of sites.PP\fIInnd\fP tries to keep as many batchfiles open for as long as possible.It will normally open as many as it can, using all the availabledescriptors minus a fixed number for internal use (log files, etc.).You can explicitly set the number of files to open by using the ``\-o'' flag..PPIf you have more outgoing feeds than available descriptors, \fIinnd\fPwill recycle the files on a a ``least recently used'' basis.If most of your feeds get most articles (or you have vastly more feedsthen available descriptors), this will lead to ``file thrashing,'' closingand opening all the excess feeds on each article.To reduce this, you can have \fIinnd\fP use an internal buffer for a siteby using the ``I'' parameter in the \fInewsfeeds\fP file.If a site does not have its batchfile open, the server will not try to openit until there is more data to be written then will fit in the buffer.For example, suppose \fIinnd\fP was started with ``\-o10'' and thereare 12 sites, all with ``I512'' in their \fInewsfeeds\fP entry.If each article generates 50 bytes (a pathname and a Message-ID), then
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -