在系统日志中看不到内核消息

在系统日志中看不到内核消息

我正在尝试追踪在我的 CentOS 机器上终止 mysql 服务器的进程。

我有以下设置/etc/syslog.conf

*.*;mail.none;authpriv.none;cron.none /var/log/messages

我认为这会导致所有消息(包括内核消息)都被记录到/var/log/messages,除了authprivmail消息cron

然而,当我查看时/var/log/messages,我没有看到任何似乎正在终止服务器的内核消息。

以下是该文件的全部内容/etc/syslog.conf

# Log anything (except mail) 
# Don't log private authentication messages!
*.*;mail.none;authpriv.none;cron.none           /var/log/messages

# The authpriv file has restricted access.
authpriv.*                                              /var/log/secure

# Log all the mail messages in one place.
mail.*                                                  -/var/log/maillog

# Log cron stuff
cron.*                                                  /var/log/cron

# Everybody gets emergency messages
*.emerg                                                 *

# Save news errors of level crit and higher in a special file.
uucp,news.crit                                          /var/log/spooler

# Save boot messages also to boot.log
local7.*                                                /var/log/boot.log

我已经重新启动了 syslog,但没有什么变化。

有任何想法吗?

答案1

无需猜测您的崩溃原因,我可以通过系统日志提供帮助。

*.*;mail.none;authpriv.none;cron.none           /var/log/messages

如果使用星号,则无需列出任何设施或优先级。这纯粹是迂腐之举,仅供参考。如果您确实希望所有消息都发送到 /var/log/messages,则可以使用:

*.* /var/log/messages

确保您实际运行的是“syslog”而不是“rsyslog”。您引用的配置基于 CentOS 5 及更早版本中默认的旧“syslog”的使用。您没有提到您使用的是哪个版本的 CentOS,但如果恰好是 CentOS 6,那么您可能正在运行 rsyslog。Rsyslog 使用 /etc/rsyslog.conf 和 /etc/rsyslog.d/*.conf 这两个不能同时运行,否则您可能看不到消息。第一个绑定到 syslog 端口的将获胜。

要测试系统日志中的内核消息,请使用以下命令:

 logger -i -p kern.crit "This is a syslog test"

如果您看到测试消息,则表明 syslog 正在运行,而 mysqld 正在自行崩溃,正如 lsmooth 所提到的。

相关内容