EXPIRE(8)

名前
expire - 記事と history の expire 処理プログラム

形式
expire [ -d dir ] [ -e ] [ -f file ] [ -g file ] [ -h file ] [ -i ] [ -l ] [ -n ] [ -p ] [ -q ] [ -r reason ] [ -s ] [ -t ] [ -v level ] [ -w number ] [ -x ] [ -z file ] [ expire.ctl ]

機能説明
expire はテキストファイルである /var/news/etc/history ( history(5) )をスキャンして、古い記事を消去するためにそこに記録されている情報を使用します。

オプション

-d  ``-d'' オプションを使用すると、 dir で指定したディレクトリに history ファイルとデータベースを作成します。 これは古い history ファイル群と新しい history ファイル群の両方を同時に保持するのに十分な領域がファイルシステムに無い場合に有効です。 このオプションを使用すると、 expire はサーバを pause 状態にし、新しい history ファイル名に ``.done'' という拡張子 を付けた長さ 0 のファイルを作成し、expire が正常に終了したことを示します。 このコマンドを呼ぶスクリプトでは新しい history ファイルを本来あるべきディレクトリに移動し、 サーバの pause 状態を解放してやる必要があります。 このオプションは、``-r'' オプションとともに使用するべきです。

-e  ``-e'' オプションを使用すると、クロスポストされた記事の最初のファイルを削除する場合、 そのすべてのリンクも削除します。

-f  別の、history ファイルを指定するためには ``-f'' オプションを使用します。 このオプションは、``-d'' オプションを指定したときのみ有効で、 この場合はこのファイルに出力します。 ``-f'' オプションを指定しない場合のデフォルトは ``history'' となります。

-g  ``-g'' オプションを使用すると、``-v 1'' の出力に相当する一行のサマリと現在時刻を file で指定したファイルに追加します。

-h  別の入力 history ファイルを指定するには、``-h'' オプションを使用します。 expire は古い dbz(3) データベースを使用して新しいデータベースの大きさを決めます。 ``-d'' オプションを指定しなければ、出力ファイルはこのファイル名に ``.n'' という拡張子を付けたファイル名になります。 ``-h'' オプションを指定しない場合のデフォルトは /var/news/etc/history となります。

-i  古いデータベースを無視するには ``-i'' オプションを使用します。

-l  expire は通常、各ファイルが expire すべきものであれば単に unlink するだけです。 ``-l'' オプションを使用すると、クロスポストされている記事へのリンクはシンボリック リンクであるとみなします。 この場合、シンボリックリンクが残っている限り元のファイルは削除されません。 ``-e'' オプションを指定した場合、このオプションは無効となります。

-n  innd が動いていなければ、``-n'' オプションを使用し、 expire が ``pause'' や ``go'' コマンドを送らないようにします。 (コマンドの詳細については、 ctlinnd(8) を参照してください。) expire では非常に短い間ですがアクセスの排他が必要となることに留意してください — history ファイルの最後を処理してから新たな記事が到着したかを確認し、新しい history ファイルを本来の history ファイルにリネームするにはこの期間だけで十分です。

-p  expire は history ファイルに記録されている記事が到着した時間を基にどのように処理するかを決めます。 これは、記事がポストされた時間を基に処理を決めるような他の expire プログラムで処理するよりも少し長く記事を保持することがよくあるということになります。 記事がポストされた時間を使用するには ``-p'' オプションを使用してください。

-q  expire は通常 active ファイルに無いニュースグループにポストされている記事の expire についてはその旨のメッセージを出力します。 この処理をしないようにするには、``-q'' オプションを使用します。

-r  history ファイルへのアクセスの排他が必要な場合に、 expire は通常、ローカルの innd(8) デーモンに ``Expiring'' という文字を reason として ``pause'' を送ります。 別の reason を使用したい場合は ``-r'' オプションを使用します。 また、プロセス ID が reason に追加されます。 expire が終了し新しい history ファイルが使用可能になると、``go'' コマンドを送ります。

-s  ``-s'' オプションを使用すると、 expire は終了時にサマリで削除されたすべての記事で使用していた概算の大きさをキロバイトで出力します。

-t  ``-t'' オプションを使用すると、 expire は削除すべきファイルの一覧を標準出力に出力します。 新しい history ファイルは history.n 、 history.n.dir 、 history.n.pag で残ります。 このオプションは ``-n'' と ``-s'' オプションとともに使用するとデバッグ時に有用です。 ``-f'' オプションを使用すると history を使用しないでそのオプションで指定したファイル名を使用することに留意してください。

-v  ``-v'' オプションを使用すると、メッセージを標準出力に出力してプログラムの表示出力を冗長にすることができます。 level は数字で、大きな数字ほど多く出力します。 レベル 1 ではさまざまな処理(新しい history ファイルが生成されていれば)の総計を表示します。 レベル 2 では個々のファイルについてのレポートを表示します。 レベル 5 では処理した各行について複数行に渡るレポートを表示します。

-w  ``-w'' オプションを使用すると、 expire が現在時刻を使用せずに別の時刻で起動していると思わせることができます。 指定する値は正の浮動小数数字で、実行開始時刻からの日にちのオフセットで、単位は一日です。

-x  ``-x'' オプションを使用すると、 expire は、新たな history を作成しません。 これは、expire のポリシを変えると使用するディスク量がどれだけ変わるかを知るために ``-n'' と ``-s'' と ``-t'' オプションと組み合わせる場合に最も有用です。

-z  ``-z'' オプションを使用すると、記事は削除されませんが、 file で指定したファイルにその記事のファイル名が追加されます。 news.daily(8) の delayrm の説明を参照してください。

ファイル名を指定すると、そのファイルを制御ファイルとみなし、 expire.ctl(5) のルールにしたがって解析します。 標準入力からファイルを読み込むには ``-'' を使用することができます。 ファイルが指定されていなければ /var/news/etc/expire.ctl を読み込みます。

履歴
InterNetNews 用に Rich $alz <rsalz@uunet.uu.net> により記述されました。

関連項目
ctlinnd(8)、 dbz(3)、 expire.ctl(5)、 history(5)、 innd(8)、 inndcomm(3)