How may I slow down or turn off my fan in Linux Mint Debian?

In Windows 7, it had a function called 'System Cooling Policy' and I had set for passive cooling, so the laptop's fan wouldn't spin up. Just using a simple code studio makes the fan speed up a lot and it's super loud. Windows 7 had this function, and I really liked it, but I haven't found a similar function in my Linux Mint Debian build.

  • 2
    You could try something like fancontrol but it's not spinning just because it wants to. Overheating will cause excessive wear and tear on your device, shortening its lifespan. Perhaps blasting a can of compressed air through the vents to clean out any dust build up might allow the fan to do its job better while not running at 100%?
    – SHawarden
    Commented May 23, 2019 at 4:28
  • It's an 8-year-old laptop, that I just use for HS and coding. I don't care how long it lasts, because I have a nicer laptop also and the school does provide laptops. Commented May 23, 2019 at 13:07

2 Answers 2


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)


and on a different system it is:

DEVPATH=hwmon1=devices/platform/coretemp.0 hwmon2=devices/platform/nct6775.2608
DEVNAME=hwmon1=coretemp hwmon2=nct6779

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


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


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 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


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


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


Depending on :

  • your hardware
  • your GNU/Linux distribution

the tools / settings vary to achieve what you're trying to do. As you probably know, the higher the CPU frequency, the more heat it produces (and the faster it drains the battery too).

Something you should have a look at is the CPU FREQ Governors, which is basically a policy defining how the CPU frequency changes : how much and how fast it increases / decreases based on load, what triggers an increase / decrease, ...

You can configure this on Debian with the cpufrequtils packages, it's probably available for your distribution too.

  • I forgot to add that the build was a Debian build. So what you commented, will that work in my Demian build, on the software side? Commented May 23, 2019 at 13:06

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .