# 采集内核日志

要采集 Linux 内核日志，您可以根据系统设置和所需的详细程度使用多种方法。这些日志提供了对系统行为的关键洞察，帮助您识别问题并监控内核级事件。

## 采集串行控制台日志

串行控制台用于访问标准启动和内核日志。串行控制台允许在实时设备上进行实时调试。Qualcomm Linux 内核允许 `CONFIG_SERIAL_QCOM_GENI` 驱动程序支持 UART 和控制台。

在内核命令行参数中添加以下行：

console=ttyMSM0,115200n8
    
    # as in following line in meta-qcom-hwe/conf/machine/include/qcom-<SoC>.conf
    KERNEL_CMDLINE_EXTRA ?= "root=/dev/disk/by-partlabel/system rw rootwait console=ttyMSM0,115200n8 pcie_pme=nomsi earlycon"
    Copy to clipboard

重新编译和加载内核时：

- 按如下所示连接一根一端是 Micro USB 接口一端是 USB-A 型接口的电缆：

    - 设备 &gt; Micro USB====USB-TypeA &gt; 主机
- 要连接到主机上的设备串行端口，请使用主计算机上的串行控制台客户端。
- 您可以在串行客户端上看到串行控制台日志和其他内核日志。

有关串行控制台的更多信息，请参见 [Linux Serial Console](https://docs.kernel.org/admin-guide/serial-console.html)。

## 配置控制台日志级别

根据调试或发布软件的要求，配置内核控制台日志级别，以记录广泛或最少的日志。

使用 `/proc/sys/kernel/printk` 配置日志级别，控制出现在控制台上的日志消息。日志级别可设置为 1 到 7。

将日志级别值设置为 1 时，只会记录最低级别的日志。将日志级别值设置为 1 时，只会打印 `pr_emerg/KERN_EMERG` 日志。

将日志级别值设置为 7 时，会启用最高日志级别 `pr_info/KERN_INFO`，并将所有 printk 日志打印到控制台。

echo "1" > /proc/sys/kernel/printk
    Copy to clipboard

## 显示内核日志

要显示内核日志，请运行以下命令之一：

- dmesg
        Copy to clipboard
- cat /proc/kmsg
        Copy to clipboard

## 显示自启动以来的内核日志

要显示自启动以来的内核日志，请运行以下命令之一：

- cat /var/log/messages
        Copy to clipboard
- cat /var/log/kern.log
        Copy to clipboard

Last Published: Jul 22, 2025

[Previous Topic
启用虚拟化](https://docs.qualcomm.com/bundle/publicresource/80-70020-3SC/topics/virtualization.md) [Next Topic
配置调试方法](https://docs.qualcomm.com/bundle/publicresource/80-70020-3SC/topics/debug.md)