kernel.printk 值的描述

kernel.printk 值的描述

在 Debian 5 和 6 之间,kernel.printk 中的默认建议值/etc/sysctl.conf从 更改kernel.printk = 4 4 1 7kernel.printk = 3 4 1 3。我知道第一个值对应于控制台的值。接下来的 3 个值是什么?

数值与 syslog 日志级别的含义相同吗?或者他们有不同的定义?

我在搜索中是否缺少一些文档,或者是找出内核源代码的唯一位置。

答案1

Sysctl 设置记录在Documentation/sysctl/*.txt在内核源代码树中。在 Debian 上,安装linux-doc包含文档usr/share/doc/linux-doc-*/Documentation/(大多数发行版都有类似的包)。从Documentation/sysctl/kernel.txt:

中的四个值分别printk表示:console_logleveldefault_message_loglevelminimum_console_logleveldefault_console_loglevel

这些值会影响printk()打印或记录错误消息时的行为。请参阅man 2 syslog有关不同日志级别的更多信息。

  • console_loglevel:优先级高于此的消息将打印到控制台
  • default_message_loglevel:没有明确优先级的消息将以此优先级打印
  • minimum_console_loglevel:console_loglevel 可设置的最小(最高)值
  • default_console_loglevel:默认值console_loglevel

我没有找到任何明确的散文解释其default_console_loglevel用途。在里面Linux内核源码, kernel.printksysctl 设置console_printk。该default_console_loglevel字段似乎没有在任何地方使用。

答案2

kernel.printk数值描述

  • “0”→紧急消息,系统即将崩溃或不稳定 pr_emerg
  • “1” → 发生了不好的事情,必须立即采取行动 pr_alert
  • “2” → 发生严重情况,例如严重的硬件/软件故障 pr_crit
  • “3” → 错误条件,驱动程序经常使用它来指示硬件问题 pr_err
  • “4”→ 警告,本身并不严重,但可能表明存在问题 pr_warning
  • “5” → 没什么严重的,但值得注意的是。通常用于报告安全事件。公关通知
  • “6” → 信息性消息,例如驱动程序初始化时的启动信息 pr_info
  • "7" → 调试消息 pr_debug, pr_devel(如果定义了 DEBUG)
  • KERN_DEFAULT "d" 默认内核日志级别
  • KERN_CONT "" "续" 日志打印输出行(仅在没有封闭的行之后完成)

相关内容