如何在 Ubuntu 上监控 CPU 温度:Glances、lm-sensors 与热区详解

1. 介绍

在 Ubuntu 中监控 CPU 温度对于维持系统性能和防止因过热导致的潜在损坏至关重要。尤其在长时间高负载或高环境温度下,这一点尤为重要。通过跟踪 CPU 温度,您可以确保系统稳定并防止硬件故障。本文将介绍几种在 Ubuntu 中检查 CPU 温度的方法,并帮助您选择最适合您需求的工具。

2. 在 Ubuntu 中监控 CPU 温度的重要性

监控 CPU 温度直接影响系统性能和寿命。过热会触发热节流,自动降低 CPU 时钟速度,导致性能下降。此外,长时间暴露在高温环境下会对 CPU 及其他硬件组件造成物理损坏。为避免这些问题并确保系统顺畅运行,定期监测 CPU 温度至关重要。

3. 使用 Glances 进行全面系统监控

Glances 是一款强大的工具,能够实时监控各种系统指标,包括 CPU 温度。由于它可以一目了然地展示整个系统的概览,您可以轻松查看内存使用、磁盘 I/O 等详细信息,而不仅仅是 CPU 温度。

安装与设置

  1. 要安装 Glances,请使用 pip(Python 包管理器):bash sudo apt install python3-pip sudo pip3 install glances
  2. 安装完成后,使用以下命令启动 Glances:bash glances
  3. Glances 运行后,按下 [f] 键即可显示 CPU 温度和其他传感器信息。

使用 Web 服务器模式

Glances 也可以以 Web 服务器模式运行,允许您通过另一台设备的 Web 浏览器监控系统信息。要使用此模式,请运行以下命令:

bash
glances -w

在 Web 浏览器中访问提供的 URL,即可查看系统指标,包括 CPU 温度。

优点与局限

Glances 的最大优点是一次性提供系统信息的全面视图。然而,如果您的目标仅是检查 CPU 温度,过多的数据可能会让人感到不堪重负。

4. 使用 lm-sensors 直接获取传感器信息

lm-sensors 是一款简单的工具,能够直接获取传感器信息,包括 CPU 温度。它是许多 Linux 用户用于显示系统传感器数据的最直接方法之一。

安装与配置

  1. 要安装 lm-sensors,请运行以下命令:bash sudo apt-get install lm-sensors
  2. 安装完成后,使用以下命令检测系统中所有可用的传感器:bash sudo sensors-detect
  3. 在提示时回答 YES 以允许传感器检测。

显示 CPU 温度

检测完成后,使用 sensors 命令显示 CPU 温度以及其他传感器信息:

bash
sensors

运行此命令将显示当前 CPU 温度和相关传感器数据。

优点与局限

lm-sensors 简单、快速,适合想快速检查 CPU 温度的用户。然而,如果您需要详细的系统信息或远程监控,像 Glances 这样的工具可能更合适。

5. 直接访问热区信息

Ubuntu 允许您直接通过文件系统获取温度数据。这是最简单的方法之一,无需额外软件安装。

使用 /sys/class/thermal/

温度传感器信息存储在 /sys/class/thermal/ 目录中。要检查 CPU 温度,请运行以下命令:

bash
cat /sys/class/thermal/thermal_zone0/temp

输出以毫度为单位。例如,27800 表示 27.8°C。

探索传感器

根据您的系统,可能存在多个传感器。要检查每个传感器的值,请探索 thermal_zone* 目录:

bash cat /sys/class/thermal/thermal_zone1/temp

优势与局限性

此方法不需要额外的软件,且非常轻量。然而,传感器的位置和命名因系统而异,可能导致探索过程耗时。此外,由于数值以毫度显示,需要谨慎解释。

6. 各方法比较

每种工具和方法都有其独特的优势。Glances 能实现全面的系统监控和远程访问,但数据量可能让人应接不暇。lm-sensors 提供了一种简洁直接的 CPU 温度检查方式,使用友好。直接访问系统文件无需安装,但由于传感器差异和单位格式,直观性可能较差。

7. 结论

在 Ubuntu 中,CPU 温度监控对于保持性能和系统寿命至关重要。本文介绍了三种方法:Glances、lm-sensors 和直接文件访问。每种方法适用于不同需求,请根据自己的环境选择最合适的方案。

8. 其他提示与故障排除

  • 常见问题:如果传感器信息未显示,可能是传感器未被识别。请尝试重新运行 sensors-detect
  • 高级用法:若要实现温度监控自动化,可将这些命令写入脚本,定期检查或在检测到异常温度时发送警报。