savelog(8) ログファイルの保存

書式

savelog [-m mode] [-u user] [-g group] [-t] [-p] [-c cycle] [-l] [-j] [-J] [-1 .. -9] [-C] [-d] [-l] [-r rolldir] [-n] [-q] [-D dateformat] file ...

説明

savelog コマンドは、古いファイルのコピーを保存し、オプションで圧縮を行います。file の古いバージョンは、以下のように名前がつきます。

file.<number><compress_suffix>

<number> は版番号です。0 が最も新しくなります。版番号が > 0 の場合、-l を指定して抑制しない限り圧縮します。版番号 0 は、プロセスがまだ I/O のために開いている可能性があるため、圧縮しません。ファイルを cycle 版までしか保存しません。

ファイルがまだ存在せず、-t を与えられると、ファイルを生成します。

ファイルが存在し、ファイルの長さが 0 バイトより大きい場合、以下のアクションを実行します。

1)
版番号ファイルを循環します。版 file.2 を版 file.3 に移動し、版 file.1 を版 file.2 に移動する、などのようにします。最後に版 file.0 を版 file.1 に移動し、file を削除します。圧縮名・非圧縮名ともに -l に関係なく循環します。見つからない版ファイルは無視します。

2)
-l を与えられた場合、新しい file.1 は圧縮されます。このとき -m, -u, -g の各フラグにより、その対象が変更されます。

3)
メインの filefile.0 に移動します。

4)
-m, -u, -g, -t, -p の各フラグが与えられた場合、そのフラグに該当する空の file を生成します。-p フラグの場合、以前と同じ所有者、グループ、パーミッションで生成します。

5)
新しい file.0-m, -u, -g の各フラグに応じて変更します。

オプション

-m mode
ログファイルを mode に chmod します。-t を暗示します。
-u user
ログファイルを user に chown します。-t を暗示します。
-g group
ログファイルを group に chgrp します。-t を暗示します。
-c cycle
ログファイルの保存する版を cycle までとします (デフォルト: 7)。cycle は 2 以上でなければなりません。
-t
新しいログファイルを生成するよう touch します。
-l
ログファイルを圧縮しません (デフォルト: 圧縮する)
-p
ログファイルの所有者、グループ、パーミッションを保持します。
-j
gzip に代えて bzip2 で圧縮
-J
gzip に代えて xz で圧縮

xz で 強度オプションを与えない場合、xz はデフォルトで物理メモリ量をベースに判断します。xz は、圧縮レベルを高めるために、非常に大きなメモリが必要なことに注意してください。

-1 .. -9
圧縮強度やメモリー使用量 (デフォルト: 9、xz 除く)
-C
強制的な循環ログファイルの一掃
-d
循環に標準日を使用します。
-D dateformat
日付フォーマット ([MMDDhhmm[[CC]YY][.ss]]) の上書き
-r
ファイルの循環をする際に . に代えて rolldir を使用します。
-n
空ファイルを回転しない
-q
静かに

バグ

プロセスが file.0 にまだ書き込んでいる間に、savelog が file.1 に移動して圧縮すると、データを失うことになります。

翻訳

倉澤 望 <[email protected]>, 2012
Debian JP Documentation ML <[email protected]>