Зависит ли logrotate от cron?

На странице управления logrotate они говорят:

Msgstr "Обычно logrotate запускается как ежедневное задание cron".

Означает ли это, что logrotate использует cron (или выполняется cron)? Если так, значит ли это, что если я не настрою задание cron через crontab (например), logrotate не будет работать?

2 ответа

Вы можете запустить logrotate вручную без cron.

logrotate <configuration file>

Однако, если вы хотите запускать logrotate по расписанию, да, вам понадобится cron.

Ваш менеджер пакетов должен создать расписание по умолчанию в /etc/cron.daily/logrotate, которое запускает logrotate с конфигурацией по умолчанию /etc/logrotate.conf. Вы также можете поместить свои пользовательские конфигурации в /etc/logrotate.d/, поскольку в конфигурации по умолчанию есть строка, включающая все конфигурации в этом каталоге.

include /etc/logrotate.d

Если вы хотите запустить logrotate с настраиваемым расписанием, вы можете поместить свою работу cron в /etc/cron.d/.

Например, это будет запускать logrotate с использованием конфигурации /etc/custom-logrotate.conf каждый день в два часа.

0 2 * * * root /usr/sbin/logrotate /etc/custom-logrotate.conf

Проверьте crontab гуру, если вам нужна помощь с выражением cron.

Да, обычно, cron ежедневно выполняет logrotate. Я зависит от вашего linux-дистрибутива, но нормальным является запуск cron.

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

Если вы используете docker, это может вызвать некоторые проблемы, в настоящее время cron не запускается внутри контейнера.

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