web-dev-qa-db-ja.com

Ubuntu 10.04でlogrotateはいつ、どのように実行されますか?

私はシステム管理に慣れていないので、いくつか質問があります。

  1. Logrotateプロシージャはシステムによってどこでどのように開始されますか?
  2. 「毎日の」ローテーションされたログファイルは何時にローテーションされますか?
  3. Prerotateコマンドは、*。logエントリで一致する各ログファイルに対して実行されますか?

ありがとうございました

15
OoJoo

1)以前のHardyインストールでのlogrotateはMikeの回答と同じです

2)/ etc/crontabファイルを見ると、cron.dailyはインストール時に午前6:25に実行されます

3)pre-rotateコマンドがパターンに割り当てられ、ログファイルがそのパターンに一致する場合、はい

11
Matt Simmons

from https://help.ubuntu.com/community/LinuxLogFiles

通常、logrotateはシステム全体のcronスクリプト/etc/cron.daily/logrotateから呼び出され、さらに構成ファイル/etc/logrotate.confによって定義されます。個別の構成ファイルを/etc/logrotate.dに追加できます(たとえば、Apache2およびmysqlの構成が格納されています)。

関連するファイルは次のとおりです。


/etc/cron.daily/logrotate
/etc/logrotate.conf
/ec/logrotate.d/*

Mattと同様に、cron.dailyジョブは私のシステムで午前6:25に開始されますが、実際の実行時間はcron.dailyのジョブ、システムの負荷などによって異なります。

/ etc/cron.daily/logrotateは、logrotate.confファイルを使用してlogrotateを実行します。

「/ usr/sbin/logrotate /etc/logrotate.conf」

/ etc/logrotate.confは/etc/logrotate.dディレクトリを指します:

「/etc/logrotate.dを含める」

/ etc/logrotate.dには、特定のログファイル用の個別のスクリプトが含まれています
これらのファイルの場合、中括弧内のアクション(回転、圧縮など)は、各ブロックの先頭で定義されたファイルに対して実行されます。ワイルドカードが許可されているため、「/ var/log/* log」のようなものは、.logサフィックスで終わる/ var/log /内のすべてのファイルに影響を与えるはずです。
prerotateが '/ var/log/* log'に属するブロックで使用されるキーワードの1つである場合、それらのファイルではprerotateコマンドが実行されますが、「ログが実際に実行される場合のみ回転しました。 "(fromman logrotate

7
belacqua

以下を見てください

/etc/cron

ls /etc/cron.daily

RedHatでは

/etc/cron.daily/logrotate
2
Mike