How to control thinkpad fan in Linux
with a simple shell command
Last updated on
Environment
OS: Debian 12 Machine: Thinkpad T14 Gen1, Intel
Steps
- Put line
options thinkpad_acpi fan_control=1
into/etc/modprobe.d/thinkpad_acpi.conf
(you might need to create this file first), or with the following command.
echo 'options thinkpad_acpi fan_control=1' | sudo tee -a /etc/modprobe.d/thinkpad_acpi.conf
- Try some of these and see if they work.
echo level 0 | sudo tee /proc/acpi/ibm/fan # fan off
echo level 2 | sudo tee /proc/acpi/ibm/fan # low speed
echo level 4 | sudo tee /proc/acpi/ibm/fan # medium speed
echo level 7 | sudo tee /proc/acpi/ibm/fan # maximum speed
echo level auto | sudo tee /proc/acpi/ibm/fan # automatic - default
echo level disengaged | sudo tee /proc/acpi/ibm/fan # disengaged
- Then you can create your own shell command for controlling the fan speed.
fullspeed_fan() {
echo "level 7" | sudo tee /proc/acpi/ibm/fan
}
autospeed_fan() {
echo "level auto" | sudo tee /proc/acpi/ibm/fan
}
Related Links
- https://blog.monosoul.dev/2021/10/17/how-to-control-thinkpad-p14s-fan-speed-in-linux/
- The thinkpad-acpi kernel module manual
- This thinkwiki page
- This Ask-Ubuntu thread