Назад | Перейти на главную страницу

Logcheck не имеет разрешения на чтение файлов журнала

Я использую logcheck для отслеживания файлов журналов, но вместо получения отчетов по электронной почте я хочу отправлять их на улицу с помощью сценария bash.

Итак, я использовал -o:

sudo -u logcheck /usr/sbin/logcheck -o 2>&1 | myscript with curl

но я получаю следующую ошибку:

Ошибка: не удалось запустить журнал или сохранить вывод.

После некоторого теста я увидел, что пользователь logcheck не имеет разрешения на чтение файлов журнала, даже если он является частью группы adm.

Конечно, logcheck не может быть запущен как пользователь root или пользователь с привилегиями root.

Кто-нибудь пользуется этим пакетом и может мне помочь?

Centos 7 с регистрацией от epel.

Использовать logcheck без прав root вам необходимо убедиться, что logcheck пользователь находится в adm группа (как вы уже обнаружили).

Кроме того, в Centos и, возможно, других дистрибутивах на основе Redhat вам необходимо убедиться, что файлы журналов принадлежат группе adm, т.е. выполнить chgrp adm в этих файлах журнала и сделайте файлы журнала доступными для чтения группой (chmod g+r). Сделав это один раз, logrotate должен воссоздать файлы журнала с тем же владельцем / группой / разрешениями, что и повернутые файлы, чтобы сохранить ваши изменения. Если это не так, убедитесь, что create вариант в /etc/logrotate.conf и /etc/logrotate.d/* не имеет дополнительных параметров, которые переопределяли бы исходные значения.

В дополнение к ответу, опубликованному @wurtel, logcheck должен написать .offset файлы. Нам нужно создать их и сделать их доступными для чтения и записи только для пользователя logcheck:

touch /var/log/messages.offset
chmod 600 /var/log/messages.offset
chown logcheck /var/log/messages.offset

touch /var/log/secure.offset
chmod 600 /var/log/secure.offset
chown logcheck /var/log/secure.offset