名扬数据:如何在Linux系统上监测系统温度?

按理说,在大多数情况下,你用不着为电脑的运行温度而操心。除了制造瑕疵外,电脑硬件在设计时确保温度不会超过最高工作温度。但即使没有任何的硬件故障,也会由于各种各样的软件问题出现温度过高的情况,比如显卡驱动程序有毛病、风扇控制程序配置不当、处理器频率调整守护程序运行异常,不一而足。

温度过高会变得非常严重,以至于给你的电脑硬件造成永久性破坏。所以你要密切关注系统中出现的任何温度过高问题。要是部署温度监测系统那就更好了,那样万一系统温度突然升高,监测系统会及时提醒你。

在本教程中,我将介绍如何在Linux系统上监测系统温度。

Linux上有几款用户空间工具,让你可以检查和监测系统各个部件的温度。

lm-sensors是一款软件工具,可以借助嵌入在硬件的传感器,监测温度、电压、湿度和风扇运行状况。hddtemp这款工具可以通过S.M.A.R.T.数值,测量硬盘的温度。psensor是一款用于监测温度的图形化前端程序,它能够直观地显示处理器、英伟达/ATI/AMD图形处理器(GPU)和硬盘等部件的温度数值。

在下文中,我将介绍如何设置psensor,以监测处理器和硬盘的温度。

将psensor安装在Linux桌面上

psensor可以根据从其他工具(比如lm-sensors和hddtemp)获得的信息,直观地显示系统温度。因而,你需要将psensor连同那些必要的工具一并安装。

将psensor安装在Debian或Ubuntu上:

$ sudo apt-get install lm-sensors hddtemp psensor 将psensor安装在Ubuntu上的另一个办法是,使用含有一款较新版本psensor的个人软件包仓库(PPA)软件库。

$ sudo add-apt-repository ppa:jfi/ppa $ sudo apt-get update $ sudo apt-get install lm-sensors hddtemp psensor 将psensor安装在Fedora上:

$ 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 这个命令会搜索并检测你硬件(包括处理器、内存控制器和输入/输出芯片)中的嵌入式传感器,并且自动查明哪些驱动程序模块需要装入,以检查你系统的温度。

一旦传感器搜索和检测工作完成,会要求你将检测到的一个或多个驱动程序模块添加到/etc配置,那样它们可以在系统启动时自动装入。

 


在Debian或Ubuntu上,检测到的驱动程序模块会被添加到/etc/modules。在Fedora上,驱动程序模块会被添加到/etc/sysconfig/lm_sensors。

接下来,继续装入必要的模块,如下所示。

在Ubuntu上:

$ sudo service module-init-tools start 在Debian上:

$ sudo /etc/init.d/kmod start 在Fedora上:

$ 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软件包安装psensor(针对Ubuntu用户),或者从源处自行构建(针对Debian用户)。