expire - Usenet article and history expiration program
expire [ -d dir ] [ -f file ] [ -g file ] [ -h file ] [ -i ] [ -N ] [ -n ] [ -p ] [ -r
reason ] [ -t ] [ -v level ] [ -w number ] [ -x ] [ -z file ] [ expire.ctl ]
Expire scans the history(5) text file <pathdb in inn.conf>/history and uses the informa-
tion recorded in it to purge itself or old news articles. And if the article whose stor-
age method has self expire functionality, the control file is ignored except ``/remem-
ber/'' 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. To disable
this, use the ``-N'' flag. If ``groupbaseexpiry'' in inn.conf is true, expire always
treats all stored articles whose storage method have self expire functionality regardless
of its actual method. In this case ``-e'', ``-k'', ``-N'', ``-p'', ``-q'', ``-w'' and
``-z'' flags are ignored.
Note that expire never purges articles which do not match any entry.
-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 suc-
cessfully completed the expiration. The calling script should install the new his-
tory file and un-pause the server. The ``-r'' flag should be used with this flag.
-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 is ``history.''
-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.
-N If the article whose 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 exclusive 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 expira-
tion programs that base their decisions on the article's posting date. To use the
article's posting date, use the ``-p'' 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 reason, 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.
-t If the ``-t'' flag is used, then expire will generate a list of the tokens that
should be removed on its standard output, and the new history file will be left in
history.n, history.n.dir, history.n.index and history.n.hash. This flag be useful
for debugging when used with the ``-n'' flags. Note that if the ``-f'' flag is
used, then the name specified with that flag will be used instead of history.
-v The ``-v'' flag is used to increase the verbosity of the program, generating mes-
sages 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 num-
ber 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'' and ``-t'' flags to see how dif-
ferent 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).
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 <firstname.lastname@example.org> for InterNetNews. This is revision 220.127.116.11,
ctlinnd(8), dbz(3), expire.ctl(5), history(5), inn.conf(5), innd(8), inndcomm(3).