前のセッションのdmesgの読み方 (dmesg.0)


29

dmesgは、コンテンツをから読み込むコマンド/var/log/dmesgです。それに比べて良いことless /var/log/dmesgは、人間が読める時間出力に-Tフラグを使用できることです。

次に/var/log/dmesg.0、を見て、コンピューターがどのようにクラッシュしたかを確認します。ファイルには、以前のセッションのログが含まれています。しかし、私はdmesgコマンドから-Tフラグを使用したいと思います。または同等のもの。

どのように考えますか?

私はグラフィカルなツールを気にしませんが、最良の方法はcliソリューションです。

回答:


29

基本的な誤解を解消するために、dmesgから読みません/var/log/dmesg。カーネルリングバッファーから直接読み取り、最新のNメッセージを提供します。ブートプロセスの終わりに向かって、dmesgブートメッセージを書き込むために呼び出されます/var/log/dmesg(そのファイルの古いバージョンは通常の方法でローテーションされます)。

あなたが実行しているのsyslog(持っていたらsyslogdrsyslogdsyslog-ng、など)には、カーネルバッファと書き込みからなどのファイルに読み込みます/var/log/kern.log。(これはDebian用です。他のシステムは異なります)。システムがクラッシュする前にシステムがディスクに書き込み、ディスクバッファをフラッシュできたと仮定すると、カーネルの死の絶叫を見つけることができます。

私のDebianシステムでは、/var/log/kern.logファイルには人間が読めるタイムスタンプが含まれています。


1
これで私の質問に答えられると思います、ありがとう!残念ながら、サスペンドでクラッシュする理由はまだわかりませんが、それは別の話です。
ドンキホーテ

dmesg書き込まれる以外の私のマシンのものkern.log、具体的には以下のデーモン、具体的には以下のデーモンgnome-keyring-d,goa-daemon,gvfsd,gvfsd-network,gvfs-gphoto2-vo,NetworkManager,upowerd
Att Righ

@AttRighは、そのファイルに書き込むことになっている唯一のものはカーネルです。新しい質問をすることがあります
roaima

@roima興味深い...私はjournalctlログを取得するのに満足しているので、本当に質問する必要はありません!他の人がこの矛盾に興味を持っているかもしれないと思いました。私のシステムを見ると、次のエントリrsyslogkern.log使用してログに記録するために使用しています、私の設定ファイルが関連していないか、変更されていないことkern.* -/var/log/kern.logdebsums -e確認する呼び出し(serverfault.com/questions/90400/…)、私のバージョンのrsyslogは、そして、私はdebian stretchを使用しています。rsyslogsystemd8.24.0-1
肥満児RIGH

@AttRighまた、unix.stackexchange.com
a /

34

OPには少し遅れましたが...

私はFedoraを使用していますが、システムが使用している場合、journalctl以前のシャットダウン/クラッシュ(dmesg -T形式)からカーネルメッセージ(dmesgログ)を簡単に取得できます。

オプション:

  • -k(dmesg)
  • -b < boot_number >(0、-1、-2などの前に再起動した回数
  • -o短い精度(dmesg -T)
  • -p priority優先度出力でフィルターします(4は通知と情報を除外します)。

注:日付のみを提供する-o shortand もあり、-o short-isoそれぞれiso形式の日時があります。

コマンド:

  • 現在のブート: journalctl -o short-precise -k
  • 最後のブート: journalctl -o short-precise -k -b -1
  • 事前に2つのブーツ: 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に遅れて。将来のグーグルに遅れることはありません!

4

Debianでは、dmesgログは次のように保存されます。

  • /var/log/dmesg (ライブおよび非圧縮)
  • /var/log/dmesg.0 (最後のセッションおよび非圧縮)
  • /var/log/dmesg.1.gz (最後から2番目および圧縮)
  • /var/log/dmesg.2.gz (最後から2番目と圧縮)
  • /var/log/dmesg.3.gz (最後から3番目、圧縮)
  • /var/log/dmesg.4.gz (最後から4番目、圧縮)

許可がある場合はcat、で、moreまたはlessプレーンなものとzcatzmoreまたはzless圧縮されたもので読むことができます


これは私のdebianには当てはまりません(テスト-ストレッチ、特に変更はされていませんが、今日の時点で最新です)。systemddmesg systemdに記録されるため、これはに関連している可能性があります(以下の回答を参照)。
肥満児RIGH

ご回答有難うございます。今、私は英語の単語のcognizantedていますpenultimateantepenultimate
transang
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.