我来介绍几种控制风扇转速的脚本方法,按不同操作系统分别说明:

Linux 系统
使用 lm-sensors 和 fancontrol
# 安装工具 sudo apt-get install lm-sensors fancontrol # 检测传感器 sudo sensors-detect # 生成配置文件 sudo pwmconfig
手动控制脚本示例
#!/bin/bash
# fan_control.sh
# 设置风扇为手动模式
echo 1 > /sys/class/hwmon/hwmon0/pwm1_enable
# 设置转速(0-255)
echo 180 > /sys/class/hwmon/hwmon0/pwm1
# 根据温度自动调整
while true; do
temp=$(sensors | grep 'Core 0' | awk '{print $3}' | cut -d'+' -f2 | cut -d'.' -f1)
if [ $temp -gt 70 ]; then
echo 200 > /sys/class/hwmon/hwmon0/pwm1
elif [ $temp -gt 50 ]; then
echo 150 > /sys/class/hwmon/hwmon0/pwm1
else
echo 100 > /sys/class/hwmon/hwmon0/pwm1
fi
sleep 5
done
使用 nbfc (NoteBook FanControl)
# 安装 git clone https://github.com/hirschmann/nbfc.git cd nbfc ./install.sh # 控制命令 nbfc start -a nbfc set -s 50
Windows 系统
PowerShell 脚本(需管理员权限)
# fan_control.ps1 # 使用 WMI 控制风扇 $fanSpeed = 50 # 设置转速百分比 # 获取风扇控制对象 $fan = Get-WmiObject -Namespace "root\wmi" -Class MSAcpi_ThermalZoneTemperature # 使用 SpeedFan 或厂商工具 API # 这里以 SpeedFan 为例 $speedfan = New-Object -ComObject SpeedFan.Control $speedfan.SetSpeed(0, $fanSpeed)
批处理文件
@echo off :: fan_control.bat :: 调用厂商工具控制风扇 :: 对于 Dell 笔记本 dell-biosutil.exe --set-fan-speed 50% :: 对于 ThinkPad acpicontrol.exe fan level 3
第三方工具脚本
SpeedFan (Windows)
# 使用命令行参数 speedfan.exe -a 50@0
NVIDIA 显卡风扇控制
# Linux nvidia-settings -a "[gpu:0]/GPUFanControlState=1" nvidia-settings -a "[fan:0]/GPUCurrentFanSpeed=50" # Windows nvidia-smi -pl 80
完整的智能温控脚本示例
#!/usr/bin/env python3
# smart_fan_control.py
import os
import time
import subprocess
class FanController:
def __init__(self):
self.hwmon_path = "/sys/class/hwmon/hwmon0"
self.pwm_path = f"{self.hwmon_path}/pwm1"
self.temp_path = f"{self.hwmon_path}/temp1_input"
def read_temp(self):
# 读取温度
with open(self.temp_path, 'r') as f:
temp = int(f.read()) / 1000
return temp
def set_speed(self, speed):
# 设置风扇转速
with open(self.pwm_path, 'w') as f:
f.write(str(speed))
def auto_control(self):
# 自动温控逻辑
while True:
temp = self.read_temp()
if temp > 70:
self.set_speed(255) # 全速
elif temp > 60:
self.set_speed(200)
elif temp > 50:
self.set_speed(150)
else:
self.set_speed(100) # 低速
time.sleep(5)
if __name__ == "__main__":
controller = FanController()
controller.auto_control()
使用方法
- 查看设备信息
# Linux ls /sys/class/hwmon/ cat /sys/class/hwmon/hwmon0/name
查看当前风扇状态
watch -n 1 "sensors && cat /sys/class/hwmon/hwmon0/fan"
2. **运行脚本**
```bash
# 添加执行权限
chmod +x fan_control.sh
# 后台运行
sudo ./fan_control.sh &
- 开机自启(可选)
# 添加到 rc.local 或 systemd sudo crontab -e # 添加: @reboot /path/to/fan_control.sh
注意事项
⚠️ 安全提示:
- 控制风扇前确保了解硬件规格
- 保留适当的温度余量
- 监控系统温度以防过热
- 不同硬件可能使用不同的控制接口
- 某些系统可能需要ACPI或BIOS支持
你使用的是哪种操作系统和硬件设备?我可以提供更针对性的配置方案。
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播