One of the most popular software packages for Netnews is C News. It was designed for sites that carry news over UUCP links. This chapter will discuss the central concepts of C News, basic installation, and maintenance tasks.
C News stores its configuration files in
/etc/news, and most of its binaries are kept
/usr/lib/news/ directory. Articles are
/var/spool/news. You should make sure
that virtually all files in these directories are owned by user
news or group news. Most problems arise from files being
inaccessible to C News. Use su to become the user
news before you touch anything
in the directory. The only exception is the
setnewsids command, which is used to set the real
user ID of some news programs. It must be owned by root and have the setuid bit set.
In this chapter, we describe all C News configuration files in detail and show you what you have to do to keep your site running.
Articles can be fed to C News in several ways. When a local user posts
an article, the newsreader usually hands it to the
inews command, which completes the header
information. News from remote sites, be it a single article or a whole
batch, is given to the rnews command, which stores
it in the
from where it will be picked up at a later time by
newsrun. With any of these two techniques, however,
the article will eventually be handed to the
For each article, the relaynews command first checks if the
article has already been seen at the local site by looking up the message ID
history file. Duplicate articles are dropped.
Then relaynews looks at the
header line to find out if the local site requests articles from any of these
groups. If it does, and the newsgroup is listed in the
active file, relaynews tries to store
the article in the corresponding directory in the news spool area. If this
directory does not exist, it is created. The article’s message ID is then
logged to the
history file. Otherwise,
relaynews drops the article.
Sometimes relaynews fails to store an incoming
article because a group to which it has been posted is not listed in
active file. In this case, the article is moved to the
relaynews also checks for stale or misdated articles
and reject them. Incoming batches that fail for any other reason are moved
/var/spool/news/in.coming/bad, and an error message
After this, the article is relayed to all other sites that request news
from these groups, using the transport specified for each particular site. To
make sure an article isn’t sent to a site that has already seen it, each
destination site is checked against the article’s
header field, which contains the list of sites the article has traversed so
far, written in the UUCP-style bang-path source-routing style described in
Chapter 17. If the destination site’s name does not
appear in this list, the article is sent to it.
C News is commonly used to relay news between UUCP sites, although it is also possible to use it in an NNTP environment. To deliver news to a remote UUCP site, either in single articles or whole batches, uux is used to execute the rnews command on the remote site and feed the article or batch to it on standard input. Refer to Chapter 16, for more information on UUCP.
Batching is the term used to describe sending large bundles of
individual articles all in one transmission. When batching is
enabled for a given site, C News does not send any incoming article
immediately; instead, it appends its path name to a file, usually called
out.going/site/togo. Periodically, a program is executed
from a crontab entry by the cron program,
which reads this file and bundles all of the listed articles into one or more
file, optionally compressing them and sending them to rnews
at the remote site.
Figure 21.1 shows the news flow through
relaynews. Articles may be relayed to the local site
ME), to a site named
ponderosa via email, and a site
named moria, for which batching is
 There may be a difference
between the groups that exist at your site and those that your site
is willing to receive. For example, the subscription list might
should send all newsgroups below the
comp hierarchy, but at your site you
might not list several of the
comp newsgroups in the
active file. Articles posted to those groups will
be moved to
 Note that this should be the crontab of news; file permissions will not be mangled.