Установка и настройка Logrotate в CentOS 8

Журналы (логи) играют важную роль в сборе разнообразной информации. Они очень полезны при устранении различных проблем. Хотя иногда работа с журналами (логами) может быть неудобной, но они становятся незаменимыми инструментами при решении проблем. В данной статье мы покажем процесс установки и настройки logrotate в операционную систему CentOS 8.

Logrotate — это утилита в Unix подобных системах, предназначенная для управления и ротации (циклической перезаписи) журналов (логов). Приложение позволяет автоматически архивировать и очищать старые журналы. Это позволяет предотвратить их неограниченный рост и экономить место на диске.

Logrotate обычно используется для обработки системных журналов, таких как журналы системы, аутентификации, веб-сервера и других приложений. Он позволяет настраивать параметры ротации, такие как частота ротации, количество архивируемых файлов, сохранение или удаление старых журналов, сжатие архивов и многое другое.

И так давайте я покажу как выполняется установка и настройка Logrotate в CentOS 8.

Установка и настройка Logrotate в CentOS 8

Сначала требуется обновить систему.

dnf -y update

Далее установите logrotate, сделать это можно с помощью следующей команды.

yum install -y logrotate

Установка Logrotate
Установка Logrotate

После установки проверьте версию logrotate, для этого введите команду.

logrotate --version

Проверка версии Logrotate
Проверка версии Logrotate

Если вы получили примерно такой ответ, то значит все отлично и можно переходить к настройке.

Настройка Logrotate

Конфигурацию Logrotate можно проверить и отредактировать в конфигурационном файле. Данный файл располагается по адресу «/etc/logrotate.conf«. Давайте откроем его.

nano /etc/logrotate.conf

Файл конфигурации Logrotate в CentOS
Файл конфигурации Logrotate в CentOS

Теперь в качестве примера мы будем использовать logrotate. Мы установим расписание ротации журнала, количество ротаций файлов журнала, ограничение размера файлов журнала и другие параметры.

Файлы Logrotate будут располагаться по такому пути «/etc/logrotate.d/httpd«.

/var/log/httpd/*log {
daily
rotate 3
size 5M
missingok
notifempty
sharedscripts
delaycompress
postrotate
/bin/systemctl reload httpd.service > /dev/null 2>/dev/null || true
endscript
}

  • daily: устанавливает ротацию ежедневно.
  • rotate 3: указывает количество сохраняемых файлов журнала во время ротации.
  • size: активирует ротацию файлов журнала только при достижении указанного размера в байтах.
  • missingok: при отсутствии файла журнала переходит к следующему без выдачи ошибки.
  • notifyempty: не производить ротацию журнала, если он пустой (отменяет опцию ifempty).
  • sharedscripts: скрипты выполняются только один раз, независимо от количества журналов, соответствующих шаблону, и передаются им.
  • delaycompress: задерживает сжатие предыдущего файла журнала до следующей ротации.

Далее вы можете проверить функцию ротации журналов, для этого выполните следующую команду.

logrotate -d /etc/logrotate.d/httpd

Проверка ротации логов
Проверка ротации логов

Ну вот в принципе и все, вы установили Logrotate на CentOS и можете использовать его.

Nazario

Я — Nazario, создатель и автор сайта linuxwin.ru, специализируюсь на информационных технологиях с акцентом на системное администрирование Linux и Windows, веб-разработку и настройку различных систем.

Linux и Windows
Выскажите своё мнение или присоединяйтесь к обсуждению:

Отправляя комментарий, вы даете согласие на обработку ваших данных в соответствии с политикой конфиденциальности и даёте согласие на их использование.