Войти в SUSE Enterprise Server

Я не могу работать с этим фиктивным файлом конфигурации (я поместил его в etc/logrotate.d):

/var/log/test_log/mylogfile {
copytruncate
dateext
rotate 3
compress
missingok
size=+2
}

Я пишу в журнал (echo "hello world" > /var/log/test_log/mylogfile), но он просто не работает.

Выполнение cat / etc / crontab показывает:

# check scripts in cron.hourly, cron.daily, cron.weekly, and cron.monthly
#
-*/15 * * * *   root  test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1

Позже я перенаправил вывод на таким образом:

-*/15 * * * *   root  test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons > /var/log/test_log/log_logrotate

Но ничего не случилось.

Должен ли я добавить еще одну строку в etc / crontab, чтобы cron.dayly происходил примерно так же, как в Ubuntu:

25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )

или проблема может быть в файле /usr/lib/cron/run-crons??

Я нахожусь под SUSE Linux Enterprise Server 11 SP2

2 ответа

Решение

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

Похоже, что теперь Cron состоит из скрипта usr / lib / cron / run-crons, который проверяет, является ли cron.dayly в /var/spool/cron/lastrun/ старше одного дня (по умолчанию он проверяет, больше ли он или ровно 1440 минут с момента последнего запуска). Или, если мы хотим, чтобы cron.dayly запускался в фиксированное время, мы должны установить DAILY_TIME переменная в файле /etc/sysconfig/cron для времени (то есть:"12:00"), и она будет выполняться в это время ежедневно (в течение 15 минут).

Примечание (из комментариев /etc/sysconfig/cron): из-за того, что скрипт cron запускается только каждые 15 минут, он будет работать только в xx:00, xx:15, xx:30, xx:45, а не в точное время, которое вы установили.

Я нашел ответ здесь:

logrotate запускается либо когда задан период времени weekly, daily и так далее, или в случае размера, когда размер файла превышает заданный размер.

Просто положи туда size=2, вместо size=+2и это должно работать.

размер размер

Файлы журнала вращаются, когда они становятся больше, чем размер байтов. Если размер сопровождается М, размер считается в мегабайтах. Если используется k, размер указывается в килобайтах. Таким образом, размер 100, размер 100k и размер 100M действительны.

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