我检查了如何在 Linux 上管理 CPU 风扇速度不幸的是,这些方法都不起作用。sensors-detect
仅检测coretemp
仅允许读取温度。
此外,find /sys -iname \*wm\*
不要报告任何(无 pwm 文件)。我的芯片组是Z170 express
技嘉主板。我在 Windows® 上设置 CPU 风扇速度没有问题。
看来我的硬件太新了,Linux 无法完全支持(即使使用最新的长期内核)。
但有没有办法绕过这个(我不知道也许内核模块已经存在) ?
答案1
尝试加载 nct6775 内核模块。
$ sudo modprobe nct6775
$ sensors
nct6793-isa-0a20
Adapter: ISA adapter
[...]
fan1: ...
nct6775 可能会报告 SYSTIN 和 CPUTIN 的一些不合理的高值(问题 #45)。
以最大速度运行风扇 2(根据需要更改 hwmon4):
$ echo 1 | sudo tee /sys/class/hwmon/hwmon4/pwm2_enable # manual fan control
$ echo 255 | sudo tee /sys/class/hwmon/hwmon4/pwm2 # max speed
如果有效的话,您可以在启动时加载 nct6775:
$ echo nct6775 | sudo tee /etc/modules-load.d/nct6775.conf
您的 UEFI/BIOS 是否允许您根据几个温度点控制风扇速度?您可以更改这些点,而不是直接更改 PWM 值。
$ cat /sys/class/hwmon/hwmon4/pwm2_enable # 5 = "Smart Fan IV mode"
5
$ cat /sys/class/hwmon/hwmon4/pwm2_auto_point1_temp
40000
$ cat /sys/class/hwmon/hwmon4/pwm2_auto_point1_pwm
22
有关详细信息,请参阅nct6775 自述文件。
目前,暂停/恢复会将设置重置为 UEFI/BIOS 默认值。请监控温度并小心控制风扇速度。