Как работает logrotate?

Я пытаюсь отслеживать файл журнала, который часто вращается с помощью logrotate. но я не могу понять это правильно. Кто-нибудь может объяснить, как на самом деле работает logrotate?

Переименован ли файл и создан ли новый файл?

или файл скопирован с новым именем и текущий файл очищен?

Перед ротацией:

131887 -rw-r--r-- 1 root root  11385 Sep 25 03:40 /var/log/sas.log

После поворота:

131887 -rw-r--r-- 1 root root  0 Sep 25 04:40 /var/log/sas.log

131911 -rw-r--r-- 1 root root   11385 Sep  25 04:40 /var/log/sas.log.1
0
задан 7 October 2015 в 10:28

2 ответа

После вращения текущий файл журнала перемещен и возможно сжат, если это указано. Затем это создается снова. [ища источник кроме моего опыта]

, Который является проблемой, если услуга работает, которому открыли файл журнала во время вращения. Файл будет несвязанным, но дисковое пространство не действительно освободило, потому что файл все еще открыт.

Именно поэтому сервисы часто устанавливают более тщательно продуманный logrotate сценарий, обрабатывающий вращение. Как взгляд в качестве примера /etc/logrotate.d/nginx поведение вращения определения для nginx веб-сервер:

[....]
postrotate
    invoke-rc.d nginx rotate >/dev/null 2>&1
endscript

postrotate блок выполняется после того, как новый файл журнала был создан. Это вызывает сервисный сценарий nginx с rotate, сообщение сервису к вновь открыло свой файл журнала .

0
ответ дан 7 October 2015 в 20:28
  • 1
    Привет GAD3R, я следовал Вашим последним инструкциям. К сожалению, это все еще не сделало разрешенный. В течение очень краткого момента, только возможно, 5 секунд, сеть, подключенная к моему Wi-Fi. Тогда это разъединилось. У меня был нетбук, выполнил LXLE (Ubuntu 14.04.4 LTS (ядро: Linux 3.13.0-92). Это никогда не имело проблему соединения Wi-Fi. Я читал в некоторых потоках, 16.04, кажется, имеет, приостанавливают и не может возобновить соединение Wi-Fi. Есть ли решения для этого? – user634938 27 December 2016 в 21:11

Если усеченная опция будет включена в конфигурационном файле, то файл не будет перемещен - его содержание будет только скопировано в другой файл, который недавно создается, и текущий файл будет очищен, таким образом, inode идентификатор не изменится. На самом деле файл никогда не изменяется.

0
ответ дан 7 October 2015 в 20:28
  • 1
    Попробуйте эту команду echo "options ath5k nohwcrypt=1" | sudo tee /etc/modprobe.d/ath5k.conf, тогда перезагружают драйвер – GAD3R 27 December 2016 в 01:33

Другие вопросы по тегам:

Похожие вопросы: