Brent Asked: 2009-06-13 06:18:34 +0800 CST2009-06-13 06:18:34 +0800 CST 2009-06-13 06:18:34 +0800 CST 解释dmesg的输出 772 我正在运行一个 Debian 系统,发现dmesg命令的输出非常有帮助。 有人可以向我解释 dmesg 命令输出什么信息吗?它与系统日志中的 kern.* 消息是 1:1 相关吗? linux debian dmesg syslog 4 个回答 Voted Best Answer Apreche 2009-06-13T06:27:17+08:002009-06-13T06:27:17+08:00 从技术上讲 dmesg 将内核环形缓冲区打印到标准输出。 我不知道他们为什么称它为环形缓冲区,但它基本上是一个日志缓冲区。所有内核启动消息都写在那里。如果您正在运行 syslog,那么这些消息中的所有或大部分也可能会写入那里。但是,dmesg 命令与 syslog 是分开的。它是 linux utils 的一部分,即使您没有 syslog,也可以使用它。 dmesg 也可用于清除环形缓冲区本身,也可用于更改控制台中显示错误的级别。有时,根据消息的严重性,它会被发送到除环形缓冲区之外的每个控制台。一个很好的例子是关闭消息。dmesg -n levelnumber允许您更改除了缓冲区之外必须将消息发送到控制台的严重程度。 Joe 2009-06-13T06:23:23+08:002009-06-13T06:23:23+08:00 引用手册页: dmesg is used to examine or control the kernel ring buffer. 其中许多消息也会发送到 syslog,但不是全部。此外,系统日志直到启动过程的后期(r)才可用。 goo 2009-06-13T07:00:40+08:002009-06-13T07:00:40+08:00 如前所述,dmesg 允许您转储内核环形缓冲区或控制它。通常您会收到引导消息,但是已经启动了一段时间并且有闲聊的内核消息的服务器很可能已经覆盖了引导消息。大多数发行版将在启动脚本中运行 dmesg 以将启动消息转储到日志文件 - 通常是 /var/log/dmesg。 当您遇到内核恐慌和崩溃转储时,内核环形缓冲区往往会进入它自己的状态。您可能首先要查看的内容之一是环形缓冲区的内容,它有望为您提供一个关于哪里出错的指针。当您遇到紧急情况时,内核很可能没有机会将这些消息传递给 syslog,因此故障转储将是您能够看到它们的唯一地方。 Caterpillar 2009-06-13T06:27:20+08:002009-06-13T06:27:20+08:00 Dmesg 打印或控制内核环形缓冲区。该程序帮助用户打印出他们的启动信息。
从技术上讲 dmesg 将内核环形缓冲区打印到标准输出。
我不知道他们为什么称它为环形缓冲区,但它基本上是一个日志缓冲区。所有内核启动消息都写在那里。如果您正在运行 syslog,那么这些消息中的所有或大部分也可能会写入那里。但是,dmesg 命令与 syslog 是分开的。它是 linux utils 的一部分,即使您没有 syslog,也可以使用它。
dmesg 也可用于清除环形缓冲区本身,也可用于更改控制台中显示错误的级别。有时,根据消息的严重性,它会被发送到除环形缓冲区之外的每个控制台。一个很好的例子是关闭消息。
dmesg -n levelnumber
允许您更改除了缓冲区之外必须将消息发送到控制台的严重程度。引用手册页:
其中许多消息也会发送到 syslog,但不是全部。此外,系统日志直到启动过程的后期(r)才可用。
如前所述,dmesg 允许您转储内核环形缓冲区或控制它。通常您会收到引导消息,但是已经启动了一段时间并且有闲聊的内核消息的服务器很可能已经覆盖了引导消息。大多数发行版将在启动脚本中运行 dmesg 以将启动消息转储到日志文件 - 通常是 /var/log/dmesg。
当您遇到内核恐慌和崩溃转储时,内核环形缓冲区往往会进入它自己的状态。您可能首先要查看的内容之一是环形缓冲区的内容,它有望为您提供一个关于哪里出错的指针。当您遇到紧急情况时,内核很可能没有机会将这些消息传递给 syslog,因此故障转储将是您能够看到它们的唯一地方。
Dmesg 打印或控制内核环形缓冲区。该程序帮助用户打印出他们的启动信息。