Со временем журналов в Linux становится очень много. Они занимают немало места и негативно могут влиять на производительность всей системы. Вручную управлять ими очень сложно и нецелесообразно. Куда правильнее – установить утилиту Linux Logrotate, которая позволит автоматизировать процесс.

Что такое Logrotate?
Речь идет об утилите, которая позволяет осуществлять ротацию и сжатие журналов. Это препятствует разрастанию логов до таких объемов, что они начинают влиять на скорость работы системы. Требуется задать для Logrotate конфигурацию, чтобы процесс работы с логами был автоматизирован. Если их задать неверно, то логи некоторых сервисов могут занять существенное место на устройстве.
Важно. Linux Logrotate уже предустановлена на Ubuntu 16.04 и на более новых версиях. Если пользователь использует устаревшую версию Ubuntu или другой дистрибутив, где нет данной утилиты, то ее можно легко установить.
Основные преимущества Logrotate следующие:
- автоматизация обработки системных и несистемных журналов;
- возможность своевременно удалять устаревшую информацию из логов;
- гибкость и простота настроек;
Если использовать этот софт совместно с другими программами, направленными на управление логами, то удастся более эффективно управлять имеющимися записями о работе системы и пользователя.
Стоит подробнее рассмотреть, как работать с данной утилитой для экономии дискового пространства.
Установка Logrotate в Linux
Утилита находится в большинстве дистрибутивов OS Linux. В зависимости от используемой версии ОС, необходимо задать соответствующую команду для начала установки.
В Debian или Ubuntu:
sudo apt install logrotate
В Fedora или CentOS:
sudo yum install logrotate
После завершения можно проверить установку с помощью команды:
logrotate --version
Управление файлами журнала с помощью Logrotate
Конфигурационный файл создается демоном logrotate – /etc/logrotate.conf. В нем содержится базовая информация, которая не требует изменений. Однако для некоторых сервисов нужно задавать настройки вручную. В каталоге /etc/logrotate.d/ в отдельных конфигурационных файлах задается персональная ротация для каждого приложения. Тут есть настройки для пакетов rsyslog, apport, dpkg и других. Администратор может добавлять новые файлы, чтобы осуществлялась ротация логов Linux. После добавления они тоже будут обрабатываться.
Задавая настройки, необходимо обращать внимание на следующее:
- Периодичность выполнения ротации (команды привычные – daily, monthly, weekly).
- Rotate X, где X – количество журналов, которые будут храниться в автоматическом режиме.
- Compress требуется, чтобы сжать логи с использованием технологии gzip.
- Notifempty предполагает, что файл не будет ротирован, если он пустой.
- Missingok – если системный журнал отсутствует, то ошибка не будет фиксироваться.
- Delaycompress – при использовании этой команды последний журнал не будет подвержен сжатию до следующего запуска утилиты. Команду требуется использовать вместе с compress.
- Postrotate/endscript – возможность задать команды, которые будут выполняться при соблюдении определенных условий.
Настройки довольно простые. Более подробную информацию можно прочитать в файле manual. После обновления настроек требуется осуществить перезапуск Logrotate.
Конфигурация Cron
Cron каждый день запускает данную утилиту, чтобы проверить наличие журналов для обработки. В файле /etc/cron.daily/logrotate можно вручную указать все необходимые правила для выполнения автоматической ротации. Такой подход позволяет автоматизировать работу и снизить нагрузку на администратора.
Важно. Рекомендуется в настройках прописать время включения утилиты, когда нагрузка на систему минимальная. Например, во время обеденного перерыва, чтобы не мешать пользователю работать.
Проверка состояния Logrotate
Проверить работоспособность программы можно через файл logrotate.status. Там указывается, когда именно происходила последняя ротация, и какой именно файл подвергся обработке.
Важно. В старых версиях Linux местонахождение файла может отличаться.
Заключение
Logrotate считается очень простым в использовании инструментом, который помогает предотвратить разрастание журналов до такой степени, что они начнут занимать много места на компьютере или ином устройстве, которое работает на ОС Linux. Установка занимает мало времени, а настройки интуитивно понятны.

