home *** CD-ROM | disk | FTP | other *** search
/ Unix System Administration Handbook 1997 October / usah_oct97.iso / news / cnews.tar / doc / install < prev    next >
Text File  |  1992-12-06  |  22KB  |  956 lines

  1. .Ch "Installing ``C News'' Network News Software"
  2. .SH
  3. Introduction
  4. .Ix introduction
  5. .PP
  6. .Df news
  7. .Df netnews
  8. .Df "network news"
  9. Network news
  10. (or
  11. .I netnews
  12. for short)
  13. consists of a collection of messages formatted similarly to
  14. ARPAnet mail
  15. (see DARPA RFC 1036 for details),
  16. .Ix "RFC 1036"
  17. widely spread.
  18. The logical network,
  19. imposed on top of various real networks,
  20. formed by the set of all interconnected sites
  21. exchanging network news is called
  22. ``Usenet''
  23. .Df Usenet
  24. and was formed in 1979,
  25. radiating out from Duke University.
  26. Netnews is propagated
  27. between cooperating machines
  28. by a flooding algorithm,
  29. with some loop prevention heuristics:
  30. each machine sends its neighbours news that the
  31. neighbours have (probably) not yet seen.
  32. .PP
  33. Flow of netnews between machines
  34. may be achieved by use of any network
  35. (or other medium)
  36. which can transmit an arbitrary stream of
  37. (at least 7-bit,
  38. preferably 8-bit)
  39. ASCII code, unmodified.
  40. If a network cannot transmit ASCII intact
  41. (e.g. BITNET),
  42. it is possible to encode netnews
  43. before transmission across the network
  44. and
  45. decode it upon reception from the network.
  46. Since one cannot be certain that
  47. one's network neighbours will be up and
  48. reachable at all times,
  49. outgoing netnews must be queued,
  50. at least in the case of network trouble.
  51. To date,
  52. at least
  53. these networks,
  54. protocols and media
  55. have been used to transmit netnews correctly:
  56. UUCP,
  57. .Ix UUCP
  58. RS232,
  59. NNTP,
  60. .Ix NNTP
  61. Ethernet\(rg,
  62. the ARPA Internet,
  63. .Ix Internet
  64. Datakit\(rg,
  65. .Ix Datakit
  66. ACSnet,
  67. .Ix ACSnet
  68. magnetic tape,
  69. SMTP,
  70. and
  71. BITNET,
  72. though at least the last two require some form of encapsulation
  73. to avoid corruption of articles;
  74. SMTP because some common implementations get the newline-CRLF
  75. mappings wrong,
  76. thus throwing off byte counts in batches,
  77. and
  78. BITNET because of its Procrustean chopping,
  79. .Ix BITNET
  80. expanding,
  81. mapping,
  82. bashing
  83. and
  84. smashing
  85. of all data sent through it
  86. (sending lines of 80 or fewer characters of
  87. letters of either case and digits and plus and minus
  88. appears to be safe).
  89. .PP
  90. Netnews arrives via some network,
  91. which causes a command to be executed upon arrival
  92. (e.g.
  93. .I rnews ).
  94. .I rnews
  95. .Ix rnews
  96. typically spools the inbound netnews for later processing.
  97. Eventually
  98. (often within the hour
  99. or at the end of the business day),
  100. the input queue is run
  101. and the netnews is stored locally,
  102. typically under
  103. .I /usr/spool/news ,
  104. .Ix /usr/spool/news
  105. and queued for transmission to netnews neighbours.
  106. Once stored on disk,
  107. netnews may be read by any of a collection of unprivileged news readers,
  108. including
  109. .I cat (1).
  110. .I Expire
  111. .Ix expire
  112. is run typically each night
  113. to remove old netnews from disk.
  114. .PP
  115. C News
  116. .Df "C News"
  117. was originally written to provide a
  118. much faster and smaller,
  119. more robust,
  120. reliable
  121. and
  122. correct
  123. implementation of netnews software than B 2.11 news.
  124. .Ix "B 2.11 News"
  125. (There was once a B 3.0 news under development;
  126. it seems to be still-born.)
  127. .Ix "B 3.0 News"
  128. .SH
  129. News System Overview
  130. .PP
  131. News is stored under some directory,
  132. referred to as
  133. NEWSARTS,
  134. which is typically
  135. .I /usr/spool/news .
  136. .Ix NEWSARTS
  137. .Ix /usr/spool/news
  138. Each newsgroup is stored in its own directory,
  139. whose name is formed by replacing all dots in the newsgroup name
  140. with slashes.
  141. Each article is stored in a file with a numeric name.
  142. There are pseudo-newsgroups
  143. called
  144. .Ix junk
  145. .Ix control
  146. .Ix pseudo-newsgroups
  147. .I junk
  148. and
  149. .I control
  150. which respectively hold
  151. articles that your subscription list in the
  152. .I sys
  153. .Ix sys
  154. .Ix files sys
  155. file permitted but which aren't in your
  156. .I active
  157. .Ix active
  158. .Ix files active
  159. file,
  160. and control messages.
  161. There are also directories called
  162. .I in.coming ,
  163. .I out.going ,
  164. and
  165. .I out.master ;
  166. .Ix in.coming
  167. .Ix out.going
  168. .Ix out.master
  169. they hold incoming news,
  170. outgoing news batch files
  171. and
  172. outgoing master batch files.
  173. .I in.coming
  174. contains temporary files with various names
  175. and spooled input files with numeric names.
  176. .I out.going
  177. contains one directory per outgoing news feed
  178. (more for ihave/sendme sites).
  179. .PP
  180. Indices and related data
  181. are stored in another directory,
  182. referred to as
  183. NEWSCTL,
  184. usually
  185. .I /usr/lib/news .
  186. .Ix /usr/lib/news
  187. .Ix NEWSCTL
  188. Some of the interesting files here include
  189. .I active ,
  190. .I active.times ,
  191. .I explist ,
  192. .I history ,
  193. .I sys
  194. and
  195. .I bin/config .
  196. There are also log files kept here,
  197. notably
  198. .I log
  199. and
  200. .I errlog ,
  201. which need to be aged or trimmed frequently
  202. (our standard
  203. .I cron
  204. entries do this automatically).
  205. .I newsgroups
  206. contains a list of group names and descriptions,
  207. one per line.
  208. .SH
  209. C News Components.
  210. .PP
  211. .I Rnews
  212. .Ix rnews
  213. invokes
  214. the input subsystem,
  215. .Ix "input subsystem"
  216. which
  217. spools incoming netnews in its original form,
  218. as received
  219. (usually from
  220. .I uucp
  221. or
  222. .I NNTP ),
  223. typically in compressed batches.
  224. Periodically,
  225. the input queue should be run
  226. by invoking
  227. .I newsrun ,
  228. .Ix newsrun
  229. thus uncompressing any compressed input
  230. and feeding it to
  231. .I relaynews .
  232. .Ix relaynews
  233. .PP
  234. .I inews
  235. .Ix inews
  236. is a front-end for
  237. .I relaynews
  238. which implements much of the per-site policy on news posting.
  239. Local postings are given to
  240. .I inews .
  241. .PP
  242. .I Relaynews
  243. .Df relaynews
  244. files incoming netnews as articles on disk
  245. and
  246. initiates spooled transmission to other machines,
  247. often by simply writing the names of the disk files
  248. containing the articles on the ends of `batch' files,
  249. which are in turn read by batching programs.
  250. .Ix batch
  251. Quite a bit of policy from RFC 1036 is embedded in
  252. .I relaynews .
  253. Actually,
  254. .I relaynews
  255. writes
  256. `master batch files',
  257. which the batch file exploder,
  258. .I explode ,
  259. turns into normal batch files.
  260. .I explode
  261. should be run periodically from
  262. .I cron
  263. or
  264. .I newsrun .
  265. .PP
  266. The output
  267. .I batcher
  268. .Df batcher
  269. reads lists of file names
  270. and
  271. generates news batches
  272. (see RFC 1036 or
  273. .I news (5)
  274. for the format)
  275. of prescribed sizes
  276. and queues the batches
  277. for transmission to other sites.
  278. The batcher is run asynchronously with
  279. .I relaynews ,
  280. typically once an hour
  281. outside of business hours.
  282. NNTP sites
  283. will also need to run an NNTP transmitter
  284. periodically
  285. (e.g.
  286. .I nntpxmit
  287. or
  288. .I nntplink ).
  289. .PP
  290. .I Expire
  291. .Ix expire
  292. is generally run once per night
  293. to remove from disk news articles older than a few days.
  294. .I Expire
  295. can use different expiry criterion for different newsgroups
  296. and can archive articles instead of removing them.
  297. .I Expire
  298. also runs asynchronously
  299. with
  300. .I relaynews .
  301. .PP
  302. Some people start their news processes from
  303. .I newsxd
  304. rather than
  305. .I cron ;
  306. we don't,
  307. and so can't offer much advice.
  308. .PP
  309. There are many news readers.
  310. .Ix "news readers"
  311. C News
  312. comes with a limited news reader
  313. (\c
  314. .I readnews
  315. .Ix readnews
  316. .Ix "news readers" readnews
  317. by Michael Rourke)
  318. sufficient to replace
  319. long-winded
  320. .I /etc/motd s
  321. but you will want a heavy-duty news reader
  322. if you plan to read more than local news groups.
  323. We recommend
  324. .I rn
  325. .Ix rn
  326. .Ix "news readers" rn
  327. by Larry Wall
  328. or
  329. .I nn
  330. .Ix nn
  331. .Ix "news readers" nn
  332. by Kim Storm,
  333. available from
  334. your netnews neighbours
  335. or
  336. your nearby
  337. .B comp.sources.unix
  338. .Ix comp.sources.unix
  339. archive site.
  340. There are many others:
  341. .I trn
  342. .Ix trn
  343. .Ix "news readers" trn
  344. and
  345. .I vnews
  346. .Ix vnews
  347. .Ix "news readers" vnews
  348. are two.
  349. News can be read from the local disk,
  350. via a network file system such as NFS,
  351. .Ix NFS
  352. or via
  353. NNTP
  354. .Ix NNTP
  355. (soon to be NNRP).
  356. .Ix NNRP
  357. .SH
  358. Preparation for Installation
  359. .PP
  360. Netnews consumes a lot of disk space
  361. and
  362. often a lot of transmission time.
  363. Here are some relevant measurements regarding a full netnews feed
  364. as of the time of writing
  365. .Ix news size
  366. .Ix news statistics
  367. .\" (January 1989),
  368. (February 1992),
  369. taken from
  370. .I news.lists :
  371. a day's netnews is about
  372. .\" 3MB and 1,400 articles in 450 newsgroups.
  373. 30MB and 10,000 articles in 3,000 newsgroups.
  374. Groups cover every imaginable topic,
  375. and there are for-pay hierarchies such as
  376. .B clari ,
  377. which provide the UPI news wire.
  378. Years ago,
  379. sites often kept 14 days of netnews on disk,
  380. but now many sites keep news for 3 to 5 days,
  381. thus allowing for the occasional long weekend.
  382. .Ix expire policy
  383. Thus a full news feed expired after 4 days will consume
  384. .\" about 12MB.
  385. about 120MB.
  386. Some people feel that news volume is doubling roughly every
  387. .\" 16 months.
  388. 12 months.
  389. If this is true,
  390. we can expect volume to increase by a factor of 10 in about
  391. .\" 4 years to 30MB per day or 115MB for 4 days.
  392. 3 years to 300MB per day or 1.2GB for 4 days.
  393. It is thus wise planning to set aside a lot of disk space for netnews.
  394. There are two ways to cope with ever-increasing volumes of netnews:
  395. refuse to accept more newsgroups,
  396. or
  397. expire news after shorter intervals on disk.
  398. A current full feed takes
  399. .\" just over 7 hours to transmit at 1200 baud,
  400. .\" so for dial-up connections
  401. .\" one clearly wants the fastest modems one can afford.
  402. about 8 hours to transmit at 9600 bps
  403. (assuming 1,000 bytes per second actually sent),
  404. so for dial-up connections,
  405. 2400 baud and below is right out.
  406. .Ix "full feed" times
  407. In 4 years,
  408. a 56kbps ISDN channel should be saturdated around the clock by a full feed.
  409. .Ix ISDN doomed
  410. One clearly wants the fastest networks one can afford.
  411. .PP
  412. .Ix news feed
  413. Clearly,
  414. transmitting a full news feed is a non-trivial commitment of resources,
  415. so you may have some difficulty in finding a site willing to supply one.
  416. Such a site may in turn expect you to feed yet other sites.
  417. You will need to agree with your prospective netnews neighbour(s)
  418. upon transfer media,
  419. protocols
  420. and
  421. networks.
  422. You can always pay for a news feed from service providers such as
  423. UUNET and PSI.
  424. .Ix UUNET
  425. .Ix PSI
  426. .PP
  427. Before proceeding to install C News,
  428. you should read this document through
  429. to the end,
  430. probably read the companion document
  431. \fIThe Interface Between C News And The Outside World\fR,
  432. and possibly read selected items in this guide
  433. and the manual pages.
  434. .PP
  435. .Ix userids
  436. You will need to
  437. assign a user id and group id to netnews
  438. (often new ids called ``news'');
  439. initialise these directories:
  440. .Ix directories
  441. NEWSCTL
  442. .Df NEWSCTL
  443. (typically
  444. .B /usr/lib/news ),
  445. .Ix /usr/lib/news
  446. NEWSBIN
  447. .Df NEWSBIN
  448. (\c
  449. .B /usr/lib/newsbin ),
  450. .Ix /usr/lib/newsbin
  451. and
  452. NEWSARTS
  453. .Df NEWSARTS
  454. (\c
  455. .B /usr/spool/news );
  456. .Ix /usr/spool/news
  457. and
  458. install each subsystem
  459. (each subdirectory of
  460. NEWSBIN
  461. contains the programs for a given subsystem).
  462. NEWSCTL and NEWSARTS
  463. are logically one subtree,
  464. defining a news data base,
  465. but are split for backward compatibility with
  466. older news software,
  467. particularly old news readers.
  468. NEWSBIN
  469. contains programs and shell scripts
  470. which might be common amongst machines sharing
  471. a common architecture
  472. (e.g. Sun 3's);
  473. .Fn NEWSCTL /bin
  474. may override these.
  475. The goal is to install the subsystems,
  476. integrate them into a working news system,
  477. and
  478. configure the news system to communicate with other news systems.
  479. .PP
  480. .Ix files key
  481. There are a few key files that must exist before any serious
  482. attempt may be made to operate the news software.
  483. They all live in
  484. NEWSCTL.
  485. .Ix NEWSCTL
  486. .Fn "" active
  487. .Df files active
  488. .Df active
  489. is the list of newsgroups that this site knows
  490. (is willing to accept or individually reject),
  491. and must be owned by the
  492. NEWS
  493. userid
  494. (the userid that owns
  495. .Fn NEWSBIN /relay/relaynews ,
  496. typically
  497. .I news ).
  498. You will probably want to get your initial
  499. .Fn "" active
  500. file from your upstream feed
  501. and edit it to suit the set of groups you wish to receive.
  502. Be sure to make the second field more than five digits wide,
  503. by adding leading zeroes
  504. (ten digits is a conservative width).
  505. .Fn "" sys
  506. .Df files sys
  507. .Df sys
  508. defines the newsgroups that this site is willing to accept
  509. and describes how they are to be forwarded to its neighbours.
  510. .LG
  511. .B Note:
  512. .NL
  513. Your
  514. .B sys
  515. file is required,
  516. as a cost of membership in Usenet,
  517. to be public information.
  518. It will be sent to anyone who requests it via a
  519. .I sendsys
  520. control message.
  521. Don't put secrets in your
  522. .B sys
  523. file.
  524. .Df files server
  525. .Df server
  526. .Fn "" server
  527. contains the hostname of your file server,
  528. if you have multiple machines sharing news
  529. via a network file system.
  530. .Fn "" whoami
  531. .Df files whoami
  532. .Df whoami
  533. similarly contains the name by which a cluster of machines
  534. sharing news is to be known for purposes of news.
  535. .Fn "" mailname
  536. .Df files mailname
  537. .Df mailname
  538. is optional and contains the full
  539. (possibly dotted)
  540. name by which your cluster is known for purposes
  541. of mail.
  542. .Fn "" organisation
  543. .Df files organisation
  544. .Df organisation
  545. .Df files organization
  546. .Df organization
  547. (or
  548. .Fn "" organization
  549. if you insist)
  550. contains the name of your organisation,
  551. which will be copied into the
  552. .B Organization:
  553. .Ix Organization:
  554. header of articles posted locally,
  555. by default.
  556. .Fn "" mailpaths
  557. .Df files mailpaths
  558. defines mail routes to machines which contain aliases
  559. for postings to moderated newsgroups.
  560. .Fn "" log ,
  561. .Df files log
  562. .Df log
  563. .Fn "" errlog ,
  564. .Df files errlog
  565. .Df errlog
  566. .Fn "" history ,
  567. .Df files history
  568. .Df history
  569. .Fn "" history.dir ,
  570. .Df files history.dir
  571. .Df history.dir
  572. and
  573. .Fn "" history.pag
  574. .Df files history.pag
  575. .Df history.pag
  576. must exist and be owned by the
  577. NEWS
  578. userid.
  579. .Fn "" explist
  580. describes local expiration policy;
  581. N.B.:
  582. the order of lines is significant
  583. and
  584. articles with
  585. .B Expires:
  586. headers can interfere:
  587. read
  588. .I expire (8)
  589. for the full story.
  590. Brian Reid's
  591. .I arbitron
  592. script can be run to get
  593. some idea of what groups your users actually read.
  594. .I expire
  595. can be made to archive articles before removing them.
  596. Tentative versions of all these files are built by the installation
  597. procedures,
  598. but it is quite likely that you'll have to edit some of them.
  599. .SH
  600. C News Installation
  601. .PP
  602. .Ix installation
  603. Proceed to the
  604. .Fn \& conf
  605. directory of the distribution.
  606. There is a major shell file here,
  607. named
  608. .Fn \& build ,
  609. .Ix build
  610. that will interrogate
  611. you at length and construct shell files to do the real work.
  612. You may need to do
  613. ``chmod\ +x\ build'' before running it,
  614. to make it executable.
  615. .PP
  616. You will probably need your system's manuals on hand to answer
  617. .Fn \& build 's
  618. questions.
  619. Another terminal (or another window, on a bitmap display)
  620. would also be useful.
  621. You'd best be prepared to take notes,
  622. also, as
  623. .Fn \& build
  624. will occasionally suggest that something be checked when you're done.
  625. .PP
  626. .Fn \& Build
  627. itself does not alter any files or perform any installation
  628. chores:
  629. all it does is create shell files in the
  630. .Fn \& conf
  631. directory.
  632. If you already know something about news software,
  633. or are merely
  634. suspicious that
  635. .Fn \& build
  636. hasn't done everything right,
  637. you should
  638. probably read the shell files before running them.
  639. There are four of them:
  640. .Fn \& doit.root ,
  641. .Ix doit.root
  642. .Fn \& doit.bin ,
  643. .Ix doit.bin
  644. .Fn \& doit.news ,
  645. .Ix doit.news
  646. and
  647. .Fn \& again.root .
  648. .Ix again.root
  649. .PP
  650. .Fn \& Doit.root
  651. sets up the major directories for news, and sets their
  652. ownerships correctly.
  653. It typically will have to be run as \fIroot\fR to have adequate permissions
  654. for all of this.
  655. It is brief.
  656. .PP
  657. .Fn \& Doit.bin
  658. does most of the work of building and installing the programs.
  659. It should be run as the user who owns the distribution directories and will
  660. own the executable programs under NEWSBIN.
  661. .B "doit.bin -i"
  662. suppresses installation.
  663. .Fn \& doit.bin
  664. adds creates prototype additions to
  665. .I crontab
  666. .Ix crontab
  667. .Ix files crontab
  668. and
  669. .I /etc/rc
  670. .Ix /etc/rc
  671. which run
  672. .I newsrun ,
  673. .I sendbatches ,
  674. .I doexpire ,
  675. .I newsdaily
  676. and
  677. .I newswatch
  678. periodically,
  679. and
  680. clear out the news system at boot time,
  681. respectively.
  682. .PP
  683. .Fn \& Doit.news
  684. does some other small chores and installs control files.
  685. If any of the control files already exist, it will complain and refuse
  686. to overwrite them, as a safety precaution.
  687. It should be run as the owner of the news files.
  688. Since many of the files it is installing are built by
  689. .Fn \& doit.bin ,
  690. that should be run first.
  691. .PP
  692. Finally,
  693. .Fn \& again.root
  694. tends to ownership and permission changes on
  695. a few programs that need to run set-userid.
  696. It requires the ability to change ownerships and to set permissions on
  697. the files afterwards, which usually means running it as \fIroot\fR.
  698. It too is brief.
  699. .PP
  700. There are undoubtedly strange systems out there that
  701. .Fn \& build
  702. and friends are not smart enough to cope with.
  703. In such cases it will be necessary to edit the shell files before running
  704. them, or to use them as guides and do the work by hand.
  705. In particular, systems that require strange options in
  706. .Fn \& Makefile s
  707. .Ix makefile
  708. will need to have those inserted by hand.
  709. .PP
  710. .Ix "regression testing"
  711. If you want to test pieces of C News without installing them, some
  712. (not all) of the subsystems have a ``make\ r'' feature that runs a
  713. regression test.
  714. Note:  almost all of these require that
  715. .Fn NEWSCTL /bin/config ,
  716. .Ix files config
  717. .Ix config
  718. or its local equivalent, be in place already so that shell files
  719. can find out what PATH (etc.)
  720. they should be using.
  721. .PP
  722. .Ix system test
  723. .Ix "test system"
  724. Note that it is easy to build a test news system which is completely
  725. independent of other existing news systems on the same machine,
  726. or
  727. to build one which shares its
  728. .Fn NEWSBIN ""
  729. with another C news system,
  730. or shares input of articles
  731. (e.g. running an old B news system
  732. and a new C news system off the same stream of input
  733. until you are confident that your new C news system is operating
  734. to your satisfaction).
  735. See
  736. .I subst (1)
  737. .Ix subst
  738. for the mechanism which permits quickly changing
  739. all the places that know the location of
  740. .Fn NEWSCTL /bin/config.
  741. After that,
  742. edit this news system's
  743. .Fn NEWSCTL /bin/config
  744. and things should be set up for separate existence.
  745. .SH
  746. Local policy
  747. .PP
  748. You may want to edit the
  749. .Ix newgroup
  750. .Ix rmgroup
  751. .I newgroup
  752. and
  753. .I rmgroup
  754. scripts to change group creation and deletion policy.
  755. By default,
  756. all
  757. .I newgroup
  758. control messages are honoured,
  759. but
  760. .I rmgroup
  761. messages merely cause mail to be sent to
  762. NEWSMASTER.
  763. Some sites prefer to not honour
  764. .I newgroup
  765. messages automatically,
  766. which can cause articles to be filed
  767. in the
  768. .I junk
  769. pseudo-group until the group is created by hand.
  770. Very few sites honour
  771. .I rmgroup
  772. messages automatically,
  773. since one is then at the mercy of pranksters.
  774. Groups can be created and deleted manually with the
  775. .I addgroup
  776. and
  777. .I delgroup
  778. .Ix addgroup
  779. .Ix delgroup
  780. commands.
  781. .SH
  782. First News
  783. .Ix "initial news"
  784. .PP
  785. When you arrange to get a news feed from your neighbor,
  786. you should also
  787. ask him to send you the current set of articles in the newsgroup
  788. \fBnews.announce.newusers\fR.
  789. .Ix news.announce.newusers
  790. Several of these are very important reading for people who are new to the net.
  791. .SH
  792. Unusual Systems
  793. .PP
  794. We believe that C News runs fine on 16-bit machines, but it hasn't been
  795. tested very thoroughly on them lately.
  796. It will not perform quite as well with the more limited space.
  797. .Ix "small machines"
  798. .PP
  799. Machines with very old compilers can be a headache.
  800. .Ix "old compilers"
  801. There are some hooks in
  802. .Fn \& h/news.h
  803. for doing without ``void'' and ``unsigned long'',
  804. two particular problem areas, but they have to be arranged manually;
  805. .Fn \& build
  806. does not know about them.
  807. .SH
  808. Problems
  809. .PP
  810. In general,
  811. you should consult
  812. .I "Troubleshooting C News"
  813. if you have problems,
  814. and then
  815. .I "Known Porting Problems With C News"
  816. if that isn't sufficient.
  817. Serious errors in relaying are reported in
  818. .Fn NEWSCTL /errlog
  819. and will be mailed to NEWSMASTER
  820. eventually.
  821. C News
  822. generally communicates with the news administrator
  823. (NEWSMASTER)
  824. by mail.
  825. One common complaint is that there is a space shortage
  826. and incoming news has been discarded;
  827. the usual fix for this is to run
  828. .I doexpire
  829. immediately.
  830. One could modify
  831. .I newsrun
  832. to start a
  833. .I doexpire
  834. when space gets low.
  835. .\" could provide more of this sort of thing
  836. .PP
  837. It may be necessary to cancel a message posted in error by a user
  838. who can't figure out how to cancel it himself.
  839. Posting a message like this:
  840. .DS
  841. .ft B
  842. inews -h <<'!'
  843. Newsgroups: what.ever
  844. Distribution: where.ever
  845. Control: cancel <user's-article's-message-id>
  846. Subject: cancel <user's-article's-message-id>
  847.  
  848. text.
  849. !
  850. .ft
  851. .DE
  852. should do the job.
  853. .PP
  854. You may see complaints in
  855. .Fn NEWSCTL /log
  856. that articles have been rejected for bad headers.
  857. These will usually be from other sites,
  858. as
  859. .I inews
  860. will correct most such errors for your users.
  861. The usual errors are
  862. (a) text immediately following the colon after the header keyword,
  863. with no intervening space,
  864. (b) a new line immediately following the colon,
  865. or
  866. (c) no blank line separating the message header from the message body.
  867. .SH
  868. Routine Maintenance
  869. .PP
  870. You can add an outgoing news feed by adding a line to your
  871. .Fn NEWSCTL /sys
  872. file for the new site
  873. and creating its batch directory
  874. (\c
  875. .Fn NEWSARTS /out.going/ site).
  876. .PP
  877. As news volume grows,
  878. you may need to ask your upstream feed to cut back on the groups it
  879. sends you,
  880. both to conserve network bandwidth
  881. and disk space.
  882. You will likely also need to either
  883. cut back the length of time you keep news on disk before
  884. expiry,
  885. or get in the habit of buying new disks periodically.
  886. .PP
  887. See the article
  888. .I "How to set up the mailpaths file"
  889. by Gene Spafford
  890. in
  891. .I news.lists
  892. for advice on same.
  893. .PP
  894. You can turn off news processing by running
  895. .Fn NEWSBIN "/input/newsrunning off"
  896. and restore it by running
  897. .Fn NEWSBIN "/input/newsrunning on".
  898. Neither takes effect instantly;
  899. you have to wait for news processing to stop
  900. and
  901. wait for
  902. .I newsrun
  903. to be run for it to resume.
  904. You might want to turn off news processing
  905. before locking the news system to perform
  906. lengthy work on it;
  907. turning off processing both reduces the time until
  908. you get the lock,
  909. and
  910. reduces disk load due to lock contention while you have the lock.
  911. .PP
  912. You will get mail due to a
  913. .I checkgroups
  914. control message periodically,
  915. with a subject of
  916. .I "Problems with your active file" .
  917. .PP
  918. You will probably want to read the
  919. .I news.admin ,
  920. .I news.software.b ,
  921. .I news.lists
  922. and possibly
  923. .I news.groups
  924. newsgroups to keep current.
  925. .PP
  926. Gatewaying mail to news and vice versa is not yet
  927. a solved problem.
  928. The most severe problem here is loop prevention.
  929. If you reject articles that lack valid RFC 1036
  930. .Ix "RFC 1036"
  931. message-ids,
  932. just running RFC 822 mail messages
  933. .Ix "RFC 822"
  934. into
  935. .I "inews -h"
  936. should suffice to gateway into news.
  937. Gatewaying news back to mail should just require a
  938. .Fn NEWSCTL /sys
  939. file entry like
  940. .DS
  941. .ft B
  942. mail:sci.space/all::mail victims
  943. .ft
  944. .DE
  945. .bp
  946. .SH
  947. Sample build run
  948. .\" can't use .DS L here cuz it starts a new page in this case.  grr...
  949. .LP
  950. .nf
  951. .ft B\" should really be CW or C, but not everyone has it
  952. .so build.script
  953. .ft
  954. .fi
  955. .LP
  956.