CentOS 7에서 dmesg를 추적하는 방법

CentOS 7에서 dmesg를 추적하는 방법

dmesgCentOS 7 서버에서 마지막 항목의 타임스탬프를 입력 하고 기록해 둡니다.

다음으로 tail -f /var/log/dmesg로그 테일을 볼 수 있도록 동일한 시스템의 다른 터미널에 들어갔습니다.

셋째, 동일한 터미널을 사용하여 동일한 컴퓨터에서 일부 스크립트를 실행했습니다. 를 입력한 터미널에는 아무런 변화가 없습니다 tail -f /var/log/dmesg.

마지막으로 dmesg다시 입력하고 로그를 Notepad++로 추출한 결과, dmesg다른 스크립트를 실행할 때 출력에 1,500줄이 넘는 새로운 로그 라인이 생성되는 것을 확인했습니다.

실제로 화면에 tail로그를 표시 하려면 어떤 특정 명령을 입력해야 합니까 ?dmesg

답변1

dmesg는 링 버퍼입니다. 즉, 일정 크기에 도달하면 오래된 데이터는 폐기됩니다. 따라서 일반 파일처럼 작동하지 않습니다. 이는 데이터와 약간 비슷합니다 /proc. 표시하거나 표시할 때 cat해당 순간의 상태만 볼 수 있습니다.

이 문제를 해결하기 위해 최신 구현에는 다음과 같이 작동하는 OR 스위치가 dmesg포함되어 있습니다 . 링 버퍼 대신 기존 파일로 캡처하려면 다음과 같은 구성을 사용할 수 있습니다.-w--followtail -f

dmesg --follow >> /path/to/file

또는 캡처되는 내용도 확인하려면 다음을 수행하세요.

dmesg --follow | tee -a /path/to/file

따라서 이는 간단한 INT 신호 또는 - 로 종료될 수 있습니다 tail -f.CtrlC

관련 정보