Разница между / var / log / messages, / var / log / syslog и /var/log/kern.log?
68
Для целей ведения журнала ядра, почему у меня есть три разные, не включены уровни протоколирования среди /var/log/messages, /var/log/syslogи /var/log/kern.log?
Обратите внимание, что / var / log / messages - это системный журнал в системах, не относящихся к Debian / не Ubuntu, таких как системы RHEL или CentOS.
Томас Уорд
Обратите внимание, что journalctlмедленно заменить, syslogкак перейти к ресурсу для мониторинга системных сообщений.
WinEunuuchs2Unix
Ответы:
52
Системный журнал - стандартное средство регистрации. Он собирает сообщения различных программ и служб, включая ядро, и сохраняет их, в зависимости от настройки, в кучу файлов журналов, как правило, в /var/log. В некоторых центрах обработки данных существуют сотни устройств, каждое из которых имеет собственный журнал; Системный журнал также пригодится здесь. Один просто настраивает выделенный сервер системного журнала, который собирает все журналы отдельных устройств по сети. Syslog также может сохранять журналы в базы данных и других клиентов.
Согласно моему /etc/syslog.conf, default /var/log/kern.logзахватывает только сообщения ядра любого уровня логирования; т.е. вывод dmesg.
/var/log/messagesвместо этого стремится хранить ценные, не отладочные и некритические сообщения. Этот журнал должен рассматриваться как журнал «Общая системная активность».
/var/log/syslog в свою очередь регистрирует все, кроме связанных с аутентификацией сообщений.
Другие insteresting стандартные журналы , управляемые Syslog являются /var/log/auth.log, /var/log/mail.log.
Относительно вашего вопроса: если вам нужен только журнал сообщений ядра, используйте kern.logвызов или dmesg.
Обратите внимание, что записи в кольцевом буфере ядра (то, что читает dmesg) не будут помещаться в любой файл / var / log по умолчанию, если они были записаны процессом пользовательского пространства. Вам нужно установить $KLogPermitNonKernelFacility onв конфигурации rsyslogd, если вы хотите видеть эти сообщения в /var/log. Смотрите мой ответ на askubuntu.com/a/490900/297973 для более подробной информации.
Ванесса Фиппс
7
Также стоит отметить, что ubuntu ( начиная с natty ) больше не использует /var/log/messages, а сохраняет все на/var/log/syslog
jackbravo
1
в Ubuntu 16.04 /var/log/syslogдействительно есть чистый супернабор /var/log/kern.logс предостережением, которое нужно учитывать для различных стратегий вращения. Например, в моей системе (конфигурация по умолчанию не изменена) сегодняшние и вчерашние сообщения хранятся в одном файле, /var/log/kern.logтогда как большинство вчерашних сообщений для syslogнаходятся в /var/log/syslog.1.
Маркус Юний Брут
12
Системный журнал содержит все сообщения, кроме типа auth.
сообщения содержат только общие некритические сообщения. Категория есть info, noticeиwarn
Для полного просмотра журнала /var/log/syslogи/var/log/auth.log
AFAIK /var/log/kern.logсодержит сообщения ядра.
файлы журналов - это просто соглашение, изложенное в /etc/syslog.conf
читайте syslog(3)для получения дополнительной информации
Дублируя комментарий, ответ ulidtko: также стоит отметить, что Ubuntu ( начиная с natty ) больше не использует /var/log/messages, и сохраняет все на/var/log/syslog
journalctl
медленно заменить,syslog
как перейти к ресурсу для мониторинга системных сообщений.Ответы:
Системный журнал - стандартное средство регистрации. Он собирает сообщения различных программ и служб, включая ядро, и сохраняет их, в зависимости от настройки, в кучу файлов журналов, как правило, в
/var/log
. В некоторых центрах обработки данных существуют сотни устройств, каждое из которых имеет собственный журнал; Системный журнал также пригодится здесь. Один просто настраивает выделенный сервер системного журнала, который собирает все журналы отдельных устройств по сети. Syslog также может сохранять журналы в базы данных и других клиентов.Согласно моему
/etc/syslog.conf
, default/var/log/kern.log
захватывает только сообщения ядра любого уровня логирования; т.е. выводdmesg
./var/log/messages
вместо этого стремится хранить ценные, не отладочные и некритические сообщения. Этот журнал должен рассматриваться как журнал «Общая системная активность»./var/log/syslog
в свою очередь регистрирует все, кроме связанных с аутентификацией сообщений.Другие insteresting стандартные журналы , управляемые Syslog являются
/var/log/auth.log
,/var/log/mail.log
.Относительно вашего вопроса: если вам нужен только журнал сообщений ядра, используйте
kern.log
вызов илиdmesg
.источник
man syslog.conf
.$KLogPermitNonKernelFacility on
в конфигурации rsyslogd, если вы хотите видеть эти сообщения в/var/log
. Смотрите мой ответ на askubuntu.com/a/490900/297973 для более подробной информации./var/log/messages
, а сохраняет все на/var/log/syslog
/var/log/syslog
действительно есть чистый супернабор/var/log/kern.log
с предостережением, которое нужно учитывать для различных стратегий вращения. Например, в моей системе (конфигурация по умолчанию не изменена) сегодняшние и вчерашние сообщения хранятся в одном файле,/var/log/kern.log
тогда как большинство вчерашних сообщений дляsyslog
находятся в/var/log/syslog.1
.info
,notice
иwarn
/var/log/syslog
и/var/log/auth.log
/var/log/kern.log
содержит сообщения ядра.syslog(3)
для получения дополнительной информацииПроверьте эту страницу о различиях между сообщениями и системным журналом
это говорит
/var/log/messages
⊂/var/log/syslog
источник
/var/log/messages
, и сохраняет все на/var/log/syslog