如何在Linux上监控系统温度
在大多数情况下,您不必担心计算机的温度。除非存在制造缺陷,硬件的设计使其温度不会超过最大工作温度。但即使没有任何硬件故障,由于各种软件问题,例如有缺陷的显卡驱动程序、错误配置的风扇控制程序、CPU 频率缩放守护程序故障等,也可能会发生过热。正如 Ben 在评论中指出的,过热的另一个常见原因是灰尘、污垢和碎片堵塞冷却系统(风扇、散热器和通风口)。我可以想象,对于较旧的硬件,这种情况可能经常发生。
过热可能会变得严重到足以对您的硬件造成永久性损坏。因此,请注意系统中的任何过热问题。更好的是,安装温度监控系统,这样如果系统温度突然升高,您就会收到警报。
在本教程中,我将描述如何在 Linux 上监控系统温度。
Linux 上有多种用户空间工具,可让您检查和监控各种系统组件的温度。
lm-sensors
是一款软件工具,利用硬件嵌入式传感器来监控温度、电压、湿度和风扇。 hddtemp
是一款可以测量 S.M.A.R.T. 硬盘温度的工具。读数。 psensor
是一个用于温度监控的图形前端,可以可视化 CPU、NVidia/ATI/AMD GPU、硬盘等的温度读数。
下面我将介绍如何设置psensor
来监控CPU和硬盘的温度。
在 Linux 桌面上安装 psensor
psensor
可以根据从 lm-sensors
和 hddtemp
等其他工具获取的信息来可视化系统温度。因此,您需要安装 psensor
以及这些先决条件。
要在 Ubuntu 或 Debian 上安装 psensor
:
$ sudo apt-get install lm-sensors hddtemp psensor
在 Ubuntu 上安装 psensor
的另一种方法是使用其 PPA 存储库,其中包含更新版本的 psensor
。
$ sudo add-apt-repository ppa:jfi/ppa
$ sudo apt-get update
$ sudo apt-get install lm-sensors hddtemp psensor
要在 Fedora 上安装 psensor
:
$ sudo yum install lm_sensors hddtemp
$ sudo yum install gcc gtk3-devel GConf2-devel lm_sensors-devel cppcheck libatasmart-devel libcurl-devel json-c-devel libmicrohttpd-devel help2man libnotify-devel libgtop2-devel make
$ wget http://wpitchoune.net/psensor/files/psensor-0.8.0.3.tar.gz
$ tar xvfvz psensor-0.8.0.3.tar.gz
$ cd psensor-0.8.0.3
$ ./configure
$ make
$ sudo make install
由于需要 GTK3 库,psensor
与 CentOS 或 RHEL 6 的 GNOME 2 桌面不兼容。
在 Linux 上配置 psensor
在启动 psensor
之前,您需要先配置 lm_sensors
和 hddtemp
。
lm_sensors
配置
要配置 lm_sensors,请运行以下命令。对每个问题选择YES
。
$ sudo sensors-detect
此命令将探测并检测硬件中的嵌入式传感器(包括 CPU、内存控制器、I/O 芯片),并自动确定需要加载哪些驱动程序模块来检查系统上的温度。
传感器探测完成后,系统会要求您将检测到的驱动程序模块添加到 /etc
配置中,以便在启动时自动加载它们。

在 Ubuntu 或 Debian 上,检测到的驱动程序模块将添加到 /etc/modules
中。在 Fedora 上,驱动程序信息将添加到 /etc/sysconfig/lm_sensors
中。
接下来,继续加载必要的模块,如下所示。
在Ubuntu上:
$ sudo service module-init-tools start
在 Debian 上:
$ sudo /etc/init.d/kmod start
在费多拉上:
$ sudo service lm_sensors start
hddtemp
配置
您还需要启动 hddtemp
来监控硬盘温度。
运行以下命令将 hddtemp
作为守护进程启动。将 /dev/sda
替换为要在系统上监视的磁盘驱动器。
$ sudo hddtemp -d /dev/sda
使用 psensor
监控系统温度
要开始使用 psensor
监控温度,只需运行:
$ psensor
psensor
窗口显示可用传感器的列表,并可视化这些传感器的温度读数。您可以有选择地启用或禁用每个传感器。

或者,您可以为每个传感器设置警报级别,以便在传感器的温度超过阈值时通知您。

psensor
使用的默认温度单位是摄氏度。 psensor
的最新版本 (0.7
−0.8
) 可以在摄氏度和华氏度之间转换温度单位。如果您使用的 psensor
版本已过时(例如 0.6.x
),并且没有单位转换,请从其 PPA 存储库(对于 Ubuntu 用户)安装 psensor
或从其源代码构建它(对于 Debian 用户)。