web-dev-qa-db-ja.com

Ubuntu Server 14.04 LTSのホームディレクトリにあるログファイルのローテーション

ircd.log/home/ircというログファイルがあります。

毎日00:00にローテーションし、7日間保持したいです。

ローテーションされたログファイルをircd.log.YYYYMMDDとして保存します(例:ircd.log.20140505)。

誰かが使用するパッケージとこれに基づくサンプルの構成を教えてもらえますか?この構成をユーザーレベルで保存することもできますか?

4
user2656114

@bainが述べたように、パッケージはlogrotateと呼ばれます。前述のようにこのファイルをローテーションするには、/etc/logrotate.d/ircで次の構成を使用できます。

/home/irc/ircd.log {
    daily
    rotate 7
    compress
    missingok
    create 0644 irc irc
    su irc irc
}

構成オプションの内訳:

  • dailyオプションは、実行時に毎日このファイルを処理するようlogrotateに指示します。
  • rotate 7オプションは、7つのコピーを保持するように指示します。
  • compressオプションは、gzipに古いファイルを指定します。
  • missingokは、logrotateがない場合に文句を言わないように指示します。
  • createは、ファイルの作成時に使用するモード、所有者、およびグループを示します。
  • suは、圧縮などを実行するユーザーを変更するため、圧縮を含めたくない場合があります
6
jkt123

必要なパッケージは「logrotate」と呼ばれます。 manページ には例があります。検索すると、Webで多くのチュートリアルが見つかります。

3
bain