插件窝 干货文章 Linux CPUInfo怎样解读温度数据

Linux CPUInfo怎样解读温度数据

温度 sensors 工具 bash 400    来源:    2025-05-09

在Linux系统中,CPU温度数据的解读方式取决于硬件支持和监控工具。以下是详细的解读方法和相关工具说明:


1. 检查温度数据的工具

方法1:使用 sensors(lm-sensors包)

sudo apt install lm-sensors  # Debian/Ubuntu
sudo yum install lm_sensors  # RHEL/CentOS
sudo sensors-detect          # 探测硬件传感器
sensors                      # 显示温度数据

输出示例:

coretemp-isa-0000
Adapter: ISA adapter
Package id 0:  +45.0°C  (high = +80.0°C, crit = +100.0°C)
Core 0:        +42.0°C  (high = +80.0°C, crit = +100.0°C)
Core 1:        +44.0°C  (high = +80.0°C, crit = +100.0°C)
  • 字段说明
    • Package id 0:CPU封装温度(整体温度)。
    • Core 0/1:单个核心温度。
    • high:高温阈值(非紧急)。
    • crit:临界温度(可能触发降频或关机)。

方法2:直接读取内核接口(适用于Intel/AMD)

cat /sys/class/thermal/thermal_zone*/temp
  • 输出值为 毫摄氏度(例如 45000 表示 45.0°C)。
  • 路径可能因系统不同而变化,尝试: bash cat /sys/class/hwmon/hwmon*/temp*_input

方法3:使用 psensor(图形化工具)

sudo apt install psensor  # Debian/Ubuntu
psensor                  # 启动图形界面
  • 支持实时监控CPU、GPU温度,并绘制历史曲线。

2. 关键温度指标解读

术语 含义
Current Temp 当前温度,若持续接近high需关注散热。
High (TJunction) 正常工作的上限温度,超过可能降频。
Critical 紧急阈值,达到时可能强制关机防止硬件损坏。

3. 常见问题排查

Q1: sensors无输出或显示不完整?

  • 确保已运行 sensors-detect 并加载内核模块。
  • 虚拟机环境可能无法获取真实温度(依赖宿主机支持)。

Q2: AMD CPU温度显示异常?

  • 安装最新版 lm-sensors 或内核驱动(如k10temp)。
  • 检查内核日志: bash dmesg | grep -i temperature

Q3: 如何监控温度变化?

watch -n 1 sensors  # 每秒刷新一次

4. 扩展工具

  • Intel CPUs: 使用 intel-gpu-tools(针对集成显卡温度)。
  • NVMe SSD: bash sudo nvme smart-log /dev/nvme0 | grep Temperature
  • GPU温度(NVIDIA): bash nvidia-smi --query-gpu=temperature.gpu --format=csv

5. 注意事项

  • 温度单位:多数工具输出为摄氏度(°C),确认单位避免误读。
  • 多CPU系统:使用 sensorslscpu 查看CPU数量,分别监控各插槽温度。

通过以上方法,您可以全面掌握Linux系统的CPU温度状态,及时应对散热问题。