Как наилучшим образом настроить logrotate для каждого пользователя, чтобы он вращал файлы в домашнем каталоге пользователя под управлением пользователя crontab -e
?
Попробуйте эту процедуру:
создайте /home/user/logrotate
папку
mkdir /home/user/logrotate
создайте /home/user/logrotate/my.conf
файл конфигурации с директивой logrotate, как вы нужно
создать /home/user/logrotate/cronjob
для запуска logrotate каждый день в 2:30 (это пример)
30 2 * * * /usr/sbin/logrotate -s /home/user/logrotate/status /home/user/logrotate/my.conf > /dev/null 2>&1
проверить свой Синтаксис файла конфигурации:
logrotate -d /home/user/logrotate/my.conf
настроить crontab
для запуска logrotate
( Предупреждение : это удаляет существующие записи в вашем crontab. Используйте crontab -e
для вручную добавьте строку из шага 3 в существующий crontab):
crontab /home/user/logrotate/cronjob
После этой последней команды logrotate
будет вращать файл, как описано в /home/user/logrotate/my.conf
, и сохранять статус файла журнала. в /home/user/logrotate/status
.
Использование:
crontab -r # remove crontab activities for user
crontab -l # to list crontab activity for user
crontab -e # edit user crontab entries