Ведение журнала системы Ubuntu 14.04

Ведение журнала системы Ubuntu 14.04

Я настроил Ubuntu 14.04 Server (из Ubuntu 12.04 Server), но сегодня я хотел посмотреть в , auth.logно этот файл не используется. Кажется, что ´syslog´ был удален.

Как Ubuntu 14.04 ведет лог? Мне это нужно для сервера.

Спасибо.

решение1

14.04 использует rsyslog. Когда я обновился с 12.04 до 14.04, мне пришлось сменить владельца файлов журнала /var/logс rootна syslog.

( /etc/rsyslog.confВладелец определяется как

$FileOwner syslog
$FileGroup adm

)

Вам также следует взглянуть, /etc/rsyslog.d/50-default.confгде определяется, какие события записываются в какие файлы. Также есть строка для /var/log/syslog. Возможно, она закомментирована.

решение2

Я только что выполнил совершенно новую установку Ubuntu 14.04 с использованием официального серверного носителя.

Rsyslog был установлен, и auth.logдействительный файл журнала с конфигурацией по умолчанию. Он настроен файлом/etc/rsyslog.d/50-default.conf

Если у вас нет auth.log, то я предполагаю, что вы выполнили одно из следующих действий:

  • изменил конфигурацию
  • использован демон syslog, отличный от rsyslog
  • использовал установщик Ubuntu, который установил другие настройки по умолчанию.

Трудно сказать наверняка, не зная, какой именно демон syslog вы используете.

Если вы используете rsyslog, то взгляните на свой /etc/rsyslog.conf, и любые файлы в /etc/rsyslog.d. Посмотрите, куда записываются сообщения auth,authpriv.*.

решение3

Если вы найдете такое заключительное сообщение в /var/log/syslog:

Dec 29 19:27:32 host rsyslogd-2039: 
Could no open output pipe '/dev/xconsole': 
No such file or directory [try http://www.rsyslog.com/e/2039 ]

то это виновник. Это происходит потому, что версия по умолчанию /etc/rsyslog.d/50-default.confв Ubuntu 14.04.1 LTS (или, по крайней мере, более ранняя версия, сохраненная в обновлениях) ожидает, что вы используете /dev/xconsoleдля мониторинга ошибок, но это просто недоступно в средах headless-серверов.

Чтобы исправить это, отключите соответствующий раздел в /etc/rsyslog.d/50-default.conf, сделав его примерно таким:

# daemon.*;mail.*;\
#        news.err;\
#        *.=debug;*.=info;\
#        *.=notice;*.=warn       |/dev/xconsole

Затем перезапустите rsyslog ( sudo service rsyslog restart), и теперь файлы журналов должны работать.

Источник:этот ответна AskUbuntu SE вопрос "Отсутствие /dev/xconsole приводит к остановке rsyslog, а также всех других служб.".

решение4

Я столкнулся с этой проблемой при установке совершенно новой версии Ubuntu 14.04 и включении fail2banвхода по SSH.

Ubuntu 14.04 использует rsyslogс пользователем syslogи группой по умолчанию adm. Однако /var/logкаталог имеет разрешения root:root 0755, что означает, что rsyslog не может создать новый файл журнала в каталоге, например файл /var/log/auth.log.

Есть несколько способов решить эту проблему.

Сделать /var/log/доступным для записи для всех пользователей

sudo chmod 0777 /var/log

Изменить владельца/группу/var/log

sudo chown syslog:adm /var/log
sudo chmod 0775 /var/log

Нажмите /var/log/auth.logи измените его владельца/группу наsyslog:adm

sudo touch /var/log/auth.log
sudo chown syslog:syslog /var/log/auth.log

Изменение пользователя/группы rsyslogвыполняется как (не рекомендуется)

editor /etc/rsyslog.conf
$FileOwner root
$FileGroup root

Связанный контент