dmesg 是一个从/var/log/dmesg. 与之相比less /var/log/dmesg的好处是,我可以使用 -T 标志进行人类可读的时间输出。
现在我想看看/var/log/dmesg.0,看看我的电脑是如何崩溃的。该文件包含来自先前会话的日志。但我想使用 dmesg 命令中的 -T 标志。或者等价的东西。
知道怎么做吗?
我不介意图形工具,但最好的方法是 cli 解决方案。
rus*_*dev 78
虽然 OP 有点晚了...
我使用 Fedora,但如果您的系统使用,journalctl那么您可以通过以下方式轻松获取先前关闭/崩溃(以某种dmesg -T格式)的内核消息(dmesg 日志)。
选项:
注意:还有一个-o shortand-o short-iso分别为您提供日期和 iso 格式的日期时间。
命令:
journalctl -o short-precise -k -b alljournalctl -o short-precise -kjournalctl -o short-precise -k -b -1journalctl -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
Run Code Online (Sandbox Code Playgroud)
您可以回顾的靴子数量可以通过以下方式查看。
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
Run Code Online (Sandbox Code Playgroud)
roa*_*ima 43
为了澄清一个根本的误解,dmesg不从/var/log/dmesg. 它直接从内核环形缓冲区读取,并为您提供最近的 N 条消息。在引导过程即将结束时,dmesg被调用以将引导消息写入/var/log/dmesg(以通常方式轮换该文件的旧版本)。
一旦你有一个Syslog运行(syslogd,rsyslogd,syslog-ng等)读取从内核缓冲区和写入文件如/var/log/kern.log。(这是针对 Debian 的;其他系统会有所不同)。假设您的系统能够在崩溃之前写入磁盘并刷新磁盘缓冲区,那么您将在那里找到内核垂死的尖叫声。
在我的 Debian 系统上,该/var/log/kern.log文件包含人类可读的时间戳。
小智 9
在 Debian 中,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 个并压缩)如果您有许可,您可以使用cat、more或less纯文本和zcat、zmore或zless压缩文本阅读它们
| 归档时间: |
|
| 查看次数: |
99383 次 |
| 最近记录: |