Logrotateは、ファイルサイズが制限を超えた後、ファイルをローテーションしません。


9

logrotateマンページから。

ログの基準がログのサイズに基づいていない限り、1日に2回以上ログを変更することはありません。

manページによると、設定がログのサイズに基づいている場合、logrotateはファイルをローテーションする必要があります。しかし、ファイルサイズが100kを超える場合でも、ファイルが取得されません。

誰かが問題が何であるかを指摘できますか?

私の構成

/home/jetech/work/lampstack-5.3.9-0/apache2/logs/access_log  {
    copytruncate
    compress
#    dateext
    rotate 365
    size 100k
    olddir /home/jetech/work/lampstack-5.3.9-0/apache2/old_logs
    notifempty
    nomail
    missingok
}

回答:


17

ファイルが回転していないことをどのようにして知るのですか?

私が持っているDebian 6 Linodeでは、デフォルトの構成でlogrotatecron、1日に1回だけ実行されるようにスケジュールされていました。1日に1回のみ実行する場合、当然、構成を確認し、比較を行い、必要なローテーションを実行する機会は1日1回だけです。

それで、実際にlogrotateを実行しているのですか?あなたのチェックしたいかもしれません/etc/cron*し、/etc/cron*/*実行するようにスケジュールされたときに、どのように頻繁にlogrotateの見るために。

たとえば、logrotateスクリプトがにある場合/etc/cron.daily、に移動する/etc/cron.hourlyか、1時間ごとでは不十分な場合は/etc/cron.d/、次の内容のファイルを作成して、logrotate10分ごとに実行します。

*/10  *  *  *  *   root    /usr/sbin/logrotate /etc/logrotate.conf

0

だからlogrotate実際はこのように機能し、

  • 構成では、実行頻度を指定します(毎日毎時毎月
  • logrotateを実行する/etc/cron.xxxためのエントリがあります
  • logrotatecrontabを介して実行されます

あなたが言及した場合は、毎日一定の時間(の/ etc / crontabの)で、毎日、crontabのプロセスが実行されますlogrotateを回転するためのプロセスを。そのため、プロセスが実行されないため、ファイルサイズの制限は機能しません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.