NEWS.DAILY(8)

NAME
news.daily - do regular Usenet system administration

SYNOPSIS
news.daily [ keyword... ]

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 <pathrun in inn.conf> 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, <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 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 (or perhaps the ``notdaily'' keyword) to prevent the log files from being processed and rotated too fast.

The shlock(1) program is used to prevent simultaneous executions.

KEYWORDS

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 renamed after expiration by calling expirerm(8).

expctl=path
    Specify the file to use as the expire.ctl(5) file for expire.

expdir=path
    By default, expire builds the new 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 ``-d'' flag to expire), which will then be moved to the right location when finished.

nostat
    This keyword disables the status report generated by innstat (see innstat(8)). Without this keyword, the status report is the first function performed, just prior to obtaining the news.daily lock.

notdaily
    By default 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 news.daily is run in the day and the normal logfile processing (and rotation) will not be done.

noexpire
    By default, expire is invoked to remove old news articles. Using this keyword disables this function.

noexpireover
    By default, expireover is invoked to remove old overview database, if enableoverview is set in inn.conf. Using this keyword disables this function.

noexplog
    Expire normally appends information to <pathlog in inn.conf>/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='args for expire'
    By default, expire is invoked with argument ``-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. The ``norotate'' keyword is passed on to scanlogs if it is invoked.

norenumber
    This keyword disables the ctlinnd(8) renumber operation. Normally, the low-water marks for all newsgroups (see active(5)) are 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. If no overview data is created, the ``expireover'' keyword is not needed. This is the case that the server runs only for feeder(no reader).

expireoverflags='args for expireover'
    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.

postexec='post executed program'
    The program specified by the given path is executed just after all expiration is done. Multiple programs may be specified; they will be invoked in order.

lowmark
    If the ``lowmark'' keyword is used, ctlinnd(8) lowmark is used for renumbering active. Normal 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 news.daily specifies it implicitly.

tmpdir=path
    Sets the environment variable TMPDIR to the specified path. Various parts of the expire process, such as sort, will then use this path as the directory for temporary files.

HISTORY
News.daily and this manual page written by Landon Curt Noll <chongo@toad.com> and Rich $alz <rsalz@uunet.uu.net>.

SEE ALSO
active(5), ctlinnd(8), expire(8), fastrm(8), inn.conf(5), newslog(5), innwatch.ctl(5), shlock(1).