2014-12-10 7 views
1

У меня есть следующие настройки: удалены строки флуда /var/log/maillog из /etc/logrotate.d/syslog файла, и добавил следующее в /etc/logrotate.conf файле:Rotate файл в зависимости от размера

... 

# system-specific logs may be also be configured here. 

/var/log/maillog 
{ 
    missingok 
    notifempty 
    nocompress 
    size=50k 
    postrotate 
     touch /var/log/maillog 
    endscript 
} 

Почему в touch /var/log/maillog линия никогда не получить выполняется, когда размер файла достигает 50 тыс.?

+0

Что вы видите для этого файла, если вы запустите 'logrotate -d/etc/logrotate.conf'? –

+0

... 'чтения конфигурации данные для/вара/Журнал/maillog' ... ' вращающегося шаблона:/MAILLOG 51200 байт (10 оборотов) пустых файлы журнал/вар/войти не поворачиваются, старые журналы удален рассматривает журнал/VAR/журнал/MAILLOG потребности лога вращающуюся вращая бревно/вар/журнал/MAILLOG, лог-> rotateCount 10 dateext суффикса '-20141210' Глоба модель «- [0-9] [0- 9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] ' Назначение/var/log/maillog-20141210 уже существует, пропуская вращение – Jay

+0

Мне кажется, эта последняя строка кажется ключевым. 'destination/var/log/maillog-20141210 уже существует, пропуская ротацию' Я не уверен, как это должно работать с расширениями дат. –

ответ

2

Поскольку можно использовать несколько оборотов в течение дня при использовании связанного с ограничением размера вращения, это не логично использовать опцию dateext. Из вашего комментария, показывающего результат logrotate -d /etc/logrotate.conf, похоже, что он включен.

Вы можете отключить dateext в блоке, добавив nodateext. Теперь конфигурация будет:

... 

# system-specific logs may be also be configured here. 

/var/log/maillog 
{ 
    missingok 
    notifempty 
    nocompress 
    size=50k 
    nodateext ## ADD THIS LINE ## 
    postrotate 
     touch /var/log/maillog 
    endscript 
}