web-dev-qa-db-ja.com

kernel.printk値の説明

Debian 5と6の間で、/etc/sysctl.confのkernel.printkのデフォルトの推奨値がkernel.printk = 4 4 1 7からkernel.printk = 3 4 1 3に変更されました。最初の値がコンソールに送信されるものに対応していることを理解しています。次の3つの値は何ですか?

数値はsyslogログレベルと同じ意味ですか?または、それらは異なる定義を持っていますか?

私の検索でいくつかのドキュメントが不足していますか、それともこれをカーネルソースから特定する唯一の場所ですか?.

19
Zoredache

Sysctl設定は、カーネルソースツリーの _Documentation/sysctl/*.txt_ に記載されています。 Debianでは、 _linux-doc_ をインストールして、ドキュメントを_usr/share/doc/linux-doc-*/Documentation/_に入れます(ほとんどのディストリビューションには同様のパッケージがあります)。から _Documentation/sysctl/kernel.txt_

printkの4つの値は、それぞれ_console_loglevel_、_default_message_loglevel_、_minimum_console_loglevel_および_default_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.printk_ sysctlが _console_printk_ を設定します。 _default_console_loglevel_フィールドはどこでも使用されていないようです。

の説明 kernel.printk

  • 「0」→緊急メッセージ、システムがクラッシュするか、不安定ですpr_emerg
  • 「1」→何か問題が発生したため、すぐに対処する必要がありますpr_alert
  • 「2」→深刻なハードウェア/ソフトウェア障害のような重大な状態が発生したpr_crit
  • "3"→ハードウェアpr_errの問題を示すためにドライバーがよく使用するエラー状態
  • 「4」→警告。それ自体は重大な意味はないが、問題を示している可能性があるpr_warning
  • 「5」→深刻なことはないが、特にそれにもかかわらず。セキュリティイベントの報告によく使用されます。 pr_notice
  • 「6」→情報メッセージ。ドライバ初期化時の起動情報pr_info
  • 「7」→デバッグメッセージpr_debug、DEBUGが定義されている場合はpr_devel
  • KERN_DEFAULT "d"デフォルトのカーネルログレベル
  • ログ出力のKERN_CONT "" "継続"行(囲まれていない行の後でのみ実行)
4
user211079