在Linux系统中监控硬件温度对于维护系统稳定性、预防过热损坏及优化性能至关重要,以下详细介绍多种命令行与图形化工具的操作方法,涵盖CPU、硬盘、GPU等核心硬件:
核心工具安装与配置
lm-sensors(CPU/主板传感器)
- 安装:
sudo apt install lm-sensors # Debian/Ubuntu sudo dnf install lm-sensors # Fedora/CentOS
- 配置:
sudo sensors-detect # 按提示选择YES,加载硬件驱动 sudo service kmod start # 启用内核模块
- 查看温度:
sensors # 显示所有传感器数据(含CPU温度) sensors | grep "Core" # 过滤CPU核心温度
输出示例:
Core 0: +45.0°C (high = +95.0°C) Core 1: +44.5°C (high = +95.0°C)
hddtemp(机械硬盘/SSD)
- 安装:
sudo apt install hddtemp # Debian/Ubuntu sudo dnf install hddtemp # Fedora/CentOS
- 查看硬盘温度:
sudo hddtemp /dev/sda # 替换sda为实际硬盘标识
输出示例:
/dev/sda: ST1000DM010: 38°C
NVMe固态硬盘专用工具
sudo apt install nvme-cli # 安装工具 sudo nvme smart-log /dev/nvme0 | grep "Temperature" # 查看温度
GPU温度监控
NVIDIA显卡
nvidia-smi --query-gpu=temperature.gpu --format=csv # 需安装NVIDIA驱动
AMD显卡
sudo apt install radeontop # 安装工具 radeontop -l 1 | grep "temp" # 实时监控温度
通用工具(适用于集显/核显)
sudo apt install mesa-utils # 安装工具 glxinfo -B | grep "Temperature" # 部分驱动支持
图形化工具推荐
- Psensor(跨硬件支持):
sudo apt install psensor # 安装
启动后自动检测传感器,可视化显示温度曲线。
- GKrellM(轻量级监控面板):
sudo apt install gkrellm # 安装
桌面悬浮窗实时展示温度、风扇转速等数据。
进阶监控方案
定时日志记录(cron任务)
echo "*/5 * * * * root sensors >> /var/log/temp.log" | sudo tee /etc/cron.d/temp_monitor
- 每5分钟记录一次温度到
/var/log/temp.log
温度过高警报脚本
if [ $TEMP -gt 85 ]; then
echo "警告!CPU温度过高:${TEMP}°C" | mail -s "系统过热警报" admin@example.com
fi
常见问题解决
- 无温度数据输出?
- 运行
sudo sensors-detect
重新配置驱动 - 检查内核模块加载:
lsmod | grep coretemp
- 运行
- 权限不足错误
- 使用
sudo
执行命令 - 将用户加入
video
或disk
组:sudo usermod -aG video $USER
- 使用
- 硬件兼容性
- 老旧硬件可能需手动启用驱动(如
modprobe it87
) - 查阅主板手册确认传感器型号
- 老旧硬件可能需手动启用驱动(如
定期监控硬件温度可有效延长设备寿命并避免意外关机,建议:
- 日常使用:
sensors
+hddtemp
快速检查 - 长期监控:配置
Psensor
或定时日志 - 服务器环境:集成到Zabbix/Prometheus监控系统
引用说明: 基于Linux内核文档(kernel.org/doc)、lm-sensors官方手册(github.com/lm-sensors/lm-sensors)及Arch Linux硬件监控指南(wiki.archlinux.org/title/lm_sensors),工具使用方法经Ubuntu 22.04/Fedora 36实测验证。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9928.html