logrotate -d で logrotate の状態を調査する
この最後のステップでは、logrotate
コマンドに -d
オプションを使用して「ドライラン」を実行する方法を学びます。ドライランは、logrotate
が実際に実行するアクションをシミュレートしますが、実際には何も実行しません。これは、logrotate
の設定をテストし、logrotate
が実際に実行されたときに何が起こるかを理解するのに非常に役立ちます。
-d
オプションは「デバッグ」または「ドライラン」を意味します。このオプションを使用すると、logrotate
は設定ファイルを読み取り、実行する内容を報告しますが、ファイルを変更したり、ログをローテーションしたりすることはありません。
logrotate
は通常、/var/log
のようなシステムディレクトリ内のログファイルにアクセスして変更するために root 権限が必要です。そのため、必要な権限で logrotate
を実行するには sudo
コマンドを使用する必要があります。この環境では、labex
ユーザーはパスワードを必要とせずに sudo
権限を持っていることを忘れないでください。
以下のコマンドをターミナルに入力し、Enter キーを押します。
sudo logrotate -d /etc/logrotate.conf
このコマンドを分解してみましょう。
sudo
: スーパーユーザー権限でコマンドを実行します。
logrotate
: ログファイルを管理するコマンドラインユーティリティです。
-d
: ドライラン(デバッグモード)を実行するオプションです。
/etc/logrotate.conf
: logrotate
が読み取るメインの設定ファイルです。
このコマンドの出力は非常に詳細になります。logrotate
が対象としているログファイル、それらに適用される設定指示、および現在の状態と設定に基づいてローテーションが必要かどうかが表示されます。
メインの設定ファイルと /etc/logrotate.d/
から含まれるファイルの処理の詳細が出力されます。各ログファイルについて、ローテーションが必要かどうかとその理由(例:サイズ、日付)が示されます。
出力の例として、次のような行が含まれる場合があります。
reading config file /etc/logrotate.conf
including /etc/logrotate.d
reading config file apt
...
rotating pattern: /var/log/apt/term.log /var/log/apt/history.log weekly
...
considering log /var/log/apt/term.log
log does not need rotating
considering log /var/log/apt/history.log
log does not need rotating
...
この出力は、logrotate
が apt
の設定を読み取り、そのログファイルは現在ローテーションする必要がないと判断したことを確認しています。
logrotate -d
を使用することは、新しいまたは変更された logrotate
設定をデプロイする前に、ログファイルに意図しない問題を引き起こすことなく期待どおりに動作することを確認するための重要なステップです。
これで、メインの logrotate
設定を調査し、個々の設定ファイルを表示し、logrotate
がどのように動作するかを確認するためのドライランを実行することに成功しました。
Continue をクリックしてこの実験を完了します。