debian

Debian dmesg日志中的CPU温度监控方法

小樊
44
2025-09-23 06:50:41
栏目: 智能运维

Debian系统中通过dmesg日志监控CPU温度的方法

dmesg是Linux内核环形缓冲区的查看工具,主要记录系统启动及运行时的内核消息(如硬件初始化、驱动加载、错误事件)。要监控CPU温度,需结合传感器驱动加载信息温度异常事件,以下是具体步骤:

1. 查看CPU温度传感器的初始化信息

CPU温度监控依赖硬件传感器(如Intel Coretemp、AMD AMDSensor等),系统启动时会自动检测并加载对应驱动。通过dmesg过滤传感器相关日志,可确认传感器是否正常识别:

sudo dmesg | grep -i "sensor\|thermal\|cpu temp"

示例输出(若传感器加载成功):

[    2.345678] coretemp coretemp.0: CPUID signature mismatch, but continuing anyway
[    2.345679] coretemp coretemp.0: Detected Intel(R) Core(TM) i5-1230U CPU @ 1.30GHz
[    2.345680] coretemp coretemp.0: package id 0: +45.0°C (high = +80.0°C, crit = +100.0°C)

说明:上述输出表示系统识别到了Intel CPU的温度传感器,且给出了包温度(Package ID)及高低阈值。

2. 检查CPU温度异常事件

若CPU温度超过阈值(如触发热节流),内核会记录相关警告或错误信息。通过以下命令过滤关键字,快速定位温度异常:

sudo dmesg | grep -i "thermal throttling\|overheat\|high temperature"

示例输出(若发生热节流):

[  123.456789] thermal thermal_zone0: critical temperature reached (100 C), shutting down
[  123.456790] thermal thermal_zone0: CPU temperature above threshold, throttling enabled

说明:上述输出表示CPU温度达到临界值(100℃),系统触发了热节流(降低性能以降温)。

3. 结合lm-sensors工具增强监控(可选但推荐)

dmesg仅能显示传感器初始化和异常事件,无法实时查看当前温度。需安装lm-sensors工具(支持Intel/AMD等主流CPU),通过传感器驱动获取实时温度:

sudo apt install lm-sensors  # Debian/Ubuntu安装命令
sudo sensors-detect          # 检测硬件传感器(按提示选择"yes"启用所有推荐设置)
sensors                      # 查看实时温度(核心温度、包温度等)

示例输出

coretemp-isa-0000
Adapter: ISA adapter
Package id 0:  +47.0°C  (high = +80.0°C, crit = +100.0°C)
Core 0:        +44.0°C  (high = +80.0°C, crit = +100.0°C)
Core 1:        +45.0°C  (high = +80.0°C, crit = +100.0°C)

说明:lm-sensors的输出更直观,包含每个核心的温度及高低阈值,是日常监控CPU温度的常用工具。

4. 关键注意事项

通过以上方法,可通过dmesg日志识别CPU温度传感器的状态及异常事件,结合lm-sensors工具实现实时监控,确保系统温度在安全范围内。

0
看了该问题的人还看了