安裝 Thinkfan
$ sudo apt-get install thinkfan
開啟風扇控制權
系統預設並不容許直接控制風扇速度,所以需要特別設定thinkpad-acpi
的config值:
$ sudo echo "options thinkpad_acpi fan_control=1" | sudo tee /etc/modprobe.d/thinkpad_acpi.conf
重新載入thinkpad_acpi
driver 套用新的設定值
$ sudo modprobe -rv thinkpad_acpi
$ sudo modprobe -v thinkpad_acpi
修改 thinkfan 設定檔
thinkfan 設定檔在 /etc/thinkfan.conf
,主要可以設定的要用那些sensor以及設定溫度與轉速的規則。首先先找到溫度量測的檔案:
$ find /sys/devices -type f -name "temp*_input"
以x220為例,一共找到四個檔:
/sys/devices/virtual/hwmon/hwmon0/temp1_input
/sys/devices/platform/coretemp.0/temp3_input
/sys/devices/platform/coretemp.0/temp1_input
/sys/devices/platform/coretemp.0/temp2_input
把這四行寫入到 /etc/thinkfan.conf
sensor /sys/devices/virtual/hwmon/hwmon0/temp1_input
sensor /sys/devices/platform/coretemp.0/temp3_input
sensor /sys/devices/platform/coretemp.0/temp1_input
sensor /sys/devices/platform/coretemp.0/temp2_input
這樣ThinkFan就會取這四個sensor最高溫度來監度
得到目前風扇的速度
$ cat /proc/acpi/ibm/fan
status: enabled
speed: 4464
level: auto
commands: level <level> (<level> is 0-7, auto, disengaged, full-speed)
commands: enable, disable
commands: watchdog <timeout> (<timeout> is 0 (off), 1-120 (seconds))
從中也可以了解到如何手動控制風扇,例如手動控制風扇用速度7
來跑:
$ echo level 7 | sudo tee /proc/acpi/ibm/fan
前景執行 thinkfan
想知道 thinkfan 執行的過程,可以試著跑前景模式,並每一秒更新一次:
$ sudo thinkfan -n -s 1
sleeptime=1, tmax=49, last_tmax=49, biased_tmax=49 -> fan="level 0"
sleeptime=1, tmax=51, last_tmax=49, biased_tmax=51 -> fan="level 1"
sleeptime=1, tmax=50, last_tmax=51, biased_tmax=50 -> fan="level 0"
... 略
Reference
備註: Thinkpad X220 在不同 Level 的轉速
Level | RPM |
---|---|
1 | 2000 |
2 | 3000 |
3 | 3500 |
4 | 3500 |
5 | 4000 |
6 | 4000 |
7 | 4500 |
8+ | 6000 (全速) |