Last updated on October 7, 2020 by Dan Nanni
In most cases, you are not supposed to be worried about the temperature of your computer. Barring manufacturing defects, hardware is designed so that its temperature does not exceed maximum operating temperature. But even without any hardware fault, overheating can occur due to various software issues, e.g., buggy graphics card driver, misconfigured fan control program, malfunctioning CPU frequency scaling daemon, etc. As pointed out by Ben in the comment, another quite common cause for overheating is dust, dirt and debris clogging the cooling system (fan, heat sink and ventilation openings). I can imagine this could happen quite often with older hardware.
Overheating may become serious enough to cause permanent damage on your hardware. So watch out for any overheating issue in your system. Even better, have temperature monitoring system in place, so that you will be alerted if system temperature suddenly goes up.
In this tutorial, I describe how to monitor system temperature on Linux.
There are several user space tools on Linux, which allow you to check and monitor temperature of various system components.
lm-sensors
is a software tool that draws from hardware embedded sensors to monitor temperatures, voltage, humidity and fans. hddtemp
is a tool that can measure the temperature of hard drives from S.M.A.R.T. readings. psensor
is a graphical front-end for temperature monitoring, which visualizes temperature readings from CPUs, NVidia/ATI/AMD GPUs, hard disks, etc.
In the following, I will describe how to set up psensor
to monitor the temperature of CPUs and hard drives.
psensor
can visualize system temperature based on the information obtained from other tools such as lm-sensors
and hddtemp
. Thus you need to install psensor
along with those prerequisites.
To install psensor
on Ubuntu or Debian:
$ sudo apt-get install lm-sensors hddtemp psensor
Another way to install psensor
on Ubuntu is to use their PPA repository which contains a more recent version of psensor
.
$ sudo add-apt-repository ppa:jfi/ppa $ sudo apt-get update $ sudo apt-get install lm-sensors hddtemp psensor
To install psensor
on 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
Due to the requirement for GTK3 libraries, psensor
is not compatible with the GNOME 2 desktop of CentOS or RHEL 6.
psensor
on LinuxBefore launching psensor
, you need to configure lm_sensors
and hddtemp
first.
lm_sensors
configurationTo configure lm_sensors
, run the following command. Choose YES
to every question.
$ sudo sensors-detect
This command will probe for and detect embedded sensors in your hardware (including CPUs, memory controllers, I/O chips), and automatically determine which driver modules need to be loaded to check temperature on your system.
Once sensor probing is completed, you will be asked to add detected driver module(s) to /etc
configuration, so they can be loaded automatically upon boot.
On Ubuntu or Debian, detected driver modules will be added to /etc/modules
. On Fedora, the driver information will be added to /etc/sysconfig/lm_sensors
.
Next, proceed to load necessary modules as follows.
$ sudo service module-init-tools start
$ sudo /etc/init.d/kmod start
$ sudo service lm_sensors start
hddtemp
configurationYou also need to launch hddtemp
which monitors the temperature of hard drives.
Run the following command to launch hddtemp
as a daemon. Replace /dev/sda
with the disk drive to monitor on your system.
$ sudo hddtemp -d /dev/sda
psensor
To start monitoring temperature with psensor
, simply run:
$ psensor
The psensor
window shows a list of available sensors, and visualizes temperature readings from these sensors. You can selectively enable or disable each sensor.
Optionally, you can set an alarm level for each sensor, so that you can be notified when the temperature from a sensor exceeds a threshold.
The default temperature unit used by psensor
is Celsius. A recent version (0.7
‒0.8
) of psensor
can convert temperature unit between Celsius and Fahrenheit. If the version of psensor
you are using is outdated (e.g., 0.6.x
), and does not have unit conversion, install psensor
from its PPA repository (for Ubuntu users) or build it from its source (for Debian users).
This website is made possible by minimal ads and your gracious donation via PayPal or credit card
Please note that this article is published by Xmodulo.com under a Creative Commons Attribution-ShareAlike 3.0 Unported License. If you would like to use the whole or any part of this article, you need to cite this web page at Xmodulo.com as the original source.
Xmodulo © 2021 ‒ About ‒ Write for Us ‒ Feed ‒ Powered by DigitalOcean