cpustat怎样显示CPU温度和频率
许多用户在监控Linux系统性能时,会使用 cpustat 工具来查看CPU使用率。然而,需要明确的是,cpustat 本身并不直接提供CPU温度和实时频率的监控数据。它属于 sysstat 工具集,主要功能是统计和分析CPU时间片的利用率。如果您需要获取CPU的温度和频率信息,则需要借助其他专门的系统工具。本文将详细介绍几种常用的方法。

显示CPU温度
监控CPU温度对于防止过热和保障系统稳定性至关重要。以下是两种最有效的方法。
- 使用
sensors命令:
- 首先,您需要在系统中安装
lm-sensors硬件监控工具包。安装命令根据Linux发行版有所不同:sudo apt-get install lm-sensors # Debian/Ubuntu sudo yum install lm-sensors # CentOS/RHEL sudo dnf install lm-sensors # Fedora - 安装完成后,建议运行传感器检测程序,以自动识别和配置主板上的硬件传感器:
运行此命令时,通常对所有提示选择“yes”或直接按回车键即可完成配置。sudo sensors-detect - 配置成功后,直接运行
sensors命令,即可清晰显示CPU核心温度、风扇转速及主板电压等详细信息:sensors
- 使用
coretemp模块(针对Intel CPU):
- 对于使用Intel处理器的系统,内核通常集成了
coretemp驱动模块。您可以手动加载该模块(如果未自动加载):sudo modprobe coretemp - 温度数据会以文件形式呈现在
/sys文件系统中,通过读取这些文件即可获取温度值:
请注意,读取到的数值单位通常是毫摄氏度(millidegree Celsius),因此需要将其除以1000来转换为常见的摄氏度(°C)。cat /sys/devices/virtual/thermal/thermal_zone*/temp
显示CPU频率
了解CPU的实时工作频率有助于评估其性能状态和功耗管理策略。以下命令可以帮助您获取这些信息。
- 使用
cpufreq-info命令:
- 首先,安装CPU频率管理工具包:
sudo apt-get install cpufrequtils # Debian/Ubuntu sudo yum install cpufrequtils # CentOS/RHEL sudo dnf install cpufrequtils # Fedora - 安装后,执行
cpufreq-info命令。该命令将输出每个CPU核心的当前运行频率、支持的最低与最高频率、以及当前的调速器(governor)策略等完整信息:cpufreq-info
- 使用
lscpu命令:
lscpu命令用于显示CPU架构的详细信息,包括型号、核心数、线程数、缓存大小等。其中输出的“CPU MHz”字段即为当前CPU的运行频率:lscpu
结合使用
如果您希望在一个界面中同时监控CPU温度和频率,可以创建一个简单的Shell脚本,将上述命令整合起来,实现一站式查看。
例如,以下脚本可以同时输出关键的温度和频率信息:
#!/bin/bash
echo "CPU Temperatures:"
sensors | grep 'temp' | awk '{print $1 ": " $2}'
echo -e "\nCPU Frequencies:"
cpufreq-info | grep 'current policy'
您可以将上述代码保存为一个文件,例如 cpu_monitor.sh。然后赋予其执行权限并运行:
chmod +x cpu_monitor.sh
./cpu_monitor.sh
执行后,您将在终端中同时看到CPU的温度读数和工作频率状态,极大地方便了系统性能的实时监控与排查工作。
