home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / answers / inn-faq / part1 < prev    next >
Internet Message Format  |  1993-12-19  |  30KB

  1. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!usc!cs.utexas.edu!uunet!news.mentorg.com!sdl!not-for-mail
  2. From: tal@Warren.MENTORG.COM (Tom Limoncelli)
  3. Newsgroups: news.software.nntp,news.software.b,news.answers
  4. Subject: INN FAQ Part 1/3: General Information, how to compile, how to operate
  5. Supersedes: <inn-faq-1-755067605@Warren.MENTORG.COM>
  6. Followup-To: news.software.nntp
  7. Date: 20 Dec 1993 05:00:07 -0000
  8. Organization: Mentor Graphics - IC Group, Warren, NJ, USA
  9. Lines: 789
  10. Sender: tal@Warren.MENTORG.COM
  11. Approved: news-answers-request@MIT.Edu
  12. Distribution: world
  13. Expires: 01/04/94
  14. Message-ID: <inn-faq-1-756363605@Warren.MENTORG.COM>
  15. Reply-To: Tom_Limoncelli@Warren.MENTORG.COM (Tom Limoncelli)
  16. NNTP-Posting-Host: sdl.warren.mentorg.com
  17. X-Summary-1: Part 1: Common questions about INN itself, and some advice when compiling it and installing it.
  18. X-Summary-2: Part 2: This assumes that you've successfully compiled the software.  This is a tutorial that takes you through configuration and setting up feeds.  It ends with common questions about INN configuration.
  19. X-Summary-3: Part 3: Norman's quick guide to getting started (assumes SunOS and other things), and misc. other things.)
  20. Xref: senator-bedfellow.mit.edu news.software.nntp:6747 news.software.b:15641 news.answers:15995
  21.  
  22. Posted-By: auto-faq 2.4
  23. Archive-name: inn-faq/part1
  24.  
  25. Last Changed: $Id: FAQ-inn.1,v 1.48 1993/11/30 19:28:52 tal Exp $
  26.  
  27.                           Table Of Contents:
  28.                           ------------------
  29.  
  30. QUESTIONS FROM PEOPLE THAT DON'T (YET) RUN INN:
  31.     Where can I get it?
  32.     What is INN?
  33.     What machines does it run on?
  34.     Can I run C News with INN?
  35.     Can I run NNTP with INN?
  36.     Can I run the reference implementation (NNTP1.5) with INN?
  37.     Can I run INN on my UUCP-only machine?
  38.     Suppose I have a 286 machine?
  39.     Does INN implement trn's XTHREADS, etc?
  40.     Does INN do UUCP batching like C News?
  41. COMMON DEBUGGING/SETUP QUESTIONS:
  42.     Help!?  How do I configure this beast
  43.     Why does innd just exit right away with no message?
  44.     I'm getting news but postings aren't going out.
  45.     How come my host name comes out twice in the Path line?
  46.     Why does my innd often die with the message "Can't sync history,
  47.     7-bit encoded batches are not correctly processed. Why is this?
  48. SPECIFIC OPERATING SYSTEM BUILD ADVICE:
  49.     SunOS 4.1.2
  50.     Ultrix tip 1 (mmap)
  51.     Ultrix tip 2 (syslog)
  52.     HP-UX
  53.     Pyramid and system's where only root can have "cron" jobs.
  54.     SVR4, Solaris 2.x, and SCO ODT 3.0
  55. OPERATIONAL QUESTIONS:
  56.     Safe way to edit the "active" file?
  57.     Expire had problems last night, and while I fixed the problem
  58.         it still won't run.
  59.     Why am I getting alt.sex.pictures even though I
  60.         have "ME:!alt.sex.pictures" in my newsfeeds file?
  61.     Why doesn't this newsfeeds entry do what I want?
  62.     Why am I forwarded cancel messages for articles in comp.foo
  63.         when I explicitly have !comp.foo in the newsfeeds entry?
  64.     What's the best way to upgrade to a new version of INN?
  65. ADVANCED QUESTIONS:
  66.     What do I do if /var/spool/news is set up over many partitions?
  67.     How do I talk to innd from C or Perl?
  68.     How do I set up a delayed IHAVE/SENDME over NNTP?
  69.  
  70.  
  71. (The FAQ was written by Rich $alz <rsalz@rodan.uu.net> and is now
  72. maintained by Tom Limoncelli <tal@warren.mentorg.com>.)
  73.  
  74.  
  75. ======================================================================
  76.  
  77. ADVANCED QUESTIONS:
  78.             QUESTIONS FROM PEOPLE THAT DON'T (YET) RUN INN
  79.  
  80. ======================================================================
  81.  
  82.  
  83. ------------------------------
  84.  
  85. Subject:  Where can I get it?
  86.  
  87. THE SOFTWARE:
  88.  
  89. The official archive site is ftp.uu.net in the directory
  90. networking/news/nntp/inn.  Archie current lists over 30 archive sites;
  91. three other international sites are grasp.insa-lyon.fr in
  92. pub/unix/news/inn, munnari.oz.au in pub/news/inn, and src.doc.ic.ac.uk
  93. in computing/usenet/software/transport
  94.  
  95. THE FAQ:
  96.  
  97. 1.  This three-part FAQ is available via FTP at any FTP site that carries
  98. INN itself.
  99.  
  100. 2.  This FAQ is also posted to news.software.nntp, news.software.b and
  101.     news.answers on the 5th and 20th of every month.
  102.  
  103. 3.  You can also get this FAQ by sending email to
  104. majordomo@warren.mentorg.com with "get file faq-inn-1" on the first
  105. line of the message.  (the Subject: of the message will be ignored.)
  106. (Substitute faq-inn-2 or faq-inn-3 to get those parts).
  107.  
  108. For example:
  109.  
  110. % echo get file faq-inn-1 | mail majordomo@warren.mentorg.com
  111. % echo get file faq-inn-2 | mail majordomo@warren.mentorg.com
  112. % echo get file faq-inn-3 | mail majordomo@warren.mentorg.com
  113.  
  114. or
  115.  
  116. % mail majordomo@warren.mentorg.com
  117. Subject: ignored
  118. get file faq-inn-1
  119. get file faq-inn-2
  120. get file faq-inn-3
  121. ^D
  122.  
  123.  
  124. ------------------------------
  125.  
  126. Subject:  What is INN?
  127.  
  128. InterNetNews is a complete Usenet system.  The cornerstone of the package
  129. is innd, an NNTP server that multiplexes all I/O.  Think of it as an nntpd
  130. merged with the B News inews, or as a C News relaynews that reads multiple
  131. NNTP streams.  Newsreading is handled by a separate server, nnrpd, that is
  132. spawned for each client.  Both innd and nnrpd have some slight variances
  133. from the NNTP protocol (although in normal use you will never notice); see
  134. the manpages.  INN separates hosts that feed you news from those that have
  135. users reading news.  If you need to support a mixed environment you will have
  136. to do some extra work; the installation manual gives some hints.
  137.  
  138.  
  139. ------------------------------
  140.  
  141. Subject:  What machines does it run on?
  142.  
  143. If you have socket() and select() then INN will probably run on your
  144. machine.  In addition to the common platforms found around the Internet
  145. (Sun and Ultrix, for example), INN runs on AIX, A/UX, NeXT, and a host of
  146. others.
  147.  
  148.  
  149. ------------------------------
  150.  
  151. Subject:  Can I run C News with INN?
  152.  
  153. No.  INN handles all article reception, filing, forwarding, and
  154. expiration.  You will most likely get a corrupted database if you try to
  155. run INN with any other news system.  For testing, you can probably shut
  156. down your old system, bring up INN, and then reverse the process.  (INN
  157. uses the C News history file and DBZ database, so if you don't run C News
  158. you will have to do some fiddling around with those files.)
  159.  
  160.  
  161. ------------------------------
  162.  
  163. Subject:  Can I run NNTP with INN?
  164.  
  165. There's a confusion here.  NNTP is a protocol, defined in RFC 977.  There
  166. is also an implementation of the protocol, NNTP1.5, that many people call
  167. NNTP.  When there was only one implementation of the protocol, that was
  168. okay, but now that there are other implementations (for example, INN) it
  169. is getting confusing.  It would be as if "sendmail" were named "smtp."
  170. Please try to be clear -- do you mean the NNTP protocol, or the NNTP
  171. reference implementation currently maintained by Stan Barber?
  172.  
  173.  
  174. ------------------------------
  175.  
  176. Subject:  Can I run the reference implementation (NNTP1.5) with INN?
  177.  
  178. The quick answer is no.  INN listens on the NNTP port and handles all
  179. incoming traffic.  It receives articles, files them, and arranges for them
  180. to be forwarded to your peers.  If a site connects that is not listed as a
  181. peer (e.g., a local workstation that does newsreading) then the INN server
  182. hands the connection off to another program.  By default, this is nnrpd,
  183. which implements the NNTP protocol for newsreaders (for example, it
  184. includes the POST command but not the IHAVE command).  You can run the
  185. reference implementation server instead of nnrpd if you want.  Doing this
  186. can be useful if you have clients that want to do both reading and article
  187. transfer.
  188.  
  189.  
  190. ------------------------------
  191.  
  192. Subject:  Can I run INN on my UUCP-only machine?
  193.  
  194. Sure.  While not designed for this, several people are running INN on
  195. machines that do not have IP-connectivity (such as UUCP-only hosts) and
  196. are quite happy with it.  You might want to give it a try, especially if
  197. you think you will be joining the Internet some day.
  198.  
  199.  
  200. ------------------------------
  201.  
  202. Subject:  Suppose I have a 286 machine?
  203.  
  204. Won't work.  INN is designed to be a memory hog; a server that has been up
  205. for a few days while will have a working set size of a few to several
  206. megabytes, although not all of it will be resident.  For example, the
  207. server keeps the active file and list of who gets what in memory, as well
  208. as all articles that it is receiving.  Unless you can do things like
  209. "malloc(64 * 1024)" without pain, INN won't work on your machine.
  210.  
  211.  
  212. ------------------------------
  213.  
  214. Subject:  Does INN implement trn's XTHREADS, tin's commands, etc?
  215.  
  216. The XTHREAD command has code but it is not supported; look at
  217. $inn/nnrpd/nnrpd.h.  This code will probably vanish after 1.4.  Tin
  218. commands are not supported.  Instead, INN supports Geoff Collyer's news
  219. overview database, nov (world.std.com, src/news/nov.dist.tar.Z).  It
  220. does not include the client package; it just updates and maintains the
  221. overview databases.  For info on how to configure INN to use NOV, read
  222. Part 3/3 of this FAQ.  (Subject: Cookbook example setting up NOV
  223. ("overchan").)
  224.  
  225.  
  226. ------------------------------
  227.  
  228. Subject:  Does INN do UUCP batching like C News?
  229.  
  230. Not as part of the standard distribution.  The batching system right
  231. now is better than B News, but Rich has said he will be working on
  232. improving that part of INN in a future release.  Christophe Wolfhugel
  233. <Christophe.Wolfhugel@grasp.insa-lyon.fr> has written a package that is
  234. very much like the C News batching system, however.  You can find it on
  235. grasp.insa-lyon.fr in the pub/unix/news/inn/contrib directory.
  236.  
  237. Version 3 of Christophe's package includes a shell version and a Perl
  238. version.  Version 4, not yet planned will only be in Perl. The
  239. configuration file has evolved from older releases in order to support
  240. new features like minimum batching".
  241.  
  242.  
  243. ======================================================================
  244.  
  245.                    COMMON DEBUGGING/SETUP QUESTIONS
  246.  
  247. ======================================================================
  248.  
  249.  
  250. ------------------------------
  251.  
  252. Subject:  Help!?  How do I configure this beast
  253.  
  254. Two people have written tutorials on installing INN.  The first one has
  255. become Part 2 of this FAQ and concentrates on building INN (compiling
  256. and gathering the needed external software).  The other tutorial has
  257. become Part 3 of this FAQ and concentrates on configuration and
  258. debugging said configuration (it used to be called inn-tutorial before
  259. it became part of the FAQ).
  260.  
  261.  
  262. ------------------------------
  263.  
  264. Subject:  Why does innd just exit right away with no message?
  265.  
  266. First, fix your syslog: innd always logs a message before it exits.  (The
  267. INN distribution includes a version of the current UCB syslog, along with
  268. instructions on how to install it.  Ultrix systems might want to look at
  269. the syslog that is available on gatekeeper.dec.com) Second, the most
  270. common cause of this is that you do not have a history file (or no history
  271. database).  You will see a message like this:
  272.     ME cant dbminit /usr/local/news/history No such file or directory
  273. This means that you do not have a history database.  You might want to run
  274. the BUILD script in your INN source tree or read about makehistory in
  275. doc/news-recovery.8; if you do the latter, make sure to rename the
  276. database files.  This FAQ covers general questions about INN and questions
  277. about how to compile it.  For information on configuration and debugging
  278. one's configuration, see the "INN Configuration FAQ".
  279.  
  280.  
  281. ------------------------------
  282.  
  283. Subject:  I'm getting news but postings aren't going out.
  284.  
  285. You might find it helpful to read "Appendix IV:  First-time Usenet or NNTP
  286. Installation" in the Install manual.  In order for postings to go out, you
  287. must have a newsfeeds entry that names a site to receive them.  In the
  288. standard case you want to record the article filename and Message-ID in a
  289. batchfile for the site:
  290.     myfeed/myfeed.dom.main:*,!foo.*\
  291.     Tf,Wnm:
  292. You now want to run send-nntp or nntpsend from cron so that the file is
  293. flushed and that innxmit is called to read the file and send the articles
  294. out.  See the manual pages.
  295.  
  296.  
  297. ------------------------------
  298.  
  299. Subject:  How come my host name comes out twice in the Path line?
  300.  
  301. The INN server puts its name in the Path line of every article that it
  302. receives.  Obviously, it has to do this.  The default configuration has
  303. inews put the local host in the Path header.  If nobody posts on the
  304. server and you use fully-qualified domain names on your workstations,
  305. then everything works the right way.  (If `hostname` doesn't give an
  306. FQDN on your machine, you can work-around this by setting the "domain"
  307. value in inn.conf; remember that innd never re-reads inn.conf.  You
  308. must "ctlinnd shutdown x" and then re-start the server).  Many people
  309. don't want the client machines to put their name in the Path header.
  310. To do this, set INEWS_PATH to DONT.  Finally, let me say that it is
  311. probably a mistake to have a "pathhost" line on any machine other than
  312. your server if you set INEWS_PATH to DO.  If you doubt this, please
  313. trace the article flow for yourself.  If you are curious about the
  314. effect of INEWS_PATH, read the nroff source -- not the formatted
  315. output -- of doc/inews.1
  316.  
  317.  
  318. ------------------------------
  319.  
  320. Subject:  Why does my innd often die with the message "Can't sync history,
  321.       interrupted system call"
  322.  
  323. Are you running SunOS?  If so, the answer is that Sun broke the write
  324. system call but a patch is available.  Any write could fail in this way,
  325. it is just more likely to happen when writing large files and in-core DBZ
  326. writes the history file out in one chunk.  See the "Known Problems"
  327. section of the installation manual.  To the best of my knowledge, nobody
  328. has seen this problem on any other system.
  329.  
  330.  
  331. ------------------------------
  332.  
  333. Subject: How do I create all those directories in the newsspool?
  334.  
  335. Q:  For example, if you receive comp.sys.amiga.applications, do you
  336. have to mkdir /var/spool/news/comp/sys/amiga/applications?
  337.  
  338. A:  Nope.  innd creates the directory for you the first time you
  339. receive an article for that newsgroup.
  340.  
  341.  
  342. ------------------------------
  343.  
  344. Subject: 7-bit encoded batches are not correctly processed. Why is this?
  345.  
  346. Chris Schmidt <cs@germany.eu.net> replies:
  347.  
  348. The decode program that comes with INN up to version 1.3 is broken.
  349. Because of that the last article in a 7bit encoded batch will not
  350. correctly be decoded (the last characters are screwed up).  This is
  351. fixed in INN 1.4.
  352.  
  353.  
  354. ======================================================================
  355.  
  356.                 SPECIFIC OPERATING SYSTEM BUILD ADVICE
  357.  
  358. ======================================================================
  359.  
  360.  
  361. ------------------------------
  362.  
  363. Subject: SunOS 4.1.2
  364.  
  365. SunOS 4.1.2 (but not 4.1.1 or 4.1.3) broke the write system call but a
  366. patch is available.  Any write could fail "half way", it is just more
  367. likely to happen when writing large files and in-core DBZ writes the
  368. history file out in one chunk.  See the "Known Problems" section of the
  369. installation manual.
  370.  
  371.  
  372. ------------------------------
  373.  
  374. Subject: Ultrix tip 1 (mmap)
  375.  
  376. Ultrix has a "mmap()" function, but it doesn't do the same thing as the
  377. SunOS/BSD mmap() function.  Therefore, do not configure INN to use
  378. mmap() on a Ultrix system.  INN wants to find a mmap() function
  379. that is like the one on SunOS/BSD systems.
  380.  
  381.  
  382. ------------------------------
  383.  
  384. Subject: Ultrix tip 2 (syslog)
  385.  
  386. The syslog on Ultrix sucks rotten eggs and Digital refuses to fix it.
  387. (source: everyone that uses Ultrix and has ever used other systems)
  388.  
  389. Luckily, you can replace it with the routine that comes with INN.
  390. However, some people have had better luck installing the syslog that
  391. can be had on gatekeeper.dec.com:/pub/DEC/jtkohl-syslog-complete.tar.Z
  392. It still works with old clients but does new-style syslogging, too.
  393. Works great for me so far.  (this information from:  nelson@reed.edu
  394. (Nelson Minar)).  The syslog that is shipped with INN works pretty well
  395. but there have been some claims that some old clients don't like it.
  396.  
  397.  
  398. ------------------------------
  399.  
  400. Subject: AIX
  401.  
  402. Q: When I run news.daily, there's always a few lines of error
  403. messages at the end of the output:
  404.  
  405.     compress: bad file number
  406.  
  407. A:  AIX /usr/bin/compress has a bug when compressing files with zero
  408. length. Then it spits out this error.  Solution: Ignore it or use a
  409. different compress programm and change config.data accordingly.
  410. (from Kurt Jaeger <pi@rus.uni-stuttgart.de>)
  411.  
  412.  
  413. ------------------------------
  414.  
  415. Subject: HP-UX
  416.  
  417. Q. I am running inn on an HP machine. Inn won't start up automatically
  418. :-( I can start it manually. There is no problem with news or inn once
  419. it is started.
  420.  
  421. A.  Try adding a "sleep 10" to the bottom of /etc/rc.news, or in
  422. /etc/rc, right after /etc/rc.news is invoked.  On some machines,
  423. including HP, the shell started by "#!/bin/sh" when /etc/rc is executed
  424. will exit before innd has disassociated itself from that shell.  This
  425. causes innd to exit, sometimes without printing an error message.
  426. (source: pjoslin@mbvlab.wpafb.af.mil (Paul Joslin ))
  427.  
  428. This problem goes away if you set HAVE_SETSID to "DO".  Something to do
  429. with Posix Session Leader concepts. Ick. (source:
  430. scotty@piranha.cs.uoguelph.ca (Steve Howie))
  431.  
  432. HP-UX 8.07 users might find a problem with getting innwatch to
  433. start up.  People have found that having "at" start it seems
  434. to work more reliably than other methods:
  435.  
  436. ${DOINNWATCH} && {
  437.     echo "su ${NEWSUSER} -c ${INNWATCH}" | /usr/bin/at now +2 minutes
  438. #    echo "( ( sleep 60 ; ${INNWATCH} ) & )" | su ${NEWSUSER}
  439. }
  440.  
  441.  
  442. ------------------------------
  443.  
  444. Subject: Pyramid and system's where only root can have "cron" jobs.
  445.  
  446. Your cron jobs may not work if you use:
  447.  
  448.     su news -c /usr/lib/news/bin/news.daily delayrm expireover
  449.  
  450. Instead, you must put the entire command in quotes.  Like this:
  451.  
  452.     su news -c "/usr/lib/news/bin/news.daily delayrm expireover"
  453.  
  454. Look for "Pyramid" in part 3 of this FAQ for details.
  455.  
  456.  
  457. ------------------------------
  458.  
  459. Subject: System V based Unixes (SVR4, Solaris 2.x, SCO ODT 3.0, A/UX, ...)
  460.  
  461. If you are running any non-BSD (i.e. System V based) Unix you MUST have
  462. the following option set:
  463.  
  464. ##  How should close-on-exec be done?  Pick IOCTL or FCNTL.
  465. #### =()<CLX_STYLE              @<CLX_STYLE>@>()=
  466. CLX_STYLE               FCNTL
  467.  
  468. This includes SVR4, Solaris 2.x, A/UX and SCO ODT 3.0.  This is clearly
  469. stated in the Install.ms file and repeated here since so many people
  470. post to news.software.nntp after messing it up.
  471.  
  472. If it isn't FCNTL, you'll get tons of overchan processes hanging
  473. around.  (source: Philip Gladstone <philip@charon.cto.citicorp.com>)
  474.  
  475. In SCO ODT 3.0 and MOST systems, innd will link and run if you use
  476. IOCTL but eventually will stop answering incoming calls.
  477.  
  478. Don't be fooled.  Just because it compiles doesn't mean it's going to
  479. work.
  480.  
  481. Under Solaris 2.x (SunOS 5.x) you must add the following at the
  482. beginning of each file using gethostbyname():
  483.  
  484. #define gethostbyname __switch_gethostbyname
  485.  
  486.  
  487. ------------------------------
  488.  
  489. Subject: Mac running A/UX 3.0
  490.  
  491. Use the INN malloc.
  492.  
  493.  
  494. ======================================================================
  495.  
  496.                         OPERATIONAL QUESTIONS
  497.  
  498. ======================================================================
  499.  
  500.  
  501. ------------------------------
  502.  
  503. Subject:  Safe way to edit the "active" file?
  504.  
  505. The following sequence is the shortest:
  506.  
  507. ctlinnd pause "edit active"
  508. [do something to the active file]
  509. ctlinnd reload active "edit active"
  510. ctlinnd go "edit active"
  511.  
  512. Simple!  No need to "flush" after step one.
  513.  
  514.  
  515. ------------------------------
  516.  
  517. Subject:  Expire had problems last night, and while I fixed the problem,
  518.       it still won't run.
  519.  
  520. When expire starts up it "reserves" the server so that nobody else can
  521. pause or throttle it.  This prevents anyone else from coming in and
  522. modifying the history database.  If expire bails out because of a bad
  523. error (e.g., your expire.ctl has syntax errors) it leaves the server
  524. reserved so that no maintenance will be done until a good expire run has
  525. occurred.  To unblock the server, use the ctlinnd "reserve" command with
  526. an empty string argument.
  527.  
  528.  
  529. ------------------------------
  530.  
  531. Subject:  Why am I getting alt.sex.pictures even though I have
  532.       "ME:!alt.sex.pictures" in my newsfeeds file?
  533.  
  534. The active file is the definitive list of what newsgroups you receive.
  535. INN's ME entry is different from C News and B News; please see
  536. newsfeeds.5.  If you do not want to receive alt.sex.pictures, ask the
  537. system(s) that send you news not to send it to you.  (You would have to do
  538. that no matter what news system you are running.)
  539.  
  540.  
  541. ------------------------------
  542.  
  543. Subject:  Why doesn't this newsfeeds entry do what I want?
  544.       "foo.com:alt,!alt.sex"
  545.  
  546. A newsfeeds entry is not a sys file (C News) entry.  Please read
  547. newsfeeds.5.  You might also find the sys2nf program in the frontends
  548. directory useful, as well as the inncheck Perl script that is found in
  549. the samples directory.  The INN Configuration FAQ has cook-book
  550. examples of the steps required to install a NNTP feed, UUCP feed, and
  551. NNTP via nntplink feed.
  552.  
  553.  
  554. ------------------------------
  555.  
  556. Subject:  Why am I forwarding cancel messages for articles in comp.foo
  557.       when I explicitly have !comp.foo in the newsfeeds entry?
  558.  
  559. Control messages can be explicitly forwarded, so a control message to
  560. comp.foo is forwarded to sites that recieve either comp.foo or control.
  561. Please see the "Control Messages" section of innd.8.  As that
  562. documentation says, you probably want to put "!control" in the
  563. subscription list for most of your newsfeeds.
  564.  
  565.  
  566. ------------------------------
  567.  
  568. Subject:  What's the best way to upgrade to a new version of INN?
  569.  
  570. First, you should read the README and the Install.ms (yes, read
  571. them both... again).  The README includes a technique to update
  572. a new config.data file to be like your old one:
  573.  
  574.       % cd config
  575.       % make subst
  576.       % cp config.dist config.data
  577.       % ./subst -f {OLDFILE} config.data
  578. where "{OLDFILE}" names your old config.data file.
  579.  
  580. Now edit the config.data to see if you want to change any of
  581. the new settings that didn't exist in the old version's config.data
  582. file.
  583.  
  584. Compile everything:
  585.  
  586.     % cd $INN
  587.     % make world
  588.  
  589. When you feel you are ready to install the new files shut the old daemon:
  590.  
  591.     % ctlinnd shutdown 'upgrade in progress'
  592.     [ kill innwatch by hand if you need to ]
  593.  
  594. Install the new files:
  595.  
  596.     % cd $INN
  597.     % make update
  598.  
  599. Now update all your $INN/site files to be the same as they were for
  600. your old software.  "cd $INN/site ; make diff-installed" will tell
  601. you what's different between the files in /usr/lib/news and $INN/site.
  602. If you only make changes in the $INN/site directory and use "make install"
  603. to copy them into place you'll save your self a lot of trouble.
  604. Read $INN/site/Makefile for more interesting things that "make" can
  605. do.
  606.  
  607. When you feel you are ready to install the new $INN/site files:
  608.  
  609.     % cd $INN/site
  610.     % make install
  611.  
  612. Re-start the system:
  613.  
  614.     % sh /usr/lib/news/etc/rc.news
  615.  
  616. If everything was done right you should be up and running.  Part 2 of
  617. the FAQ gives tips on testing your configuration.
  618.  
  619.  
  620. ------------------------------
  621.  
  622. Subject:  Can I use gzip with INN?
  623.  
  624. (this was written with the help of Michael Brouwer <michael@tar.wft.stack.urc.tue.nl>)
  625.  
  626. There are three things that can be effected by using gzip:  Compression
  627. of old logs, compressing batches to send out, and decompressing batches
  628. that come in.
  629.  
  630. With INN 1.4 all you need to do is change two lines in config.data to
  631. something like this:
  632.  
  633. COMPRESS                /usr/local/bin/gzip
  634. DOTZ                    .gz
  635.  
  636. If you rebuild INN with these options set, all logs will be gzipped, and rnews
  637. will use gzip to decompress news.
  638.  
  639. gzip will automaticly and transparently decompress UNIX Compress, SCO
  640. UNIX Compress (I'm told it's 99% compatible with UNIX Compress), Pack,
  641. and gzip.  Therefore, you can now receive batches compressed with any
  642. of the above listed formats.  Let's refer to this as "your site is now
  643. a universal decompresser".
  644.  
  645. It has been reported that if you hardlink gzip to be zcat, and make
  646. sure that it is the zcat that INN uses, you can get the "universal
  647. decompresser" without having to use gzip for your logs.  (Though, gzip
  648. for your logs is a big win, so why make trouble for yourself?)
  649.  
  650. `send-uucp' will still use compress for outgoing batches, so the sites
  651. you feed won't suddenly start getting data they don't understand.
  652.  
  653. Before you can send gzipped batches, you should make sure that the
  654. sites that you feed have made the above changes so that they have the
  655. "universal decompresser" too.
  656.  
  657. Edit send-uucp to use gzip instead of compress for certain hosts (see
  658. example of using compress -b12 for the host esac in send-uucp),
  659. outgoing batches will be gzipped.
  660.  
  661. If you use sendbatch, you will have to edit the file so that COMPRESS
  662. is set to "gzip" and COMPFLAGS is set to "-9vc".
  663.  
  664.  
  665. ======================================================================
  666.  
  667.                           ADVANCED QUESTIONS
  668.  
  669. ======================================================================
  670.  
  671.  
  672. ------------------------------
  673.  
  674. Subject:  What do I do if /var/spool/news is set up over many partitions?
  675.  
  676. First of all, you can do this by either mounting a filesystem at
  677. /var/spool/news/comp (for example) or by mounting a filesystem anywhere
  678. and making /var/spool/news/comp a symbolic link to the new partition.
  679.  
  680. Articles will be written as normal, but cross-posts have to be handled
  681. specially now.  Usually INN handles crossposts by writing the article
  682. to the first newssgroup, and then creating hard links to all the other
  683. places where the article should appear.  Hard links do not take up
  684. additional disk space (except making your directories longer).  Hard
  685. links also have the advantage that the file data doesn't get deleted
  686. until the last hard link is gone (and they can be deleted in any
  687. order).  Therefore, you can expire each newsgroup at a different rate,
  688. but the file data won't delete until it is expired from the last
  689. newsgroup.
  690.  
  691. The problem is that two hard linked files must both be on the same
  692. filesystem (partition).
  693.  
  694. When INN sees that it can not make a hard link (because an article is
  695. cross-posted across two partitions) it will try to make a symbolic
  696. link.  If your system can not do symbolic links, set HAVE_SYMLINKS to
  697. DONT in your config.data file.  This will make INN write a second
  698. (or third, etc.) copy of the file instead.  (NOTE: INN 1.4 doesn't
  699. make the extra files.  This feature is planned for INN 1.5.)
  700.  
  701. Anyway, even though INN will automatically create symbolic links, you
  702. have to give expire the "-l" flag so that it will know to modify its
  703. behavior.  Suppose that a message is posted to rec.photo and
  704. alt.cameras and suppose that rec.photo expires more quickly then the
  705. alt group.  If this happens, then you will be left with a dangling
  706. symlink.  The -l flag prevents this from happening.
  707.  
  708. To inform expire that your spool is split across multiple partitions:
  709.  
  710. In news.daily, change:
  711.     EXPIREFLAGS="-v1"
  712. to read
  713.     EXPIREFLAGS="-v1 -l"
  714.  
  715. In expirerm, change:
  716.     RMPROC="fastrm -e -u -s ${SPOOL}"
  717. to read
  718.     RMPROC="fastrm -e -s ${SPOOL}"
  719.  
  720. You also have to edit innwatch and innstat.  After that, you're done!
  721.  
  722. If you ever need to run "makehistory" you should pay attention to this
  723. caveat in makehistory(8):
  724.  
  725.     Makehistory does not handle symbolic links.  If the news
  726.     spool area is split across multiple partitions, the follow-
  727.     ing commands should probably be run before the database is
  728.     regenerated:
  729.         cd /usr/spool/news
  730.         find . -type l -print | xargs -t rm
  731.  
  732. However, if /var/spool/news/comp was a symlink to the partition
  733. that comp is really on, you'll have to reinstall that link.  You
  734. have avoid this by changing the above commands to:
  735.         cd /usr/spool/news
  736.         find . -type l -print | grep '[0-9][0-9]*' | xargs -t rm
  737.  
  738. ------------------------------
  739.  
  740. Subject:  How do I talk to innd from C or Perl?
  741.  
  742. Rich Salz says:
  743.  
  744. If you are writing C, look at doc/inndcomm.3 and include/inndcomm.h;
  745. they include all you need to do any ctlinnd command (in fact, ctlinnd
  746. itself is little more than a call to the library).
  747.  
  748. Hacking up a Perl subroutine that spoke to innd's Unix-domain control
  749. socket should be fairly straightforward but hasn't yet been written.
  750.  
  751.  
  752. ------------------------------
  753.  
  754. Subject:  How do I set up a delayed IHAVE/SENDME over NNTP?
  755.  
  756. Christophe Wolfhugel <Christophe.Wolfhugel@grasp.insa-lyon.fr> writes:
  757.  
  758. INN now allows to generate a timestamp entry in the batchfiles or to
  759. the channels/exploders (Wt in newsfeeds) which can be used to allow (for
  760. example) delayed ihave/sendme processing.  INN's senders (like innxmit)
  761. do not use that data yet.
  762.  
  763. Christophe.Wolfhugel@grasp.insa-lyon.fr has written a small patch for
  764. nntplink 3.1.0 which supports this.  The patch is available via
  765. anonymous FTP at "grasp.insa-lyon.fr:pub/unix/news/nntp/nntplink/delayed-1.0.pch".
  766.  
  767. The patch has been incorporated into nntplink 3.2, available from the
  768. nntplink distribution site, shape.mps.ohio-state.edu:/pub/nntplink/3.2pl1.tar.gz.
  769.  
  770. HOW TO DO IT:
  771.  
  772. The syntax that you would use in your newsfeeds file would be:
  773.  
  774.     site:*:Tf,Wnmt:
  775.  
  776. and run this command now and then:
  777.  
  778.     nntplink -i batchfile -y 300 -b site news.site.fr
  779.  
  780. The delayed IHAVE/SENDME is expected to allow bandwidth savings in
  781. situations where all sites use nntplink in following topology:
  782.  
  783.      Your site -- 64k -----------+-----------  Site 1
  784.                                  |               |
  785.                                  |              2mb
  786.                                  |               |
  787.                                  +------------ Site 2
  788.  
  789.    Site 1 and 2 are in the same metropolitan area, you feed them both.
  790.    With the standard nntplink layout, you generally send all articles
  791.    twice, which is a waste even if you're at 2 Meg/s link and even if
  792.    Site 1 and 2 do nntplinks, you're faster.
  793.  
  794.    The delayed link would be used between your site and Site 2.  A 2 or
  795.    3 minute delay allows Site 1 to feed Site 2 before you, and in case
  796.    of a Site 1 outage the backup starts nearly immediately.
  797.  
  798.    Reasonnable delays are still kept as You -> 1 -> 2 should take less
  799.    than one minute (or just 300 ms disk to disk if using nntplink -i ? :)).
  800.  
  801. Experiences seem to show that a 2 to 3 minutes delay is
  802. a reasonable choice.
  803.  
  804. Chris
  805.  
  806. -- 
  807. Tom Limoncelli -- tal@warren.mentorg.com (work) -- tal@plts.org (play)
  808. "Psst!  Hey, Anthony!  Y'know what I        | Disclaimer:  I do not
  809. like about existing?"  "Uh... uh... what?"  | speak for Mentor Graphics.
  810. "Possessing a physical extension."  -TSA    |
  811.