kernel.printk 값에 대한 설명


19

데비안 5와 6 사이 kernel.printk에 대한 기본 제안 값이 /etc/sysctl.conf변경되었습니다 kernel.printk = 4 4 1 7kernel.printk = 3 4 1 3. 첫 번째 값은 콘솔로가는 것에 해당한다는 것을 이해합니다. 다음 3 가지 값은 무엇입니까?

숫자 값이 syslog 로그 레벨과 동일한 의미입니까? 아니면 다른 정의를 가지고 있습니까?

검색에서 일부 문서가 누락되었거나 커널 소스를 파악할 수있는 유일한 위치입니다.

답변:


21

Sysctl 설정은 Documentation/sysctl/*.txt커널 소스 트리에 설명되어 있습니다. 데비안에서 설치 linux-doc하여 설명서를 넣으십시오 usr/share/doc/linux-doc-*/Documentation/(대부분의 배포판에는 비슷한 패키지가 있습니다). 보낸 사람 Documentation/sysctl/kernel.txt:

의 네 개의 값 printk나타낸다 : console_loglevel, default_message_loglevel, minimum_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사용 되는지에 대한 명확한 산문 설명을 찾지 못했습니다 . 에서 리눅스 커널 소스kernel.printksysctl을 설정합니다 console_printk. 이 default_console_loglevel필드는 어디에도 사용되지 않는 것 같습니다.


1
변경의 원인 인 이 데비안 버그 526855 는 klogd가 커널 함수를 호출 할 때 console_loglevel을 default_console_loglevel로 재설정 할 수있는 조건이 있음을 시사하는 것 같습니다.
Zoredache

1
@ 조레 다케 : 아. 그때 는되었지만 더 이상은 아니었다 . 이 설정은 현재 데비안 스 태블릿에서 제공하는 커널 버전에서만 사용되지 않았습니다. 설정 스크립트가 여전히이를 지원하는 이유를 설명합니다.
Gilles 'SO- 악마 중지'

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, DEBUG가 정의 된 경우 pr_devel
  • KERN_DEFAULT "d"기본 커널 로그 레벨
  • KERN_CONT "" "계속"로그 출력 라인 (인 클로징이없는 라인 이후에만 수행)
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.