Installing INN1.4unoff4 binary distribution for Linux

The current version of this document is here

Important notes:

1. This distribution uses Unix domain sockets. It absolutely positively will not work properly under any Linux kernel prior to 1.3. The distribution was built on a system running Linux kernel version 2.0.14. I recommend that you use a 2.0 level kernel with this distribution.

2. This distribution relies on a number of common packages being in the $PATH of the news user. Those are: gawk, sed, egrep, gzip and perl. Be sure those are installed before proceeding.

3. Unlike some of the previous binary distributions of INN for Linux, this distribution does not alter the installation directories specified in the INN distribution. That means it will not install in the same directories as some of the previous binary releases. Most of the binaries, the active file, and the history files will live in /usr/local/news. The partition holding that directory should have several hundred megabytes of free space (ideally). History files become very large. The innd server itself, and a few other pieces, go in /usr/local/etc. The manual pages go in /usr/local/man. The "rnews" utility (for UUCP) goes in /bin. The logfiles go in /var/log/news. The news spool is assumed to be /var/spool/news. Symlinks may be used to reorganize this as desired. If you really need to change many of the paths, you should obtain the source and build it to suit your tastes. Otherwise things will tend to become confusing.

4. This is an all ELF-format distribution. If your kernel doesn't support ELF, you need to build a kernel that does.

5. I am not an INN helpdesk. Please read the FAQs and submit your questions to the addresses and newsgroups you find there. The FAQs are included for you to read. That means you should read them.

Installation instructions:

1. Create your news user and group. The news user should have a UID of 8. The news group should have a GID of 13. That is, unless you want to take responsibility for changing the ownerships of the files as they are unpacked from the tar file. That's up to you.

2. Unpack the distribution.

cd /
tar -xvpf /path/to/inn-dist.tar

3. Edit /etc/syslog.conf and add these lines. Be sure to use tabs instead of spaces in /etc/syslog.conf. Never use spaces in /etc/syslog.conf.

news.notice        /var/log/news/news.notice
news.err           /var/log/news/news.err
news.crit          /var/log/news/news.crit

4. Restart syslogd

kill -HUP `cat /var/run/syslogd.pid`

5. Install an active file. This is a list of all the newsgroups that you will accept. You should probably get the active file from your service provider. If for some reason you can't, fetch one from ftp://ftp.uu.net/uunet-info/active. Remember that big active files cost memory and performance. It's best to remove any hierarchies from the active file that you don't wish to carry. You should also tell your provider which hierarchies you wish to carry and which ones you don't. Most providers will respond favorably to this. Some will not alter the feed in any way. They tend to have a variety of lame excuses and it's probably not worth arguing over it. No provider that I know of will tolerate receiving a list of every newsgroup you want to carry (or don't want to carry). You need to keep it at the hierarchy level. In other words, tell them that you want alt.* but not alt.binaries.*, no comp.* except for comp.os.linux.*, etc. But don't say "I want alt.sex.bestiality, alt.sex.pedophilia, alt.sex.fetish, but not alt.sex.fetish.diapers" ad nauseum down a list of 10,000 newsgroups. That's unreasonable. Put the active file in /usr/local/news.

6. Make your history database:

su news
cd /usr/local/news
makehistory
mv history.n.dir history.dir
mv history.n.pag history.pag

7. Edit hosts.nntp. Put the hostname of the machine that will be feeding you (presumably your service provider's news server) in this file. Do not use this file to define the hostnames of client machines that will read news from your server. This file is only for servers that will feed you.

8. Edit inn.conf. Fill in your organization. If you want your pathname to be different from the fully-qualified hostname of your machine, set the pathname appropriately. For example, if your server is called server.your.domain but you want it to appear to be news.your.domain, you would put down news.your.domain as the pathhost.

9. Edit newsfeeds. Change isp.example.com to the hostname of your news provider's server, if you intend to feed your locally generated postings back to them.

10. Edit nnrp.access. Define your domain name (and optionally your network addresses) that should be permitted to read from your server.

11. Edit nntpsend.ctl. Change isp.example.com to the hostname of your news provider's server, if you intend to feed your locally generated postings back to them.

12. Create a crontab for the news user. Generally you'll do this by running "crontab -e". The crontab file should contain:

0 2 * * * /usr/local/news/bin/news/bin/news.daily delayrm expireover
0,15,30,45 * * * * /usr/local/news/bin/nntpsend

13. Start the server.

su news
sh /usr/local/etc/rc.news

Remember, if you have problems with the server, there are five places you should go before you send a message to me about it:

1. The manual pages.

2. The FAQs.

3. The current installation page for this distribution, which is here.

4. Post to news.software.nntp (if you can).

5. Send a message to inn-questions@pilhuhn.de. This will automatically post your question to news.software.nntp, if you are unable to do so.

If you have gone that far through the documentation and posted questions to news.software.nntp that don't get answered, then send a message to linux-inn@etext.org.