Cron остановил запись в /var/log/cron.log

Месяц назад я установил cron для входа в /var/log/cron.log by изменение /etc/rsyslog.d/50-default.conf . Ведение журнала работало отлично, пока я не изменил разрешения на / var / log (ослабив ограничения разрешений) и не принудил logrotate повернуть журналы, выполнив logrotate --force /etc/rsyslog.d/50- default.conf . С тех пор похоже, что cron перестал регистрироваться. /var/log/cron.log больше не существует. Я выполнил sudo touch /var/log/cron.log, чтобы создать его, но с тех пор осталось 0 байт.

Подробнее о том, что я сделал с разрешениями:

Я запустил sudo chmod 775 / var / log , а затем снова изменил разрешения с помощью sudo chmod 755 / var / log .Похоже, что все остальные службы ведут журнал правильно, и задания cron фактически выполняются (проверено с помощью ps aux | grep rsync , поскольку я запускаю rsync только через cron).

Я не был уверен в правильности прав доступа пользователя и группы для cron.log , поэтому я попытался изменить его на syslog: adm , как и большинство других файлов журналов, но это не помогло, поэтому я снова переключил его на root: root ,

Текущие разрешения на cron.log: -rwxr-xr-x 1 root root 0 27 апреля, 16:34 cron.log

Не уверен, что делать дальше. Я знаю, что могу вести журнал cron в любой файл, который мне нужен (либо добавив >> / path / to / logfile в конец записей задания cron, либо отредактировав /etc/rsyslog.d /50-default.conf), но для единообразия я бы предпочел продолжить запись в cron.log. Я полагаю, я мог бы добавить >> /var/log/cron.log в конец каждой записи cron, но мне это кажется немного взломанным.

РЕДАКТИРОВАТЬ: В соответствии с моим комментарием ниже я изменил местоположение журнала на /tmp/cron.log , и ведение журнала возобновилось. Сначала я предположил, что это означает, что права доступа к папке или файлу неверны. Однако я проверил их на другой машине с тем же дистрибутивом, и права доступа к папке были правильными. Права доступа к файлам были недостаточно строгими, правильные разрешения можно установить с помощью sudo chmod 640 cron.log .

В качестве теста я удалил пустой cron.log, и он больше никогда не создавался. Я изменил конфигурацию rsyslogd, чтобы он регистрировался в crond.log, но файл так и не был создан.

0
29.04.2016, 04:15
0 ответов

Теги

Похожие вопросы