在 Linux 系统中,控制风扇转速通常需要通过以下方式实现,具体取决于你的硬件和主板支持情况:
首先,确认你的硬件是否支持软件控制风扇转速:
thinkpad_acpi
或 dell_smm_hwmon
等内核模块控制风扇。pwm-fan
或 nct6775
(常见于华硕、技嘉等主板)等驱动。运行以下命令查看是否有风扇控制接口:
ls /sys/class/hwmon/hwmon*/fan*_input
ls /sys/class/hwmon/hwmon*/pwm*
如果看到类似 /sys/class/hwmon/hwmon0/pwm1
的文件,说明支持 PWM 风扇控制。
pwmconfig
(推荐)pwmconfig
是 fancontrol
工具的一部分,可以自动检测并配置风扇控制。
fancontrol
sudo apt install fancontrol lm-sensors # Debian/Ubuntu
sudo dnf install fancontrol lm_sensors # Fedora
sudo pacman -S fancontrol lm_sensors # Arch Linux
sudo sensors-detect
按回车确认所有检测项(除非你明确知道某些硬件不需要检测)。
pwmconfig
sudo pwmconfig
它会:
/etc/fancontrol
配置文件。fancontrol
sudo systemctl enable fancontrol
sudo systemctl start fancontrol
现在风扇转速会根据温度自动调整。
如果 fancontrol
不适用,可以手动写入 /sys/class/hwmon/hwmon*/pwm*
文件控制风扇。
cat /sys/class/hwmon/hwmon0/pwm1
0
= 风扇停转(可能不安全)255
= 最大转速echo 128 | sudo tee /sys/class/hwmon/hwmon0/pwm1
(128
是中间值,可根据需要调整)
某些主板支持 pwm_enable
文件:
cat /sys/class/hwmon/hwmon0/pwm1_enable
1
= PWM 模式(推荐)2
= DC 模式(电压控制)0
= 自动模式(通常由 BIOS 控制)修改模式:
echo 1 | sudo tee /sys/class/hwmon/hwmon0/pwm1_enable
thinkpad_acpi
)echo "level 4" | sudo tee /proc/acpi/ibm/fan
level 0
= 停转(不推荐)level 4
= 中等转速level 7
= 最大转速dell_smm_hwmon
)部分 Dell 笔记本支持:
sudo modprobe dell_smm_hwmon
echo "level 5" | sudo tee /sys/class/hwmon/hwmon*/fan1_target
使用 sensors
查看 CPU/GPU 温度:
sudo sensors
或:
watch -n 1 sensors
fancontrol
的配置在重启后仍然有效,但手动写入 /sys
的设置不会保存。