1

Я не могу работать с этим фиктивным файлом конфигурации (я поместил его в 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 ответа2

1

Я думаю, что нашел ответ на свой вопрос. Проблема была хитрой, потому что « новые версии 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, а не в точное время, которое вы установили.

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

0

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

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

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .