GNU/Linux >> Linux の 問題 >  >> Linux

CentOS / RHEL :logrotate を使用して /var/log/wtmp および /var/log/btmp ファイルをローテーションする方法

前回」のログイン記録 ‘ コマンドはデータ ファイル ‘/var/log/wtmp に保存されます '。コマンド「last」は、このデータ ファイルを解析し、出力を返します。別のデータ ファイル「/var/log/btmp」の規定もあります。 ‘ lastb コマンドを使用して読み取ることができる不正なログインを保存するために作成されます

logrotate を使用して wtmp/btmp ファイルをローテーションする

大量のログ ファイルで「/var/log」ファイル システムがいっぱいになるのを防ぐために、logrotate と呼ばれる機能があります。毎日の cron ジョブは、この logrotate を 1 日に 1 回呼び出します。 Logrotate は、構成ファイル「/etc/logrotate.conf」を参照して、どのログ ファイルをいつローテーションする必要があるかを指示します。

Logrotate の構成ファイルは「/etc/logrotate.conf」です。 '。 Logrotate は、/var/log/wtmp のローテーションを処理します。 wtmp は特定のパッケージによって所有されていないため、その logrotate 構成は /etc/logrotate.d ではなく、直接 /etc/logrotate.conf にあります。

デフォルトの構成は次のとおりです:

/var/log/wtmp {
    monthly
    create 0664 root utmp
    rotate 1
}

wtmp をより頻繁にローテーションさせる (したがって、大きくなりすぎないようにする) には、ローテーションの頻度を月単位から週単位に変更するか、ローテーションのサイズベースのしきい値を設定します。

logrotate 構成の例
1.システムに 1 年間のログイン情報を保持するには、「/etc/logrotate.conf」を編集して以下の構成にします:

/var/log/wtmp {
    monthly
    create 0664 root utmp
    rotate 1
}

以下に示すように、「月単位」のローテーションを「年単位」に変更するか、「月単位」のままローテーション カウントを 13 に変更します。

/var/log/wtmp {
    yearly
    create 0664 root utmp
    rotate 1
}

または

/var/log/wtmp {
    monthly
    create 0664 root utmp
    rotate 13
}

古い wtmp ファイルの読み取り

ローテーションされた古いファイルから「最後の」コマンドを読み取るには、次のようにコマンドを実行します。

# last -f [path to rotated file]


Linux
  1. Linuxは複数の連続したパスセパレーター(/ home //// username /// file)をどのように処理しますか?

  2. ログファイルに何が追加されているかをリアルタイムで確認する便利な方法は何ですか?

  3. /var/log/messages、/var/log/syslog、および/var/log/kern.logの違いは?

  1. CentOS / RHEL 5,6 で /tmp および /var/tmp ディレクトリ内のファイルの自動削除を無効にする方法

  2. /var/log/lastlog ファイルを切り詰める方法

  3. /var/www/... の Django static_root - collectstatic へのアクセス許可がありません

  1. /dev/shm/ と /tmp/ はいつ使用する必要がありますか?

  2. logrotate 構成ファイルの構文 - 複数のワイルドカード エントリが可能ですか?

  3. unix:///var/run/supervisor.sock そのようなファイルはありません