NEWSYSLOG(8)

名称
newsyslog - システムのログファイルを保守し、適切なサイズに保つ

書式
newsyslog [-Fnrv] [-f config_file]

解説
newsyslog は cron(8) から定期的に実行されるようにスケジュールされるべきプログラムです。 実行されると、 newsyslog は必要に応じてログファイルを保存(アーカイブ)します。 あるログファイルを保存する必要があると判断すると、 newsyslog は、``logfile'' が空になり、``logfile.0'' に前回のログファイルが入り、 ``logfile.1'' に前々回のログが入り‥‥ といった具合に、 ユーザが指定した数の保存ログが残るよう、ファイルを再編します。 オプションにより、保存ログを圧縮してスペースを節約することもできます。

ログが保存される場合には 2 つの理由があります。 そのログファイルのサイズが予めセットしておいたキロバイト数より大きくなった、 もしくは、前回ログを保存してから指定した時間が経過した、という理由です。 newsyslog の粒度は、このコマンドが cron(8) からどの程度の頻度で実行されるかに依存しています。 newsyslog の実行は十分速いので、毎時間実行するようにスケジュールしても 悪影響はありません。

起動されると、 newsyslog は設定ファイルを読み込んで、 どのログファイルをチェックすべきかを決定します。 デフォルトでは、このコンフィギュレーションファイルは /etc/newsyslog.conf です。 コンフィギュレーションファイルの各行には、 newsyslog が処理すべき特定のログファイルに関する情報を記述します。 各行は 5 つの必須フィールドと、3 つのオプションフィールドから成り、 それらは空白で区切られています。 空行や ``#'' で始まる行は無視されます。 コンフィギュレーションファイルの各フィールドは以下の通りです:

logfile_name
    保存するシステムログファイル名。

owner.group
    保存ファイルの所有者とグループ名を指定します。 owner あるいは group が空白のままである場合でも "." は必須です。 指定は数値、あるいは /etc/passwd か /etc/group にある名前で行います。

mode
    ログファイルと保存ログファイルのモードを指定します。

count
    ログファイルそのものに加えて保存しておく保存ファイルの数を指定します。

size
    ログファイルのサイズが size に達すると、ログファイルは上記のように入れ換えられます。 このフィールドが * で置き換えられると、ログファイル入れ換えに際して そのサイズは考慮されなくなります。

interval
    interval 時間(60 分×interval の意)が経過すると、ログファイルが入れ換えられます。 このフィールドが * で置き換えられると、前回の入れ換えからの経過時間は考慮されません。

flags
    このフィールドはオプションであり、 保存に際してログファイルに特別な処理を行うかどうかを指定します。 Z フラグを指定すると、スペース節約のために 保存ファイルは gzip(1) で圧縮されます。 B フラグはファイルがバイナリファイルであることを指示し、 ログファイルが入れ換わったという意味で newsyslog が挿入する ASCII メッセージを含めないようにします。 - は何も意味しませんが、 path_to_pid_file フィールドが指定された場合には埋め草として使用可能です。

path_to_pid_file
    このオプションのフィールドは、 デーモンのプロセス ID を調べるために読むファイルを指定します。 このフィールドが存在する場合、 このファイルに書かれたプロセス ID に signal_number が送られます。 正しく認識するために、このフィールドは "/" から開始する必要があります。

signal_number
    このオピションフィールドは、 デーモンプロセスに送られるシグナル番号を指定します。 デフォルトで SIGHUP が送られます。

オプション
newsyslog では以下のオプションが利用できます:

-f config_file
    コンフィギュレーションファイルとして /etc/newsyslog.conf に代えて config_file を使用します。

-v  newsyslog を詳細情報出力モードにします。 このモードでは、ログを入れ換えるあるいはそれをスキップするたびに、 そのログファイル名と理由を表示します。

-n  実際にログの入れ換えは行わず、このオプションが指定されない場合に 本来行うはずの処理内容を表示します。

-r  newsyslog は root として動作しなければならない、という制約を取り除きます。 もちろん、 newsyslog は syslogd(8) に HUP シグナルを送れなくなりますから、 このオプションはデバッグにのみ用いるべきです。

-F  ログを入れ替える条件に合致しないとしても、強制的に newsyslog にログを入れ替えさせます。 システムの問題を診断しているときには、 このオプションの使用により、 問題のみを含む新しいログを提供できるので有用です。

関連ファイル
/etc/newsyslog.conf
    newsyslog のコンフィギュレーションファイル

バグ
セキュリティ侵害を見つけるためにログを自動的に読むことは、 まだ行っていません。

作者
Theodore Ts'o, MIT Project Athena

Copyright 1987, Massachusetts Institute of Technology

関連項目
gzip(1), syslog(3), syslogd(8)