Pirate
(Pirate)
1
参考:http://www.68idc.cn/help/server/linux/20141208138422.html
今天在tg里问了个问题:如何控制风扇启动的临界温度。vickycq给出了答案,操作成功,记录如下。
- 安装thinkfan
- 打开thinkpad_acpi风扇控制支持
即在thinkpad-acpi.conf中写入:options thinkpad_acpi experimental=1 fan_control=1
-
编辑/etc/default/thinkfan
START=yes
-
编辑/etc/thinkfan.conf
(0, 0, 55)
(1, 54, 60)
(2, 55, 61)
(3, 56, 63)
(4, 57, 65)
(5, 58, 66)
(7, 63, 32767)
即0级上限温度调整到55,这意味着当cpu温度小于55度时,风扇就不会工作。
-
重启或sudo thinkfan
-
查看thinkfan工作状态
若level不为auto,则表示已经开始作。
- vickycq补充的一些命令:
显示风扇工作级别 cat /proc/acpi/ibm/fan | grep level:
查看thinkfan工作状态 systemctl status thinkfan
启动thinkfan服务 systemctl enable thinkfan
Pirate
(Pirate)
2
用了一天,感觉开始的配置并不好。风扇总是频繁启动-停止。作了如下修改:
(0, 0, 45)
(1, 40, 55)
(2, 50, 66)
(7, 63, 32767)
- 减少风扇档位。在最常见的温度区域中设置级别;
- 高级档位的最小值应较低级档位的最大值有足够的温差。这样在降档前,风扇允分降温,然后再降低转速或停转。
一般主板风扇控制分两种
- PWM 调速
此种方式通过调节方波占空比,实现近似的连续调速
- 电压调速
此种方式存在两个常见问题:(2-1)最低转速较高 (2-2) 档位较少
对于一般的机器,可先尝试能否用 PWM 方式调速
如果看到类似 /sys/class/hwmon/hwmon1/pwm1_enable 的界面,进一步尝试:
对于绝大多数主板:
自动调速:echo 2 | sudo tee /sys/class/hwmon/hwmon1/pwm1_enable
手动调速:echo 1 | sudo tee /sys/class/hwmon/hwmon1/pwm1_enable
停转:echo 0 | sudo tee /sys/class/hwmon/hwmon1/pwm1
转速最大:echo 255 | sudo tee /sys/class/hwmon/hwmon1/pwm1
可在 0-255 之间实现近似无级调速
对于一部分电压调速的 Thinkpad,也有 pwm 界面。但对 pwm1 调节时很快可以发现 0-255 并不连续可调,而是分为有限的几档。本质与 /proc/acpi/ibm/fan 的档位控制相同。
其它部分机器有专用驱动。如戴尔(i8k),Thinkpad(thinkpad_acpi)
参考
forum.ubuntu.org.cn/viewtopic.php?f=48&t=473952
forum.ubuntu.org.cn/viewtopic.php?f=126&t=474986
forum.ubuntu.org.cn/viewtopic.php?f=39&t=476640
Pirate
(Pirate)
4
自动调速:echo 2 | sudo tee /sys/class/hwmon/hwmon1/pwm1_enable
手动调速:echo 1 | sudo tee /sys/class/hwmon/hwmon1/pwm1_enable
停转:echo 0 | sudo tee /sys/class/hwmon/hwmon1/pwm1
转速最大:echo 255 | sudo tee /sys/class/hwmon/hwmon1/pwm1
我这里的路径稍有差别:/sys/class/hwmon/hwmon1/device/pwm1 以及 /sys/class/hwmon/hwmon1/device/pwm1_enable
只是不知道电压那种控制方式如何停止。