/proc/kmsg와 /dev/kmsg의 차이점은 무엇입니까?

/proc/kmsg와 /dev/kmsg의 차이점은 무엇입니까?

나는 에 대해 배우고 journald있고 읽는 동안 합계를 합계에서 읽을 rsyslog수 있다는 것을 보았습니다 .rsyslog/dev/kmsgjournald/dev/kmsg/proc/ksmg

나는 이것이 커널 로그라는 것을 알고 있지만 /proc/kmsg차이점은 무엇입니까 /dev/kmsg? 하나는 프로세스로 나타나고 다른 하나는 장치로 나타나는 이유는 무엇입니까?

답변1

/proc/kmsg루트 전용, 읽기 전용,소비하다커널 로그 버퍼 보기 전화하는 것과 동일syslog(2)행동 으로 SYSLOG_ACTION_READ. 에서 언급했듯이proc맨페이지,

이 파일을 읽으려면 프로세스에 슈퍼유저 권한이 있어야 하며, 오직 하나의 프로세스만 이 파일을 읽을 수 있습니다. 실행 중인 syslog 프로세스가 다음 명령을 사용하는 경우 이 파일을 읽어서는 안 됩니다.syslog(2)커널 메시지 기록을 위한 시스템 호출 기능.

/dev/kmsg동일한 커널 로그 버퍼에 대한 액세스를 제공하지만 사용하기 쉬운 방식입니다. 읽기는 열 때마다 추적되므로 여러 프로세스를 병렬로 읽을 수 있으며 읽을 때 항목이 버퍼에서 제거되지 않습니다. /dev/kmsg도 가능쓰다로그 버퍼에 액세스하므로 로그 버퍼에 항목을 추가하는 데 사용할 수 있습니다. 바라보다/dev/kmsg선적 서류 비치더 알아보기.

둘 다 존재하는 이유와 하나는 /proc(프로세스와 관련은 없지만)에 있고 다른 하나는 dev커널 /proc/kmsg내부에 있는 오래된 편의 "내보내기" /dev/kmsg이며최근에 추가, 로그 버퍼에 사용 가능한 인터페이스로 설계되었습니다.

관련 정보