Использование Logrotate для управления файлами журналов

Вступление

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

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

Монтаж

Большинство систем Linux поставляются с Logrotate, установленным по умолчанию. Проверьте, установлен ли он на вашем экземпляре Vultr, введя logrotateкоманду. Вы увидите вывод с версией Logrotate, на которой работает ваш сервер.

Если он не установлен, выполните следующие шаги, чтобы продолжить установку.

В системах Debian / Ubuntu:

sudo apt-get update
sudo apt-get install logrotate

В системах Redhat / CentOS:

sudo yum update
sudo yum install logrotate

Понимание Logrotate

Движущиеся части, которые запускают logrotate:

  • Актуальный инструмент logrotate.

  • Файл конфигурации Logrotate находится по адресу /etc/logrotate.conf. Этот файл содержит конфигурацию для всех файлов журнала, которыми управляет Logrotate.

  • Ежедневное задание cron, /etc/cron.daily/logrotateкоторое запускает команду logrotate на основании настроек в файле конфигурации. Если это задание cron не существует в вашей системе, создайте его и добавьте приведенный ниже фрагмент кода.

    #!/bin/sh
    /usr/sbin/logrotate /etc/logrotate.conf
    

Подробнее о конфигурации

Если вы загляните внутрь /etc/logrotate.conf, вы увидите, что в нем есть строчка include /etc/logrotate.d. Эта строка говорит Logrotate заглянуть внутрь /etc/logrotate.dкаталога и запустить каждый файл конфигурации в нем. В этом каталоге обычно приложения, установленные в вашей системе Linux, добавляют свои конфигурации logrotate. Например, Apache2 обычно создает /etc/logrotate.d/apacheфайл конфигурации после установки.

Управление журналами

Чтобы проверить Logrotate, мы будем:

  • Создайте новый файл журнала испытаний с 1 МБ или случайными данными:

    sudo base64 /dev/urandom | head -c 1000000 > /tmp/testfile.log
    
  • Создайте новую конфигурацию Logrotate, запустив sudo nano /etc/logrotate.d/testlog. Скопируйте следующий фрагмент в пустой файл и нажмите Ctrl + X, чтобы сохранить и выйти.

    /tmp/testfile.log {
        size 1k
        copytruncate
        missingok
        rotate 5
    }
    

Параметры конфигурации в приведенном выше фрагменте инструктируют Logrotate:

  • size 1k: Поворот файла журнала, если размер больше или равен 1 КБ.
  • missingok: Игнорировать сообщения об ошибках, если testfile.logне существует.
  • copytruncateСоздайте копию текущего файла журнала и затем обрежьте ее. Это удобно, когда приложение не может закрыть свой файл журнала, потому что оно постоянно добавляется к нему.
  • rotate 5: ограничить количество обращений к файлу журнала до 5. Это приведет к удалению старых версий файлов журнала более чем на 5 дней.

ПРИМЕЧАНИЕ. Вы можете увидеть все параметры конфигурации для logrotate здесь .

  • Запустите команду Logrotate вручную:

    sudo logrotate /etc/logrotate.conf
    

    После выполнения вышеуказанной команды перечислите все файлы в каталоге tmp, ls -l /tmpчтобы подтвердить, что testfile.log действительно был повернут. Вы должны увидеть список, похожий на следующий, который показывает, что testfile.logон действительно был повернут. Это будет продолжаться каждый день и хранить последние 5 копий.

    [root@vultr ~]# ls -l /tmp
    -rw-r--r--  1 root root       0 Nov 14 23:31 testfile.log
    -rw-r--r--  1 root root 1000000 Nov 14 23:30 testfile.log-20141114
    -rw-r--r--  1 root root     634 Nov 10 00:23 vultr_ipv6
    -rw-------. 1 root root       0 Oct 15 20:44 yum.log
    

Заключение

Журналы могут быстро создавать проблемы на сервере, становясь слишком большими и вызывая проблемы с дисковым прос��ранством. Управление журналами имеет решающее значение для любой системы, но еще лучше автоматизировать это управление. Logrotate позволяет легко вращать, архивировать и удалять журналы.

Автор Лами Адабонян



Leave a Comment

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

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

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше