คำอธิบายของค่า kernel.printk


19

ระหว่าง Debian ที่ 5 และ 6 ค่าเริ่มต้นแนะนำใน kernel.printk /etc/sysctl.confก็เปลี่ยนจากการkernel.printk = 4 4 1 7 kernel.printk = 3 4 1 3ฉันเข้าใจว่าค่าแรกสอดคล้องกับสิ่งที่กำลังจะไปที่คอนโซล 3 ค่าถัดไปคืออะไร

ค่าตัวเลขมีความหมายเหมือนกับระดับบันทึก syslog หรือไม่? หรือพวกเขามีคำจำกัดความที่แตกต่างกันอย่างไร

ฉันไม่มีเอกสารบางอย่างในการค้นหาของฉันหรือเป็นเพียงแหล่งเดียวในการหาที่มาของเคอร์เนล

คำตอบ:


21

การตั้งค่า Sysctl มีการบันทึกไว้ในแผนผังDocumentation/sysctl/*.txtแหล่งที่มาของเคอร์เนล บน Debian ให้ติดตั้งlinux-docเพื่อให้เอกสารประกอบในusr/share/doc/linux-doc-*/Documentation/(การแจกแจงส่วนใหญ่มีแพ็คเกจที่คล้ายกัน) จากDocumentation/sysctl/kernel.txt:

สี่ค่าในprintkแสดงว่า: console_loglevel, default_message_loglevel, minimum_console_loglevelและ default_console_loglevelตามลำดับ

ค่าเหล่านี้มีผลต่อprintk()พฤติกรรมเมื่อพิมพ์หรือบันทึกข้อความผิดพลาด ดูman 2 syslogข้อมูลเพิ่มเติมเกี่ยวกับ loglevels ต่างๆ

  • console_loglevel: ข้อความที่มีลำดับความสำคัญสูงกว่านี้จะถูกพิมพ์ไปยังคอนโซล
  • default_message_loglevel: ข้อความที่ไม่มีลำดับความสำคัญที่ชัดเจนจะถูกพิมพ์ด้วยลำดับความสำคัญนี้
  • minimum_console_loglevel: ค่าต่ำสุด (สูงสุด) ที่สามารถตั้งค่า console_loglevel
  • default_console_loglevel: ค่าเริ่มต้นสำหรับ console_loglevel

ฉันไม่พบคำอธิบายร้อยแก้วที่ชัดเจนเกี่ยวกับสิ่งที่default_console_loglevelใช้ ในแหล่งเคอร์เนลที่ชุดkernel.printk sysctl ฟิลด์ไม่ได้ดูเหมือนจะใช้ที่ใดก็ได้console_printkdefault_console_loglevel


1
Debian bug 526855นี้ซึ่งเป็นที่มาของการเปลี่ยนแปลงดูเหมือนจะแนะนำว่ามีเงื่อนไขบางอย่างที่ klogd อาจรีเซ็ต console_loglevel เป็น default_console_loglevel เมื่อเรียกใช้ฟังก์ชันเคอร์เนล
Zoredache

1
@Zoredache: อ่า มันก็กลับมาแล้วแต่ไม่ การตั้งค่าหยุดการใช้ในเคอร์เนลเวอร์ชันที่จัดส่งโดย Debian เสถียรปัจจุบันเท่านั้นซึ่งอธิบายว่าทำไมสคริปต์การตั้งค่ายังคงสนับสนุน
Gilles 'ดังนั้นหยุดความชั่วร้าย'

4

คำอธิบายของ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, pr_devel หากมีการกำหนด DEBUG
  • KERN_DEFAULT "d" เคอร์เนลเริ่มต้น loglevel
  • KERN_CONT "" "ต่อเนื่อง" บันทึกการพิมพ์ (ทำหลังจากบรรทัดที่ไม่มีการปิดล้อมเท่านั้น)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.