.TH NEWS.DAILY 8
.SH NAME
news.daily \- do regular Usenet system administration
.SH SYNOPSIS
.B news.daily
[
.B keyword...
]

.SH DESCRIPTION
.I 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.
.I "This program should be run under the news administrator's id, not as root."
.PP
By default, 
.I news.daily
performs all of its functions and mails the output to the news administrator,
.IR <USER\ specified\ with\ \-\-with\-news\-master\ at\ configure> .
By specifying ``keywords'' on the command line, it is possible to
modify the functions performed, as well as change the arguments given to
.IR expire (8)
and
.IR expireover (8)
or
.IR expireindex (8).
.PP
.I News.daily
should be run once a day, typically out of
.IR 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.
.PP
The
.IR shlock (1)
program is used to prevent simultaneous executions.
.SH "KEYWORDS"
.PP
The following keywords may be used:
.TP
.I delayrm
This uses the ``\fB\-z\fP'' flag when invoking
.I expire
and
.IR expireover
or
.IR expireindex .
The names of articles to be removed are written to a temporary file, and
then renamed after expiration by calling
.IR expirerm (8).
If the ``delayrm'' keyword is specified, the ``expireover'' keyword
is specified implicitly.
.TP
.IR expctl= path
Specify the file to use as the
.IR expire.ctl (5)
file for
.IR expire .
.TP
.IR expdir= path
By default,
.I expire
builds the new
.IR history (5)
file and database in the same directory as the current files.
Using this keyword specifies a different local to build the new files
(by passing the ``\fB\-d\fP'' flag to
.IR expire ),
which will then be moved to the right location when finished.
.TP
.I nostat
This keyword disables the status report generated by
.I innstat
(see
.IR newslog (8)).
Without this keyword, the status report is the first function performed,
just prior to obtaining the
.I news.daily
lock.
.TP
.I notdaily
By default 
.I news.daily
expects to be run only once a day, and it does
various things (like rotating logs) that normally should only be done on
daily basis. Use this keyword any extra times
.I news.daily
is run in the
day and the normal logfile processing (and rotation) will not be done.
.TP
.I noexpire
By default,
.I expire
is invoked to remove old news articles.
Using this keyword disables this function.
.TP
.I noexplog
.I Expire
normally appends information to
.I <pathlog in inn.conf>/expire.log
(see
.IR newslog (5)).
Using this keyword causes the
.I expire
output to be handled as part of 
.IR news.daily 's
output.
It has no effect if the ``noexpire'' keyword is used.
.TP
.IR flags= "'expire\ args'"
By default, 
.I 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.
.TP
.I nologs
After expiration,
.IR scanlogs (8)
is invoked to process the log files.
Using this keyword disables all log processing functions.
.TP
.I 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.
.IP
This keyword has no effect if the ``nologs'' keyword is used.
The ``norotate'' keyword is passed on to
.I scanlogs
if it is invoked.
.TP
.I norenumber
This keyword disables the
.IR ctlinnd (8)
renumber operation.
Normally, the low-water mark for all newsgroups (see
.IR active (5))
is reset.
.TP
.I norm
By default, any socket
.I ctlinnd
socket that has not been modified for two days will be removed.
Using this keyword disables this function.
.TP
.I nomail
.I 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.
.TP
.I expireover
The
.I expireover
program is called after expiration to purge the overview databases or indices.
If you have turned on the storage manager with the 'storageapi' in
.IR inn.conf (5),
.I expireindex
program is called instead.  
If storageapi turned on and no overview data is created, the ``expireover''
keyword is not needed.  This is the case that the server runs only for
feeder(no reader).
.TP
.IR expireoverflags= "'expireover\ args'"
If the ``expireover'' keyword is used, this keyword may be used to specify
the flags to be passed to
.IR expireover
or
.IR expireindex .
If the ``delayrm'' keyword is used, then the default value is ``\-z''
and the list of deleted files; otherwise, the default value is ``\-s''.
.TP
.I /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.
.TP
.I lowmark
If the ``lowmark'' keyword is used, 
.IR ctlinnd (8)
lowmark is used for renumbering
.IR active (5).
Normal
.IR ctlinnd (8)
renumber operation will take long time.  With ``lowmark'' keyword this will
take less time.
If the ``lowmark'' keyword is used,
\&``norenumber'' keyword is not needed, since
.I news.daily
specifies it implicitly.
.SH HISTORY
.I News.daily
and this manual page written by Landon Curt Noll <chongo@toad.com> and
Rich $alz <rsalz@uunet.uu.net>.
.de R$
This is revision \\$3, dated \\$4.
..
.R$ $Id: news.daily.8,v 1.7.4.1 1998/12/09 15:40:31 kondou Exp $
.SH "SEE ALSO"
active(5),
ctlinnd(8), 
expire(8),
fastrm(8),
inn.conf(5),
newslog(5),
newslog(8),
innwatch.ctl(5),
shlock(1).
