EXPIRE.CTL(5)
NAME
expire.ctl - control file for Usenet article expiration
DESCRIPTION
The file /etc/news/expire.ctl is the default control file
for the expire(8) program, which reads it at start-up.
Blank lines and lines beginning with a number sign (``#'')
are ignored. All other lines should be in one of two for-
mats.
The first format specifies how long to keep a record of
fully-expired articles. This is useful when a newsfeed
intermittently offers older news that is not kept around
very long. (The case of very old news is handled by the
``-c'' flag of innd(8).) There should only be one line in
this format, which looks like this:
/remember/:days
Where days is a floating-point number that specifies the
upper limit to remember a Message-ID, even if the article
has already expired. (It does not affect article expira-
tions.)
Most of the lines in the file will consist of five colon-
separated fields, as follows:
pattern:modflag:keep:default:purge
The pattern field is a list of wildmat(3)-style patterns,
separated by commas. This field specifies the newsgroups
to which the line is applied. Note that the file is
interpreted in order, so that the last line that matches
will be used. This means that general patterns (like a
single asterisk to set the defaults) should appear before
specific group specifications.
The modflag field can be used to further limit newsgroups
to which the line applies, and should be chosen from the
following set:
M Only moderated groups
U Only unmoderated groups
A All groups
The next three fields are used to determine how long an
article should be kept. Each field should be either a
number of days (fractions like ``8.5'' are allowed) or the
word ``never.'' The most common use is to specify the
default value for how long an article should be kept. The
first and third fields -- keep and purge -- specify the
boundaries within which an Expires header will be honored.
They are ignored if an article has no Expires header. The
fields are specified in the file as ``lower-bound default
upper-bound,'' and they are explained in this order.
Since most articles do not have explicit expiration dates,
however, the second field tends to be the most important
one.
The keep field specifies how many days an article should
be kept before it will be removed. No article in the
newsgroup will be removed if it has been filed for less
then keep days, regardless of any expiration date. If
this field is the word ``never'' then an article cannot
have been kept for enough days so it will never be
expired.
The default field specifies how long to keep an article if
no Expires header is present. If this field is the word
``never'' then articles without explicit expiration dates
will never be expired.
The purge field specifies the upper bound on how long an
article can be kept. No article will be kept longer then
the number of days specified by this field. All articles
will be removed after then have been kept for purge days.
If purge is the word ``never'' then the article will never
be deleted.
It is often useful to honor the expiration headers in
articles, especially those in moderated groups. To do
this, set keep to zero, default to whatever value you
wish, and purge to never. To ignore any Expires header,
set all three fields to the same value.
There must be exactly one line with a pattern of ``*'' and
a modflags of ``A'' -- this matches all groups and is used
to set the expiration default. It should be the first
expiration line.
For example,
## How long to keep expired history
/remember/:5
## Most things stay for two weeks
*:A:14:14:14
## Believe expiration dates in moderated groups, up to six weeks
*:M:1:30:42
## Keep local stuff for a long time
foo.*:A:30:30:30
HISTORY
Written by Rich $alz lt;rsalz@uunet.uu.net for InterNet-
News. This is revision 1.15, dated 1996/10/29.
SEE ALSO
expire(8) wildmat(3).