How to change the system cooling policy on Linux Mint Debian laptop

Note before starting:

This functionality depends on both your hardware and software. If your hardware doesn't support fan speed controls, or doesn't show them to the OS, it is very likely that you could not use this solution. If it does, but the software (aka kernel) doesn't know how to control it, you are without luck.


  1. Install the lm-sensors and fancontrol packages.

  2. Configure lm-sensors

    1. In terminal type sudo sensors-detect and answer YES to all YES/no questions. (Potentially, this can damage your system or cause system crash. For a lot of systems, it is safe. There is no guarantee that this process will not damage your system permanently, I just think that chance of such critical failure is really really low. Saving all your work for eventual crashes/freezes/restarts before handling system configuration is always good idea. If you feel unsure, read the comments and try to search a web and get some high-level overview before YES-ing everything, maybe being selective with your YES-es will still be enough)
    2. At the end of sensors-detect, a list of modules that need to be loaded will be displayed. Type "yes" to have sensors-detect insert those modules into /etc/modules, or edit /etc/modules yourself.
    3. Run sudo service module-init-tools restart. This will read the changes you made to /etc/modules in step 3, and insert the new modules into the kernel.

      • Note: If you're running Ubuntu 13.04 or higher, this 3rd step command should be replaced by sudo service kmod start.
  3. Configure fancontrol

    1. In terminal type sudo pwmconfig . This script will stop each fan for 5 seconds to find out which fans can be controlled by which PWM handle. After script loops through all fans, you can configure which fan corresponds to which temperature.
    2. You will have to specify what sensors to use. This is a bit tricky. If you have just one fan, make sure to use a temperature sensor for your core to base the fancontrol speed on.
    3. Run through the prompts and save the changes to the default location.
    4. Make adjustments to fine-tune /etc/fancontrol and use sudo service fancontrol restart to apply your changes. (In my case I set interval to 2 seconds.)
  4. Set up fancontrol service

    1. Run sudo service fancontrol start. This will also make the fancontrol service run automatically at system startup.

In my case /etc/fancontrol for CPU I used:

Settings for hwmon0/device/pwm2:
(Depends on hwmon0/device/temp2_input) (Controls hwmon0/device/fan2_input)

INTERVAL=2
MINTEMP=40  
MAXTEMP=60  
MINSTART=150  
MINSTOP=0  
MINPWM=0  
MAXPWM=255 

and on a different system it is:

INTERVAL=10
DEVPATH=hwmon1=devices/platform/coretemp.0 hwmon2=devices/platform/nct6775.2608
DEVNAME=hwmon1=coretemp hwmon2=nct6779
FCTEMPS=hwmon2/pwm2=hwmon1/temp2_input
FCFANS=hwmon2/pwm2=hwmon2/fan2_input
MINTEMP=hwmon2/pwm2=49
MAXTEMP=hwmon2/pwm2=83
MINSTART=hwmon2/pwm2=150
MINSTOP=hwmon2/pwm2=15
MINPWM=hwmon2/pwm2=14
MAXPWM=hwmon2/pwm2=255

here is some useful info on the settings and what they really do

Source:https://askubuntu.com/questions/22108/how-to-control-fan-speed

On reduce overheating:

  1. TLP

TLP is my favorite power management tool in Linux. It’s a daemon that is pre-configured to reduce overheating as well as improve battery life. You just need to install TLP and restart your system. It will be auto-start at each boot and keep on running in background. I have always included installation of TLP in top things to do after installing Ubuntu for its simplicity and usefulness.

To install TLP in Ubuntu based Linux distributions, use the following commands:

sudo add-apt-repository ppa:linrunner/tlp
sudo apt-get update
sudo apt-get install tlp tlp-rdw

If you are using ThinkPads, you require an additional step:

sudo apt-get install tp-smapi-dkms acpi-call-dkms

Restart your system after installation. Check this page for installation instructions in other Linux distributions.

You may start to feel the difference in few hours or in couple of days. To uninstall TLP, you can use the following commands:

sudo apt-get remove tlp
sudo add-apt-repository --remove ppa:linrunner/tlp

Source:https://itsfoss.com/reduce-overheating-laptops-linux/

Officially supported Ubuntu releases; as well as corresponding Linux Mint releases; but not LMDE (see Debian)

Package Repository

Add the TLP-PPA to your package sources:

See above commands

Debian
Debian oldstable, stable, testing and unstable; as well as Linux Mint Debian Edition (LMDE)

Execute the following steps in a root shell. Package Repository Debian stable, testing and unstable

TLP and ThinkPad-related packages below are available via the official Debian repository.

Note: due to the pending freeze of Debian 10.0 "Buster", the maintainer is currently not allowed to provide packages >= 1.2 in testing (Buster) and in stable (Stretch), oldstable (Jessie) via backports. Please download and install from unstable: tlp, tlp-rdw. Debian 9.0 "Stretch"

TLP packages for the newest version are available via Debian Backports (read more).

Add the following line to your /etc/apt/sources.list:

deb http://ftp.debian.org/debian stretch-backports main

Debian 8.0 "Jessie"

TLP packages are available via Debian Backports only (read more).

Add the following line to your /etc/apt/sources.list:

deb http://ftp.debian.org/debian jessie-backports-sloppy main

Update package data:

apt-get update

Package Install

Install the following packages:

  • tlp (main) – Power saving
  • tlp-rdw (main) – optional – Radio Device Wizard
  • tp-smapi-dkms (main) – optional, ThinkPad only – provides battery charge thresholds, recalibration and specific status output in tlp-stat for older ThinkPads
  • acpi-call-dkms (main) – optional, ThinkPad only – provides battery charge thresholds and recalibration for newer ThinkPads (X220/T420 and later)

The above packages may be installed via package management tools or with a terminal command:

apt-get install tlp tlp-rdw

For Debian Backports use:

apt-get install -t stretch-backports tlp tlp-rdw

or

apt-get install -t jessie-backports-sloppy tlp tlp-rdw

instead.

For ThinkPads an additional

apt-get install tp-smapi-dkms acpi-call-dkms 

Source: https://linrunner.de/en/tlp/docs/tlp-linux-advanced-power-management.html