Rsyslog не создает файлы журналов

9

Я защищаю виртуальную машину Ubuntu 14.04 до стандартов CIS и у меня возникают проблемы с получением rsyslog для создания необходимых файлов.

Примечание: с Linux я становлюсь лучше, но я пока не мастер, прошу прощения за незнание.

Я вставил файл /etc/rsyslog.d/CIS.conf со следующим содержимым:

*.emerg :omusrmsg:*
mail.* -/var/log/mail
mail.info -/var/log/mail.info
mail.warning -/var/log/mail.warn
mail.err /var/log/mail.err
news.crit -/var/log/news/news.crit
news.err -/var/log/news/news.err
news.notice -/var/log/news/news.notice
*.=warning;*.=err -/var/log/warn
*.crit /var/log/warn
*.*;mail.none;news.none -/var/log/messages
local0,local1.* -/var/log/localmessages
local2,local3.* -/var/log/localmessages
local4,local5.* -/var/log/localmessages
local6,local7.* -/var/log/localmessages

Я также изменил /etc/rysyslog.conf. Содержание таким образом:

$ModLoad imuxsock # provides support for local system logging
$ModLoad imklog   # provides kernel logging support

$KLogPermitNonKernelFacility on

$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

$RepeatedMsgReduction on

$FileOwner syslog
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$PrivDropToUser syslog
$PrivDropToGroup syslog

$WorkDirectory /var/spool/rsyslog

$IncludeConfig /etc/rsyslog.d/*.conf

повторяющееся содержимое / var / log / syslog:

Apr  6 10:03:10 ubuntu rsyslogd-2039: Could no open output pipe '/dev/xconsole': No such file or directory [try http://www.rsyslog.com/e/2039 ]
Apr  6 10:15:17 ubuntu rsyslogd: [origin software="rsyslogd" swVersion="7.4.4" x-pid="3074" x-info="http://www.rsyslog.com"] exiting on signal 15.
Apr  6 10:15:17 ubuntu rsyslogd: [origin software="rsyslogd" swVersion="7.4.4" x-pid="3152" x-info="http://www.rsyslog.com"] start
Apr  6 10:15:17 ubuntu rsyslogd: rsyslogd's groupid changed to 104
Apr  6 10:15:17 ubuntu rsyslogd: rsyslogd's userid changed to 101

Я попытался закомментировать строку xconsole в /etc/rsyslog.d/50-default.conf, а затем перезапустить rsyslog. После этого я не вижу никаких ошибок xconsole.

Что еще я могу сделать, чтобы попытаться определить, почему rsyslog не создает эти файлы?

Спасибо!

JaReg
источник
не уверен насчет rsyslog, но классический syslog используется для отказа в создании исходного файла; ты должен был touchэто сделать первым. rsyslog может делать то же самое и / или может иметь флаг / переключатель поведения, который позволяет ему создавать файл.
Джефф Шаллер
может быть, это другой «rsyslogd», но linux.die.net/man/5/rsyslog.conf говорит, что путь к файлу должен начинаться с «/» - перед вами стоит дефис. Помогает ли удаление гипса?
Джефф Шаллер
rsyslog.com/doc/v8-stable/compatibility/… говорит об этом подробнее. Не уверен, что именно «если rsyslogd находит строки селектора синхронизации, он игнорирует их по умолчанию» означает - если он игнорирует дефис или игнорирует всю строку селектора.
Джефф Шаллер
Я протестировал удаление - и это не похоже на работу
JaReg

Ответы:

8

Создайте /dev/xconsoleи установите правильное владение и права доступа:

sudo touch /dev/xconsole
sudo chgrp syslog /dev/xconsole
sudo chmod 664 /dev/xconsole

Перезапустите rsyslogсервис следующим образом:

Убунту 14.04

sudo service rsyslog restart

Ubuntu 16.04 и выше, с использованием systemd

sudo systemctl restart rsyslog

Убедитесь, что сообщение об ошибке больше не появляется:

tail -n100 /var/log/syslog | grep rsyslog
venzen
источник
0

Возможно, это проблема с правами доступа к папке / dev / xconsole. Попробуйте использовать, chmodчтобы изменить разрешение и перезапустить его. Это может сработать.

Starstruck
источник