标签: dmesg

我怎样才能看到 dmesg 输出的变化?

我正在编写一个将错误消息打印到环形缓冲区dmesg 输出的设备驱动程序。我想看到dmesg它改变时的输出。

我怎样才能做到这一点?

linux command-line logs dmesg

188
推荐指数
6
解决办法
21万
查看次数

确定设备端口的命令(如 /dev/ttyUSB0)

我有一个关于 Linux 端口的问题。如果我通过 USB 连接我的设备并想检查它的端口,我不能使用命令 lsusb 来完成它,它只指定了该总线上的总线编号和设备编号:

[ziga@Ziga-PC ~]$ lsusb
Bus 003 Device 007: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
Run Code Online (Sandbox Code Playgroud)

是否有命令可以告诉我设备直接连接到的端口?到目前为止,唯一的方法是断开连接并重新连接并使用以下命令:

[ziga@Ziga-PC ~]$ dmesg | grep tty
[    0.000000] console [tty0] enabled
[    0.929510] 00:09: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
[    4.378109] systemd[1]: Starting system-getty.slice.
[    4.378543] systemd[1]: Created slice system-getty.slice.
[    8.786474] usb 3-4.4: FTDI USB Serial Device converter now attached to ttyUSB0
Run Code Online (Sandbox Code Playgroud)

在最后一行中,可以看到我的设备已连接到/dev/ttyUSB0

usb serial-port dmesg

74
推荐指数
4
解决办法
44万
查看次数

dmesg 输出和 /var/log/messages 有什么区别?

AFAIKdmesg显示有关内核和内核模块的信息,/var/log/messages也显示内核和模块产生的信息。

那么有什么区别呢?难道/var/log/messages 的输出dmesg

更多可能有用的信息:
- 有一个内核环形缓冲区,我认为这是存储内核日志数据的唯一地方。
- IBM DeveloperWorks 上的文章“内核日志记录:API 和实现”描述了 API 和鸟瞰图。

logs kernel dmesg

64
推荐指数
4
解决办法
18万
查看次数

如何从命令行写入 dmesg?

我想给 dmesg 写一份声明。我怎样才能做到这一点?

linux command-line logs kernel dmesg

62
推荐指数
2
解决办法
5万
查看次数

如何从上一个会话中读取 dmesg?(dmesg.0)

dmesg 是一个从/var/log/dmesg. 与之相比less /var/log/dmesg的好处是,我可以使用 -T 标志进行人类可读的时间输出。

现在我想看看/var/log/dmesg.0,看看我的电脑是如何崩溃的。该文件包含来自先前会话的日志。但我想使用 dmesg 命令中的 -T 标志。或者等价的东西。

知道怎么做吗?

我不介意图形工具,但最好的方法是 cli 解决方案。

dmesg

60
推荐指数
3
解决办法
10万
查看次数

为什么 dmesg 被称为 dmesg?

命令名称背后是否有任何解释/历史dmesg(打印出一些内核消息)?

history command dmesg

42
推荐指数
2
解决办法
5423
查看次数

dmesg:读取内核缓冲区失败:权限被拒绝

由于最近 Debian 更改了默认行为dmesg,我不能简单地从本地用户使用它。

% dmesg
dmesg: read kernel buffer failed: Operation not permitted
Run Code Online (Sandbox Code Playgroud)

同样适用于:

% cat /dev/kmsg                      
cat: /dev/kmsg: Operation not permitted
Run Code Online (Sandbox Code Playgroud)

以错误跟踪器为主角,这导致:

如何将此行为改回前一个行为,其中允许本地用户使用 dmesg。我找不到它的特定组(例如 sudoers 或类似的东西)。

linux debian sysctl dmesg

33
推荐指数
1
解决办法
4万
查看次数

如何将 dmesg 内容登录到文件中?

我正在运行一个从头开始构建的 Linux 操作系统。我想将内核消息缓冲区 (dmesg) 保存到一个文件中,该文件将在重新启动之间保持不变。

我试过运行 syslogd,但它只是打开了一个新的日志文件 /var/log/messages,既没有现有的内核消息缓冲区,也没有内核在 syslogd 启动后生成的任何新消息。

如何将内核消息缓冲区保存到持久日志文件中?

linux syslog dmesg

26
推荐指数
2
解决办法
8万
查看次数

OpenWRT 上人类可读的 dmesg 时间戳

dmesg 的输出显示自系统启动以来的秒数+毫秒数。

[   10.470000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[   14.610000] device eth0 entered promiscuous mode
[   18.750000] cfg80211: Calling CRDA for country: DE
[   18.750000] cfg80211: Regulatory domain changed to country: DE
Run Code Online (Sandbox Code Playgroud)

问:如何将秒+毫秒转换为可读格式?

我的消息:

root@OpenWrt:/tmp# dmesg -h
dmesg: invalid option -- h
BusyBox v1.19.4 (2013-03-14 11:28:31 UTC) multi-call binary.

Usage: dmesg [-c] [-n LEVEL] [-s SIZE]

Print or control the kernel ring buffer

    -c      Clear ring buffer after printing
    -n LEVEL    Set console logging level
    -s …
Run Code Online (Sandbox Code Playgroud)

scripting boot kernel openwrt dmesg

22
推荐指数
2
解决办法
3万
查看次数

理解“serial8250: too much work for irq4”内核消息

dmesg 显示来自serial8250的大量消息:

$ dmesg | grep -i serial
[    0.884481] Serial: 8250/16550 driver, 32 ports, IRQ sharing enabled
[    6.584431] systemd[1]: Created slice system-serial\x2dgetty.slice.
[633232.317222] serial8250: too much work for irq4
[633232.453355] serial8250: too much work for irq4
[633248.378343] serial8250: too much work for irq4
...
Run Code Online (Sandbox Code Playgroud)

我以前没有看到过这条消息。一般是什么意思?我应该担心吗?

(根据我的研究,它不是特定于发行版的,但如果相关,我会在运行 Ubuntu 16.04 的 EC2 实例上看到消息。)

kernel dmesg

21
推荐指数
1
解决办法
3万
查看次数

标签 统计

dmesg ×10

kernel ×4

linux ×4

logs ×3

command-line ×2

boot ×1

command ×1

debian ×1

history ×1

openwrt ×1

scripting ×1

serial-port ×1

sysctl ×1

syslog ×1

usb ×1