Red Hat Training

A Red Hat training course is available for RHEL 8

13.2. 로그 수준 및 커널 로깅에 대한 printk 역할

커널에서 보고하는 각 메시지에는 메시지의 중요성을 정의하는 로그 레벨이 연결되어 있습니다. What is kernel ring buffer에 설명된 커널 링 버퍼 는 모든 로그 수준의 커널 메시지를 수집합니다. 버퍼에서 보내는 메시지를 콘솔에 인쇄하는 kernel.printk 매개 변수입니다.

로그 수준 값은 다음 순서로 구분됩니다.

  • 0 - 커널 긴급. 시스템을 사용할 수 없습니다.
  • 1 - 커널 경고. 즉시 조치를 취해야 합니다.
  • 2 - 커널 조건이 중요한 것으로 간주됩니다.
  • 3 - 일반적인 커널 오류 상태.
  • 4 - 일반 커널 경고 조건.
  • 5 - 정상이지만 심각한 상태의 커널 알림.
  • 6 - 커널 정보 메시지.
  • 7 - 커널 디버그 수준 메시지.

기본적으로 RHEL 8의 kernel.printk 에는 다음 네 가지 값이 포함되어 있습니다.

# sysctl kernel.printk
kernel.printk = 7	4	1	7

4개의 값은 다음을 정의합니다.

  1. 값. 콘솔 로그 수준은 콘솔에 인쇄된 메시지의 우선 순위를 가장 낮은 우선 순위를 정의합니다.
  2. 값. 명시적인 로그 수준이 연결되지 않은 메시지의 기본 로그 수준입니다.
  3. 값. 콘솔 로그 레벨에 가능한 최저 로그 수준 구성을 설정합니다.
  4. 값. 부팅 시 콘솔 로그 수준의 기본값을 설정합니다.

    위의 각 값은 오류 메시지를 처리하는 다른 규칙을 정의합니다.

중요

기본값 7 4 1 7 printk 값을 사용하면 커널 활동을 더 효과적으로 디버깅할 수 있습니다. 그러나 직렬 콘솔과 결합되면 이 인쇄기 설정은 RHEL 시스템이 일시적으로 응답하지 않을 수 있는 강력한 I/O 버스트를 유발할 수 있습니다. 이러한 상황을 방지하기 위해 인쇄자 값을 4 4 1 7 로 설정하는 것이 일반적으로 작동하지만 추가 디버깅 정보를 손실하는 비용이 발생합니다.

또한 quiet 또는 debug 와 같은 특정 커널 명령행 매개 변수도 기본 kernel.printk 값을 변경합니다.

추가 리소스

  • syslog(2) 매뉴얼 페이지