NAME
news.daily - do regular Usenet system administration
SYNOPSIS
news.daily [ keyword... ]
innwatch [ -t sleeptime ] [ -f controlfile ] [ -l logfile ]
expirerm file
inncheck [ -v ] [ -pedantic ] [ -perms [ -fix ] ] [ -noperms
] [ file... ]
DESCRIPTION
News.daily performs a number of important Usenet
administrative functions. This includes producing a status
report, removing old news articles, processing log files,
rotating the archived log files, renumbering the active
file, removing any old socket files found in the
``firewall'' directory, and collecting the output. This
program should be run under the news administrator's id, not
as root.
By default, news.daily performs all of its functions and
mails the output to the news administrator, inn. By
specifying ``keywords'' on the command line, it is possible
to modify the functions performed, as well as change the
arguments given to expire(8) and expireover(8).
News.daily should be run once a day, typically out of
cron(8). It may be run more often, but such invocations
should at least use the ``norotate'' keyword to prevent the
log files from being processed and rotated too fast.
The shlock(1) program is used to prevent simultaneous
executions.
The following keywords may be used:
delayrm
This uses the ``-z'' flag when invoking expire and
expireover. The names of articles to be removed are
written to a temporary file, and then removed after
expiration by calling expirerm.
nostat
This keyword disables the status report generated by
innstat (see newslog(8)). Without this keyword, the
status report is the first function performed, just
prior to obtaining the news.daily lock.
noexpire
By default, expire is invoked to remove old news
articles. Using this keyword disables this function.
noexplog
Expire normally appends information to
/usr/local/news/log/expire.log (see newslog(5)). Using
this keyword causes the expire output to be handled as
part of news.daily's output. It has no effect if the
``noexpire'' keyword is used.
flags='expire args'
By default, expire is invoked with the an argument of
``-v1''. Using this keyword changes the arguments to
those specified. Be careful to use quotes if multiple
arguments are needed. This keyword has no effect if
the ``noexpire'' keyword is used.
nologs
After expiration, scanlogs(8) is invoked to process the
log files. Using this keyword disables all log
processing functions.
norotate
By default, log processing includes rotating and
cleaning out log files. Using this keyword disables
the rotating and cleaning aspect of the log processing:
the logs files are only scanned for information and no
contents are altered. This keyword has no effect if
the ``nologs'' keyword is used.
norenumber
This keyword disables the ctlinnd(8) renumber
operation. Normally, the low-water mark for all
newsgroups (see active(5)) is reset.
norm By default, any socket ctlinnd socket that has not been
modified for two days will be removed. Using this
keyword disables this function.
nomail
News.daily normally sends a mail message containing the
results to the administrator. Using this keyword
causes this message to be sent to stdout and stderr
instead. Normally, all utilities invoked by the script
have their stdout and stderr redirected into a file.
If the file is empty, no message is sent.
expireover
The expireover program is called after expiration to
purge the overview databases.
expireoverflags='expireover args'
If the ``expireover'' keyword is used, this keyword may
be used to specify the flags to be passed to
expireover. If the ``delayrm'' keyword is used, then
the default value is ``-z'' and the list of deleted
files; otherwise, the default value is ``-s''.
/full/path
The program specified by the given path is executed
just before any expiration is done. A typical use is
to specify an alternate expiration program and use the
``noexpire'' keyword. Multiple programs may be
specified; they will be invoked in order.
The ``norotate'' keyword is passed on to scanlogs if it is
invoked. Expirerm is a script that removes a list of files.
The specified file lists the files. It is sorted, and then
fed into a pipeline responsible for doing the removal,
normally fastrm(8). If there seemed to be a problem
removing the files, then mail is sent to the news
administrator. If there were no problems, then file is
renamed to /usr/local/news/log/expire.list where it is kept
(for safety) until the next day's expiration.
Innwatch is a script that can be started at news boot time.
It periodically - every sleeptime seconds - examines the
load average, and the number of free blocks and inodes on
the spool partition, as described by its controlfile,
innwatch.ctl(5). If the load gets too high, or the disk
gets too full, it throttles the server. When the condition
restores, it unblocks the server. In addition, on each pass
through the loop it will check the specified logfile to see
if it has been modified, and send mail to the news
administrator if so. It is usually a good idea to set this
to the syslog(3) file that receives critical news messages.
Upon receipt of an interrupt signal, innwatch will report
its status in the file /usr/local/news/lib/innwatch.status.
Inncheck is a Perl(1) script that verifies the syntax and
permissions of all InterNetNews configuration files. If no
files are specified, it checks all files. A filename may be
followed by an equal sign and a path to indicate the
pathname to use for the file. For example,
``newsfeeds=/tmp/nf'' will check the syntax of a new
newsfeeds(5) without requiring it to be installed. If the
``-v'' flag is used, it prints status information as it
checks each file. If the ``-pedantic'' flag is used, it
checks the files for omissions which are not strictly
errors, but which might indicate a configuration error.
If any file is specified, only the permissions on those
files are checked. The ``-noperms'' flag will suppress this
check. If the ``-perms'' flag is used the script verifies
the ownership and permissions of all files. The ``-fix''
flag can also be used so that the output can be executed as
a shell script.
HISTORY
News.daily and this manual page written by Landon Curt Noll
<{chongo,noll}@{toad,sgi}.com> and Rich $alz <rsalz@uunet.uu.net>.
Inncheck written by Brendan Kehoe <brendan@cs.widener.edu>
and Rich. Innwatch written by Mike Cooper <mcooper@usc.edu>
and <kre@munnari.oz.au>. This is revision 1.6, dated
1993/03/18.
SEE ALSO
active(5), ctlinnd(8), expire(8), fastrm(8), newslog(5),
newslog(8), innwatch.ctl(5), shlock(1).