温馨提示×

Linux CPUInfo如何监控温度状态

小樊
44
2025-11-03 03:25:24
栏目: 智能运维

Linux下监控CPU温度状态的常用方法

1. 使用lm-sensors(命令行基础工具)

lm-sensors是Linux下最常用的硬件传感器检测工具,支持Intel、AMD等主流CPU的温度监控,覆盖桌面、服务器及笔记本场景。

  • 安装:通过包管理器安装(Debian/Ubuntu:sudo apt install lm-sensors;CentOS/RHEL:sudo yum install lm_sensors;Arch Linux:sudo pacman -S lm_sensors)。
  • 配置:首次使用需运行sudo sensors-detect,按提示选择“yes”启用所有默认传感器(此步骤仅需一次)。
  • 查看温度:运行sensors命令,输出会显示CPU Package(整体温度)、Core(各核心温度)、高阈值(high)和临界值(crit)等信息,例如:
    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)
    
  • 实时监控:结合watch命令每2秒刷新一次温度(watch -n 2 sensors),便于观察温度变化趋势。

2. 直接读取sysfs接口(无需额外工具)

sysfs是Linux内核提供的虚拟文件系统,可直接访问硬件传感器数据,适合快速查看或脚本调用。

  • 查看可用传感器:运行ls /sys/class/thermal/thermal_zone*,列出所有温度传感器(如thermal_zone0thermal_zone1)。
  • 读取CPU温度:执行cat /sys/class/thermal/thermal_zone0/temp,输出为毫摄氏度(如47000代表47°C)。若未找到thermal_zone0,可能是硬件不支持或驱动未加载。

3. 使用psensor(图形化监控工具)

psensor是带图形界面的传感器监控工具,支持实时温度曲线、阈值告警,适合桌面用户使用。

  • 安装:通过包管理器安装(Debian/Ubuntu:sudo apt install psensor;Fedora:sudo dnf install psensor;Arch Linux:sudo pacman -S psensor)。
  • 使用:安装完成后,在应用菜单中搜索“psensor”并启动,界面会显示CPU及各核心的温度,支持柱状图、折线图展示,还可设置温度阈值(如超过80°C时弹出警告)。

4. 使用htop/glances(增强型系统监控)

htop(进程查看器)和glances(跨平台监控工具)均集成了CPU温度显示功能,适合需要同时监控系统性能的用户。

  • htop:安装sudo apt install htop(或对应发行版命令),运行后界面顶部或底部会显示CPU温度(需确保lm-sensors已配置)。
  • glances:安装sudo apt install glances(或通过curl -L https://bit.ly/glances | /bin/bash一键安装),运行后按F6选择“Sensors”模块,即可查看CPU温度及其他硬件指标(支持web远程监控)。

5. 针对Intel CPU的专用工具(coretemp/turbostat)

  • coretemp:Intel CPU专用温度监控模块,需安装sudo apt install coretemp,之后通过sensors | grep 'Core'过滤显示各核心温度(更精准)。
  • turbostat:Intel专用性能监控工具,可查看CPU温度、功耗、频率等深度指标,安装sudo apt install linux-tools-common,运行sudo turbostat --quiet --show PkgTmpPkgTmp代表CPU Package温度)。

6. 笔记本/树莓派特殊场景

  • 笔记本:部分笔记本需安装lm-sensors并运行sensors-detect,若无法读取,可尝试sudo modprobe coretemp加载内核模块。
  • 树莓派:使用vcgencmd measure_temp命令,输出示例:temp=47.0'C(直接显示摄氏度)。

注意事项

  • 权限问题:部分命令需root权限(如sensors-detectturbostat),可使用sudo提升权限。
  • 硬件差异:不同主板、CPU的传感器名称可能不同(如coretempk10temp),需通过sensors命令确认。
  • 温度阈值:桌面CPU正常范围40-70°C(警戒85°C)、服务器CPU50-80°C(警戒90°C)、笔记本CPU50-85°C(警戒95°C),超过阈值需检查散热(清理灰尘、更换硅脂)。

0