InterNet News INN v1.4 on IRIX 6.2

From Higher Intellect Wiki
Jump to: navigation, search

This page was written by Christopher Spry. It was prepared after I had installed INN v 1.4 on my Indy running IRIX 6.2. Note that this installation was to provide a local news service, so it was not setup to receive or post news messages outside my domain ''. It continued to work well when I upgraded to IRIX 6.5 and did not need any alterations. INN v 2.2 is available now.

Recently, I have come across 'leafnode' v 1.9, which is a Usenet News server for small sites. 'Leafnode' installs directly from a tardist file, so it may be much easier to install and run. I do not have any experience of it.

Usenet services for 'private' group discussions can also be setup on public NNTP servers which are accessed with web browsers. I can recommend 'Take It Offline' where you fill out a brief form to start a new discussion topic. An email message comes back to you containing the URL for discussion of that topic. To invite others into the discussion, you forward them the email which contains the URL.

The FAQs

I made a directory called /var/news/FAQ and I downloaded from the nine INN FAQ of 03/06/1997 and put them there, owned by me rather than 'root', as I wanted to be able to edit them later, if necessary. I printed them out as I find them easier to work with in this form.

/var/news/FAQ/INN_FAQ1.txt General information 
/var/news/FAQ/INN_FAQ2.txt Specific notes for specific operating systems 
/var/news/FAQ/INN_FAQ3.txt Reasons why INN is not starting 
/var/news/FAQ/INN_FAQ4.txt Debugging and configuring information 
/var/news/FAQ/INN_FAQ5.txt Other error messages and what they mean 
/var/news/FAQ/INN_FAQ6.txt Day-to-day operation and changes to the system 
/var/news/FAQ/INN_FAQ7.txt Problems with INN already running 
/var/news/FAQ/INN_FAQ8.txt Appendix A: Norman’s install guide 
/var/news/FAQ/INN_FAQ9.txt Appendix B: Configuration for certain systems

The INN 'man pages'

The INN man pages are in /var/news/man. I added this directory to the MANPATH line in ~cspry/.login. I tried to set the man pages to be visible: First I tried with /var/news/man/man1/grephistory.1 using a method that I have used before:

neqn grephistory.1 | tbl | nroff -man > grephistory 
pack -f graphistory 
and copied the grephistory.z file to /usr/local/man/cat1 and grephistory.1 to /usr/local/man/man1.

I converted all the man pages in /var/news/man using the commands above. Then I was able to see the man pages using ‘man –d /path/manpage.z’. I used this command to view then cut and paste them to 'nedit' (my text editor) and print them. This took quite a while, but gave me an excellent manual to work with. I went thorough them to get an overview of what to do. After restarting the Indy, I was able to see all these man pages in a UNIX shell.

Setting up and running INN

I learnt that INN 'programs' have to be controlled when the user is logged in and running a shell as 'news'. You do this by opening a UNIX shell as an ordinary 'user', becoming 'superuser' (su, password), then typing 'su - news' (su 'dash' news). This gives a shell in which all the commands are run as 'news' which is ID '6'. The commands that can be used here are the ones that have 'man' pages, as prepared above.

I next followed the instructions in /var/news/README

/var/news/inn.conf has the 'configuration' setting for INN. I used the 'nedit' text editor to make the following alterations to it and the other files below.: (Note: my Indy is '').

organization: InterNetNews at SPRYSGI

I remmed out the following lines as I did not want to send postings to other news hosts.

# :*,!foo.*/world,usa,na,gnu,bionet,pubnet,u3b,eunet,vmsnet,inet,ddn,\ 
# k12\ 
# ::

This gives the names of the sites to be fed by sstpsend. I remmed them out. -t60 -t300

This is the lists of hosts that feed nntp news. I have none so remmed out:

This specifies the access control for those NNTP sites that are handled by innd. I added:

* Post:::*

This is a list of what INN should do when it gets a variety of messages. I left it unchanged as I did not know if I would get any.

This expires the old news articles after parsing /var/news/history.


##  Keep for 1-10 days, allow Expires headers to work. 


This is the file that provides the 'organization' of the news database. I left it unchanged.

This is the file that has the password to send to news servers. I did  not need one so remmed out:

This sets what actions to take during supervisions by innwatch. I did not change it.

This provides the addresses of news moderators. As it will not be used I  remmed out the lines:

# gnu.* 
# * 
I added to '/etc/syslog.conf'       /var/news/log/news.notice 
news.crit       /var/news/log/news.crit 
news.err        /var/news/log/news.err

I restarted syslog: 
/etc/killall -HUP syslogd

It is worth having a 'chkconfig' flag to tell whether 'news' is 'on' or 'off'. As 'superuser', make a file '/var/config/news' and put the word 'off' in it.

I ran the following commands:

cd /var/news/TO.BE.INSTALLED; cp news /etc/init.d/news 
chkconfig -f news on 
cd /etc/rc2.d; ln -s ../init.d/news S62news 
cd /etc/rc0.d; ln -s ../init.d/news K35news

I exited back to being a normal user again and used 'user manager' to make a user called 'usenet' who would receive mail from the server. I made a directory called '/var/news/dead.letter' to receive dead letters if they were not received by user 'usenet'.

I then logged in as 'news' in the following way:

sprysgi293% su - news

{news@sprysgi:1} cd ~/TO.BE.INSTALLED 
{news@sprysgi:2} crontab crontab --- This set up the cron actions to be used 
{news@sprysgi:3}news.daily --- This  ran a series of actions that are normally part of the daily administration of the server. It took a while to run then gave back the prompt. 

As 'su' I renamed the '/usr/news/active' file to /var/news/active.def. I decided that I would have two newsgroups to start with so made a new /var/news/active file with the same syntax as the original file but for these two local groups in addition to the control and junk groups:.

control 0000000000 0000000000 n 
junk 0000000000 0000000000 n 
comp.admin 0000000000 0000000001 y 0000000000 0000000001 y

I renamed /var/news/newsgroups as /var/news/newsgroups.def and made a new /var/news/newsgroups file with the same syntax as the original file but for these two local groups in addition to the control and junk groups.

comp.admin        Computer administration        Information at SGHMS

I then started up the news server

sprysgi294% /etc/init.d/news start 
Starting innd.

sprysgi295% ps -el | grep innd 

This showed that the 'innd' demon had started.

I started a 'news' reader (Netscape Communicator) and connected to the new news server and sent it a news message. It seemed to work OK.

You can stop and start the news server as 'superuser' with ‘/etc/init.d/news stop’ then ‘/etc/init.d/news start’ or as user 'news' (in the 'su - news' shell) with '/var/news/etc/'. You can run the /var/news/bin/news.daily' command as well if it looks as though the news server needs to be 'sorted out' for some reason.

The database of usenet articles are in /var/spool/news. The 'comp.admin' messages are in /var/spool/news/comp/admin/1 2 3 etc. These are created automatically when someone sends the first news message. Do not alter them.


ctlinnd is one of the programs that is run under the 'su - news' shell which controls a lot of things. I suggest reading the 'man page' and trying out some of the simpler commands after 'INN' has been started. For example 'mode' tells you if the system is running and other data. 'ctlinnd -h' lists the various commands that can be used with it.


This is a useful script (a PERL script actually):

sprysgi72% su - news 
{news@sprysgi:1} inncheck -v 
Looking at /var/news/active... 
Looking at /var/news/control.ctl... 
Looking at /var/news/expire.ctl... 
/var/news/expire.ctl:0: mode 644, should be 440 
Looking at /var/news/hosts.nntp... 
/var/news/hosts.nntp:0: mode 644, should be 440 
Looking at /var/news/inn.conf... 
Looking at /var/news/moderators... 
Looking at /var/news/newsfeeds... 
MEdummy-feed, /var/news/newsfeeds:0: ME entry accepts all incoming article distributions 
Looking at /var/news/nnrp.access... 
/var/news/nnrp.access:0: mode 644, should be 440 
Looking at /var/news/nntpsend.ctl... 
/var/news/nntpsend.ctl:0: mode 644, should be 440 
Looking at /var/news/overview.fmt... 
Looking at /var/news/passwd.nntp... 
/var/news/passwd.nntp:0: mode 644, should be 440 

I altered the chmod values as recommended. 
I remmed out the dummyfeed in newsfeeds set up in the line above.

{news@sprysgi:1} inncheck -v 
Looking at /var/news/active... 
Looking at /var/news/control.ctl... 
Looking at /var/news/expire.ctl... 
Looking at /var/news/hosts.nntp... 
Looking at /var/news/inn.conf... 
Looking at /var/news/moderators... 
Looking at /var/news/newsfeeds... 
/var/news/newsfeeds:0: ME entry accepts all incoming article distributions 
Looking at /var/news/nnrp.access... 
Looking at /var/news/nntpsend.ctl... 
Looking at /var/news/overview.fmt... 
Looking at /var/news/passwd.nntp...

This looked OK.

Note that it is worth looking at the 'mail' in the 'Usenet' account as that is where information is put if things go wrong. Also 'syslog' has information as well.

Share your opinion