expire - Usenet article and history expiration program
expire [ -c ] [ -D dir ] [ -d dir ] [ -e ] [ -f file ] [ -g file ] [ -h
file ] [ -i ] [ -k ] [ -l ] [ -N ] [ -n ] [ -p ] [ -q ] [ -r reason ] [
-s ] [ -t ] [ -u file ] [ -v level ] [ -w number ] [ -x ] [ -Z file ] [
-z file ] [ expire.ctl ]
Expire scans the history(5) text file <pathdb in inn.conf>/history and
uses the information recorded in it to purge old news articles. If you
have turned on the storage manager with the 'storageapi' in inn.conf(5)
and set up overview.ctl(5), it also purges old unified overview data.
And if the article is stored by storage api and the storage method has
self expire functionality, the control file is ignored except remember
line for that article by default. In this case, expire probes the
article to see if it still exists. If it does not exist, expire purges
the relevant entries (history and unified overview). To disable this,
use the ``-N'' flag.
-c If articles are stored by storage api, articles are normally
expired by storage class base. If the ``-c'' flag is used,
articles are expired by normal way (newsgroup base). Note that
if the unified overview entry of an article is not stored, the
article is expired by storage class base.
-D If the ``-D'' flag is used, then the new unified overview files
are created in the specified directory, dir. This is useful
when the filesystem does not have sufficient space to hold both
the old and new unified overview files. When this flag is used,
expire leaves the server paused and creates a zero-length file
named after the new unified overview file, with an extension of
``.done'' to indicate that it has successfully completed the
expiration. The calling script should install the new unified
overview files and un-pause the server.
-d If the ``-d'' flag is used, then the new history file and
database is created in the specified directory, dir. This is
useful when the filesystem does not have sufficient space to
hold both the old and new history files. When this flag is
used, expire leaves the server paused and creates a zero-length
file named after the new history file, with an extension of
``.done'' to indicate that it has successfully completed the
expiration. The calling script should install the new history
file and un-pause the server. The ``-r'' flag should be used
with this flag.
-e If the ``-e'' flag is used, then as soon as the first cross
posting of the article expires, all copies of it are removed.
Note that you cannot use both ``-e'' and ``-k'' flag at the same
time. If you turn on 'storageapi' in inn.conf(5) and don't use
both ``-e'' and ``-k'' flag, ``-e'' flag is set internally.
-f To specify an alternate history file, use the ``-f'' flag. This
flag is valid if ``-d'' flag is used together, and the output
will be written to this file. The default without ``-f'' flag
-g If the ``-g'' flag is given, then a one-line summary equivalent
to the output of ``-v 1'' and preceded by the current time, will
be appended to the specified file.
-h To specify an alternate input text history file, use the ``-h''
flag. Expire uses the old dbz(3) database to determine the size
of the new one. If ``-d'' flag is not used together, and the
output file name will be with an extension of ``.n.'' The
default without ``-h'' flag is <pathdb in inn.conf>/history.
-i To ignore the old database, use the ``-i'' flag.
-k If this flag is used then articles are removed when they have
been expired from all the groups they appear in. Note that you
cannot use both ``-e'' and ``-k'' flag at the same time. If you
turn on 'storageapi' in inn.conf(5) and don't use both ``-e''
and ``-k'' flag, ``-e'' flag is set internally.
-l Expire normally just unlinks each file if it should be expired.
If the ``-l'' flag is used, then all articles after the first
one are treated as if they could be symbolic links to the first
one. In this case, the first article will not be removed as
long as any other cross-posts of the article remain. If ``-e''
flag is used together, ``-l'' flag is ignored.
-N If the article is stored by storage api and the storage method
has self expire functionality, then the control file is ignored
for that article by default. If the ``-N'' flag is used, expire
still uses the control file in this case.
-n If innd is not running, use the ``-n'' flag and expire will not
send the ``pause'' or ``go'' commands. (For more details on the
commands, see ctlinnd(8)). Note that expire only needs exclu-
sive access for a very short time -- long enough to see if any
new articles arrived since it first hit the end of the file, and
to rename the new files to the working files.
-p Expire makes its decisions on the time the article arrived, as
found in the history file. This means articles are often kept a
little longer than with other expiration programs that base
their decisions on the article's posting date. To use the arti-
cle's posting date, use the ``-p'' flag.
-q Expire normally complains about articles that are posted to
newsgroups not mentioned in the active file. To suppress this
action, use the ``-q'' flag.
-r Expire normally sends a ``pause'' command to the local innd(8)
daemon when it needs exclusive access to the history file, using
the string ``Expiring'' as the reason. To give a different rea-
son, use the ``-r'' flag. The process ID will be appended to
the reason. When expire is finished and the new history file is
ready, it sends a ``go'' command.
-s If the ``-s'' flag is used, then expire will print a summary
when it exits showing the approximate number of kilobytes used
by all deleted articles.
-t If the ``-t'' flag is used, then expire will generate a list of
the files that should be removed on its standard output, and the
new history file will be left in history.n and history.n.dir ,
history.n.index history.n.hash. This flag be useful for debug-
ging when used with the ``-n'' and ``-s'' flags. Note that if
the ``-f'' flag is used, then the name specified with that flag
will be used instead of history.
-u If the ``-u'' flag is used, then expired article's names are
appended to the specified file. This files can be used as a
input for expireindex(8). See also the description of delayrm
-v The ``-v'' flag is used to increase the verbosity of the pro-
gram, generating messages to standard output. The level should
be a number, where higher numbers result in more output. Level
one will print totals of the various actions done (not valid if
a new history file is not written), level two will print report
on each individual file, while level five results in more than
one line of output for every line processed.
-w Use the ``-w'' flag to ``warp'' time so that expire thinks it is
running at some time other then the current time. The value
should be a signed floating point number of the number of days
to use as the offset.
-x If the ``-x'' flag is used, then expire will not create any new
history files. This is most useful when combined with the
``-n'', ``-s'', and ``-t'' flags to see how different expiration
policies would change the amount of disk space used.
-z If the ``-z'' flag is used, then articles are not removed, but
their names are appended to the specified file. See the
description of delayrm in news.daily(8).
-Z If the ``-Z'' flag is used, then information about the lowmarks
for each group are stored in the file. This file can then be
used with ctlinnd (the ``lowmark'' command) to adjust the active
If a filename is specified, it is taken as the control file and parsed
according to the rules in expire.ctl(5). A single dash (``-'') may be
used to read the file from standard input. If no file is specified,
the file <pathetc in inn.conf>/expire.ctl is read.
Written by Rich $alz <email@example.com> for InterNetNews. This is
revision 220.127.116.11, dated 1999/06/12.
ctlinnd(8), dbz(3), expire.ctl(5), history(5), inn.conf(5), innd(8),
Man(1) output converted with
list of all man pages