가 rsyslog
커널 링 버퍼의 상단에 단지 추상화 계층은? 아니면 커널 링 버퍼 자체 엔터티와 rsyslog
상호 작용이 다른 "응용 프로그램"과 상호 작용합니까?
가 rsyslog
커널 링 버퍼의 상단에 단지 추상화 계층은? 아니면 커널 링 버퍼 자체 엔터티와 rsyslog
상호 작용이 다른 "응용 프로그램"과 상호 작용합니까?
답변:
을 포함하여 다양한 문서 ( man dmesg
)를 "커널 링 버퍼"라고 부르지 만 "링 버퍼"는 일반적인 용어이며 커널도 링을 사용하기 때문에 커널 로그 버퍼로 참조하는 것이 좋습니다 완전히 관련되지 않은 다양한 것들에 대한 버퍼. "printk buffer"도 커널 공간 기능을 사용한 후에 적합합니다.
어쨌든, 커널 공간에 상주하며를 통해 읽기 인터페이스가 제공되고를 통해 /proc/kmsg
읽기-쓰기 인터페이스 가 제공 됩니다 /dev/kmsg
. 따라서 루트로 가면 :
echo "Hello Kernel!" > /dev/ksmg
그렇다면 당신은 그것을 볼 수 있습니다 cat /dev/ksmg
(그러나 아마도 어떤 로그에서도 이것이 나타나지 않을 것입니다-가능한 이유로 아래의 Matthew Phipps의 의견을보십시오). 이것은 원시 출력이며 dmesg
로그 파일에서 보거나 로그 파일에서 보는 것과 정확히 같지 않습니다 . 조금이 문서의 비트 커널 소스와 함께 제공되는이 약은. (r) syslog가 실행중인 경우 ( /proc/kmsg
와 동일하지 않음)를 읽는 /dev/ksmg
것이 좋습니다.
Rsyslog는 리눅스에서 일반적으로 사용되는 많은 syslog 구현 중 하나입니다 . 이것들은 /proc/ksmg
소켓을 통해 다른 userland 프로세스로부터 커널 메시지 와 메시지 를 소싱하는 userland 어플리케이션입니다 /dev/log
.