이전 세션에서 dmesg를 읽는 방법? (dmesg.0)


29

dmesg는에서 내용을 읽는 명령입니다 /var/log/dmesg. 좋은 점 less /var/log/dmesg은 사람이 읽을 수있는 시간 출력에 -T 플래그를 사용할 수 있다는 것입니다.

이제 /var/log/dmesg.0컴퓨터가 어떻게 다운되는지 확인하기 위해를보고 싶습니다. 파일에는 이전 세션의 로그가 포함됩니다. 그러나 dmesg 명령에서 -T 플래그를 사용하고 싶습니다. 또는 동등한 것.

어떻게 생각해?

나는 그래픽 도구를 신경 쓰지 않을 것이지만 가장 좋은 것은 클리 솔루션입니다.

답변:


28

기본적인 오해를 해결하기 위해 dmesg에서 읽지 마십시오 /var/log/dmesg. 커널 링 버퍼에서 직접 읽고 최신 N 메시지를 제공합니다. 부팅 프로세스가 끝날 무렵 dmesg부팅 메시지를 쓰기 위해 호출됩니다 /var/log/dmesg(일반적인 방식으로 이전 버전의 해당 파일이 회전하는 경우).

당신은 시스템 로그 실행이되면 ( syslogd, rsyslogd, syslog-ng(가) 버퍼 및 쓰기와 같은 파일에 커널 등)가 읽고 /var/log/kern.log. (이것은 데비안 용이며 다른 시스템은 다를 수 있습니다). 시스템이 디스크에 기록하고 디스크 버퍼가 충돌하기 전에 디스크 버퍼를 비울 수 있다고 가정하면 커널의 비명 소리를 찾을 수 있습니다.

내 데비안 시스템에서 /var/log/kern.log파일은 사람이 읽을 수있는 타임 스탬프를 포함합니다.


1
나는 이것이 내 질문에 대답한다고 생각한다. 불행히도 여전히 일시 중단으로 인해 충돌하는 이유를 알 수는 없지만 다른 이야기입니다.
donquixote

내 머신 중 하나에 dmesg쓰지 않는 것 kern.log, 특히 다음 데몬, 특히 다음 데몬gnome-keyring-d,goa-daemon,gvfsd,gvfsd-network,gvfs-gphoto2-vo,NetworkManager,upowerd
Att Righ

@AttRigh 그 파일에 쓸 유일한 것은 커널입니다. 새로운 질문을하실 수 있습니다
roaima

@roima 흥미로운 ... journalctl로그를 얻는 데 행복하게 사용 하기 때문에 물어볼 질문이 없습니다 ! 방금 다른 사람들이이 불일치에 관심이 있다고 생각했습니다. 내 시스템을 살펴보면 i) 다음 항목 rsyslogkern.log사용하여 로그인하는 데 사용하고 있습니다 kern.* -/var/log/kern.log. 호출하여 debsums -e관련된 구성 파일 rsyslog이나 systemd수정 되지 않은 구성 파일 ( serverfault.com/questions/90400/… ) 이 없음 을 확인 하는 호출 입니다. 내 rsyslog 버전은 다음 8.24.0-1과 같습니다. 데비안 스트레치를 사용하고 있습니다.
Att Righ

@AttRigh 당신은 또한 읽을 수 있습니다 unix.stackexchange.com/a/294206/100397
roaima

34

OP에 약간 늦었지만 ...

Fedora를 사용하지만 시스템에서 journalctl 다음을 통해 이전 종료 / 충돌 ( dmesg -T형식) 에서 커널 메시지 (dmesg 로그)를 쉽게 얻을 수 있습니다 .

옵션 :

  • -k (dmesg)
  • -b < boot_number > (0, -1, -2 등 전에 재부팅 횟수)
  • -o 짧은 정확도 (dmesg -T)
  • -p priority 우선 순위 출력 (4를 통해 통지 및 정보를 필터링)으로 필터링합니다.

참고 :도있다 -o short하고 -o short-iso있는 당신에게 날짜 만, 각각 ISO 형식으로 날짜와 시간을 제공합니다.

명령 :

  • 현재 부팅 : journalctl -o short-precise -k
  • 마지막 부팅 : journalctl -o short-precise -k -b -1
  • 두 부츠 이전 : journalctl -o short-precise -k -b -2
  • 등등

출력 예 :

Feb 18 21:41:26.917400 localhost.localdomain kernel: usb 2-4: USB disconnect, device number 12
Feb 18 21:41:26.917678 localhost.localdomain kernel: usb 2-4.1: USB disconnect, device number 13
Feb 18 21:41:27.246264 localhost.localdomain kernel: usb 2-4: new high-speed USB device number 22 using xhci_hcd
Feb 18 21:41:27.419395 localhost.localdomain kernel: usb 2-4: New USB device found, idVendor=05e3, idProduct=0610
Feb 18 21:41:27.419581 localhost.localdomain kernel: usb 2-4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Feb 18 21:41:27.419739 localhost.localdomain kernel: usb 2-4: Product: USB2.0 Hub
Feb 18 21:41:27.419903 localhost.localdomain kernel: usb 2-4: Manufacturer: GenesysLogic

되돌아 볼 수있는 부츠의 양은 다음과 같이 볼 수 있습니다.

  • journalctl --list-boot

출력 결과는 journalctl --list-boot다음과 같습니다.

 -6 cc4333602fbd4bbabb0df2df9dd1f0d4 Sun 2016-11-13 08:32:58 JST—Thu 2016-11-17 07:53:59 JST
 -5 85dc0d63e6a14b1b9a72424439f2bab4 Fri 2016-11-18 22:46:28 JST—Sat 2016-12-24 02:38:18 JST
 -4 8abb8267e06b4c26a2466562f3422394 Sat 2016-12-24 08:10:28 JST—Sun 2017-02-12 12:31:20 JST
 -3 a040f5e79a754b2a9055ac2598d430e8 Sun 2017-02-12 12:31:36 JST—Sat 2017-02-18 21:31:04 JST
 -2 6c29e3b6f6a14f549f06749f9710e1f2 Sat 2017-02-18 21:31:15 JST—Sat 2017-02-18 22:36:08 JST
 -1 42fd465eacd345f7b595069c7a5a14d0 Sat 2017-02-18 22:51:22 JST—Sat 2017-02-18 23:08:30 JST  
  0 26ea10b064ce4559808509dc7f162f07 Sat 2017-02-18 23:09:25 JST—Sun 2017-02-19 00:57:35 JST

4
OP에 늦었다. 미래 Google 직원들에게 늦지 마십시오!
Qian

3

데비안에서 dmesg로그는 다음과 같이 저장됩니다 :

  • /var/log/dmesg (실시간 및 비 압축)
  • /var/log/dmesg.0 (마지막 세션 및 비 압축)
  • /var/log/dmesg.1.gz (최후 압축)
  • /var/log/dmesg.2.gz (끝나고 압축 된)
  • /var/log/dmesg.3.gz (마지막에서 세 번째 압축)
  • /var/log/dmesg.4.gz (마지막에서 4 번째 압축)

당신이 허가를 IIF, 당신은 그들을 읽을 수있는 cat, more또는 less일반 사람과 zcat, zmore또는 zless압축 된 것들에 대한


이것은 내 데비안의 경우에는 해당되지 않습니다 (테스팅-스트레치, 특별히 수정되지 않은, 오늘 최신). systemddmesg systemd에 기록되어 있기 때문에 이는 관련이있을 수 있습니다 (아래 답변 참조).
Att Righ
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.