Annotation of 43BSD/contrib/news/man/expire.8, revision 1.1.1.1

1.1       root        1: .if n .ds La '
                      2: .if n .ds Ra '
                      3: .if t .ds La `
                      4: .if t .ds Ra '
                      5: .if n .ds Lq "
                      6: .if n .ds Rq "
                      7: .if t .ds Lq ``
                      8: .if t .ds Rq ''
                      9: .de Ch
                     10: \\$3\\*(Lq\\$1\\*(Rq\\$2
                     11: ..
                     12: .TH EXPIRE 8 "February 14, 1986"
                     13: .ds ]W  Version B 2.10.3
                     14: .SH NAME
                     15: expire \- remove outdated news articles
                     16: .SH SYNOPSIS
                     17: .BR /usr/lib/news/expire " [ " \-n
                     18: .IR newsgroups " ] ["
                     19: .BR \-i " ] [ " \-I " ] ["
                     20: .BR \-a " ] ["
                     21: .BI \-v " level"
                     22: ] [
                     23: .B \-p
                     24: ]
                     25: .br
                     26:                        [
                     27: .B \-h
                     28: ] [
                     29: .B \-r
                     30: ] [
                     31: .BI \-e " days"
                     32: ] [
                     33: .BI \-E " days"
                     34: ]
                     35: .br
                     36: .B /usr/lib/news/expire
                     37: .BI \-f " [email protected]"
                     38: .br
                     39: .B /usr/lib/news/expire
                     40: .B \-u
                     41: .SH DESCRIPTION
                     42: .PP
                     43: .I Expire
                     44: is the program that removes out-of-date news articles from your system.
                     45: You need to use a special program to do this, instead of just using
                     46: .I find(1)
                     47: or
                     48: .I rm(1),
                     49: because of the history file. If you just delete messages, then the history
                     50: file will become incorrect because it will think that they are still there.
                     51: .PP
                     52: The normal use of
                     53: .I expire
                     54: is to run it at regular intervals with no options.
                     55: It will remove all articles whose expiration date has passed.
                     56: If you have a lot of disk space, you can run it once a week. If disk space is
                     57: tight, you might want to run it every night. The length of time that it takes
                     58: to run depends, of course, on many factors; on a VAX 750 with a 15-day
                     59: expiration period and the volume of news that is typical in 1986 (about 5000
                     60: articles per week),
                     61: .I expire
                     62: will take roughly an hour to run.
                     63: .PP
                     64: .I Expire
                     65: has the following options:
                     66: .TP
                     67: .B \-n
                     68: Specify certain newsgroups whose articles will be expired. The other
                     69: newsgroups will be left alone. The notation that you use with the \-n option
                     70: is quite similar to that used in the sys file. To expire only the articles in
                     71: net.origins, leaving everything else alone, type this:
                     72: .nf
                     73:        /usr/lib/news/expire \-n net.origins
                     74: .fi
                     75: To expire only the articles in net.micro, but leave net.micro.pc and
                     76: net.micro.mac alone, type this:
                     77: .nf
                     78:        /usr/lib/news/expire \-n net.micro !net.micro.mac !net.micro.pc
                     79: .fi
                     80: For compatibility with the syntax of the sys file, you can also type the
                     81: command this way, with commas instead of spaces between the fields.
                     82: .nf
                     83:        /usr/lib/news/expire \-n net.micro,!net.micro.mac,!net.micro.pc
                     84: .fi
                     85: If you have certain groups that you use as archives, which should never have
                     86: their articles expired, you must construct an
                     87: .I expire
                     88: command that mentions all groups except your archive groups. When doing this,
                     89: be sure not to forget the groups
                     90: .Ch junk ,
                     91: .Ch control ,
                     92: and
                     93: .Ch general .
                     94: A likely command would be:
                     95: .nf
                     96:        /usr/lib/news/expire \-n all,!local.source,!mod.sources
                     97: .fi
                     98: .TP
                     99: .B \-e
                    100: Specify an expiration period. Normally
                    101: .I expire
                    102: removes articles that are older than 15 days. If you would like it to remove
                    103: articles that are older than 5 days, you can type
                    104: .nf
                    105:        /usr/lib/news/expire \-e 5
                    106: .fi
                    107: If you would like it to remove articles from net.religion and net.politics
                    108: that are older than
                    109: 23 days, and leave everything else alone, you can type
                    110: .nf
                    111:        /usr/lib/news/expire \-e 23 \-n net.religion net.politics
                    112: .fi
                    113: You can specify the \-e option as \-e15 instead of as \-e\ 15 if you want;
                    114: this is for compatibility with old versions and old habits.
                    115: .TP
                    116: \-E
                    117: Normally
                    118: .I expire
                    119: removes the record of an article from the history file at the same time it
                    120: removes the article. One of the purposes of the history file is to prevent
                    121: articles from being duplicated if a second copy arrives a while later,
                    122: perhaps over some other path. If your site is extremely short on disk space,
                    123: forcing you to specify a short expiration period in the \-e option, you can
                    124: use the \-E option to ask that the information in the history file be kept
                    125: round a bit longer, until the danger of duplicate arrival has passed. The
                    126: command
                    127: .nf
                    128:        /usr/lib/news/expire \-e 7 \-E 21
                    129: .fi
                    130: Causes articles that are 7 or more days old to be removed, and history
                    131: information that is 21 or more days old to be removed. If you use the \-E
                    132: option, make sure that the value it specifies is always larger than the \-e
                    133: option value, else you will end up with articles that are not in the history
                    134: file; this can cause problems.
                    135: .TP
                    136: .B \-a
                    137: Asks that articles be archived (usually in /usr/spool/oldnews) instead of being deleted.
                    138: An example of its use would be
                    139: .nf
                    140:        /usr/lib/news/expire \-e 30 \-a net.sources,mod.sources,!net.sources.bugs
                    141: .fi
                    142: .B \-a 
                    143: may be used with 
                    144: .B \-n .
                    145: If no pattern is given for 
                    146: .B \-a ,
                    147: all newsgroups specified by 
                    148: .B \-n
                    149: will be archived.
                    150: .TP
                    151: .B \-I
                    152: instructs
                    153: .I expire
                    154: to ignore expiration dates stored in articles, and to look at the number of
                    155: days that have passed since the article was received. Not very many articles
                    156: have expiration dates in them.
                    157: .TP
                    158: .B \-i
                    159: is like \-I, but it will look at the number of days that have passed and also
                    160: at the explicit expiration date, and it will remove the article if either of
                    161: those has passed.
                    162: .TP
                    163: \-v
                    164: sets the verbosity mode. If you have specified a complex collection of
                    165: options and they are not having the effect that you would like, then set \-v2
                    166: or \-v3 to find out what is going on. Values from 0 to 6 are meaningful, and
                    167: \-v1 is the default. \-v0 will turn off messages, and \-v6 will cause
                    168: .I expire
                    169: to print every possible message.
                    170: .TP
                    171: \-p
                    172: causes
                    173: .I expire
                    174: to use the date the article was posted, rather than the date it arrived at
                    175: your machine, as the basis for expiration. Every now and then there is a
                    176: .Ch "time warp"
                    177: that causes a batch of very very old news to be dumped onto the
                    178: network; judicious use of the \-p option can eradicate it.
                    179: .TP
                    180: \-f
                    181: asks
                    182: .I expire
                    183: to remove messages sent by a particular user, regardless of the newsgroup
                    184: that they are in, and regardless of how old they are.
                    185: This option is intended not so much to selectively censor
                    186: voluminous posters (though it has certainly been used for that) but to
                    187: recover when a
                    188: .I notesfiles
                    189: site (running different news software) accidentally releases a duplicate
                    190: batch of old news. An example of its use is
                    191: .nf
                    192:        /usr/lib/news/expire \-f [email protected]
                    193: .fi
                    194: Any article whose From: field exactly matches the argument to the \-f option
                    195: will be removed.
                    196: .TP
                    197: \-h
                    198: causes
                    199: .I expire
                    200: to ignore the history file, and do its expiration by looking at every article
                    201: file in the spool directory. This is phenomenally slow\(emit can take 5 or 6
                    202: hours on an otherwise idle Vax 750\(embut if your history file is damaged and
                    203: you cannot use
                    204: .I find(1)
                    205: because you are relying on expiration dates stored inside articles, then you
                    206: have no other choice.
                    207: .TP
                    208: \-r
                    209: causes
                    210: .I expire
                    211: to rebuild the history file in addition to doing expiration.  The \-r option
                    212: implies the \-h option; it scans every article in the spool directory and
                    213: builds a new set of history and
                    214: .I dbm(3X)
                    215: files. It also performs expiration, so if you want to rebuild the history
                    216: file while preserving all articles (as you might want to do on an archival
                    217: file computer), you must specify
                    218: .nf
                    219:        /usr/lib/news/expire \-r \-I \-e 999999
                    220: .fi
                    221: to prevent expiration from taking place.
                    222: If you do not rely on expiration dates stored inside articles, it is a good
                    223: tonic to run the following sequence of commands once every now and then:
                    224: .nf
                    225:        find /usr/spool/news \-size 0 \-o \-mtime +90 \-exec rm \-f {} \;
                    226:        /usr/lib/news/expire \-r
                    227: .fi
                    228: This will remove junk files that have somehow managed to find their way into
                    229: the spooling directory, and then it will rebuild the history file.
                    230: .TP
                    231: \-u
                    232: causes the minimum article-number field in the active file to be updated.
                    233: This is used when converting from 2.10.1 news to later versions.
                    234: .SH SEE ALSO
                    235: inews(1),
                    236: postnews(1),
                    237: getdate(3),
                    238: news(5),
                    239: recnews(8),
                    240: sendnews(8),
                    241: uurec(8)
                    242: .SH BUGS
                    243: If
                    244: .I inews(1)
                    245: is run while
                    246: .I expire
                    247: is running, it can cause the article that inews is trying to insert to be
                    248: absent from your history file. There is no automatic interlock between
                    249: .I inews(1)
                    250: and
                    251: .I expire,
                    252: so you must take care to turn off
                    253: .I inews(1)
                    254: while
                    255: .I expire
                    256: is running. This bug will likely be fixed soon, but for the moment be careful
                    257: of it.
                    258: .PP
                    259: The newsgroup pattern argument to the \-n option is limited to 1024
                    260: characters, which is about 8 lines of text.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.