Dell服务器风扇控制

清夏晚风 Lv7

Dell 服务器风扇控制程序使用指南

本文介绍一个用于控制 Dell 服务器风扇转速的开源程序,该程序可根据 CPU 温度自动调整风扇转速,有效降低服务器噪音。

下载地址

支持的服务器型号

该程序主要适用于以下 Dell 服务器:

系列 型号
主力支持 R730, R730XD
可能兼容 R620, R720, R630, R640, R740, R820, R830, R840, R420, R430, R440
其他品牌 浪潮 SA5212M5

注意: R*40 系列(如 R740、R640)服务器的 iDRAC 固件版本必须低于 3.30.30.30 才能正常使用。

程序功能

  • 智能温控: 根据 CPU 温度自动调整风扇转速
  • 目标温度设置: 可设置目标温度,程序会控制风扇使 CPU 温度在该温度附近浮动
  • 最低转速限制: 支持设置风扇最低转速,保护无风扇硬件
  • 多平台支持: 支持 Windows、Linux 和 Docker 部署

重要提示: 程序仅根据 CPU 温度调整风扇,会忽略其他硬件温度。如果服务器上有其他无风扇硬件,建议将最低风扇转速设置为较大值。

前置要求

服务器端配置

在使用本程序前,需要在服务器 iDRAC 中启用 “LAN 上的 IPMI” 功能:

  1. 登录 iDRAC 管理界面
  2. 进入 iDRAC 设置网络IPMI 设置
  3. 勾选 “启用 LAN 上的 IPMI”
  4. 保存设置

对于浪潮 SA5212M5 服务器,需要配置能访问 IPMI 服务的用户(通常添加 BMC 管理员用户即可)。

环境依赖

Windows 平台

  • JDK 17 或更高版本

Linux 平台

  • JDK 17 或更高版本
  • ipmitool 工具
1
2
3
4
5
# CentOS/RHEL 安装依赖
yum install -y java-17-openjdk ipmitool

# Ubuntu/Debian 安装依赖
apt-get install -y openjdk-17-jdk ipmitool

使用方法

方式一:Windows 独立程序

  1. 安装 JDK 17
  2. 下载并解压程序包
  3. 编辑 config.ini 配置文件,设置服务器连接信息
  4. 运行 start-windows.bat 启动程序

方式二:Linux 独立程序

  1. 安装 JDK 17 和 ipmitool
  2. 下载并解压程序包
  3. 编辑 config.ini 配置文件
  4. 运行 start-linux.sh 启动程序
1
2
chmod +x start-linux.sh
./start-linux.sh

方式三:Docker 部署(推荐)

1
2
3
4
5
6
7
8
9
10
docker run -d \
--name dell-fan-control \
-e "target_temperature=70" \
-e "server_user=root" \
-e "server_password=yourPassword" \
-e "server_ip=192.168.0.5" \
-e "debug=false" \
-e "TZ=Asia/Shanghai" \
--restart=always \
syangtechcn/dell-fan-control:latest

配置参数说明

环境变量 / config.ini 参数

参数名 说明 默认值
target_temperature 风扇控制目标温度(建议不超过 75°C) 70
server_user 登录 iDRAC/IPMI 的用户名 -
server_password 登录 iDRAC/IPMI 的密码 -
server_ip 服务器 iDRAC IP 地址 -
server_port IPMI 工作端口 623
minFanSpeed 最小风扇转速百分比 8
debug 是否启用温度变化显示(true/false) false

配置建议

  • 目标温度: 建议设置在 65-75°C 之间,不要超过 75°C
  • 最低转速: 如果服务器有无风扇硬件(如某些 RAID 卡),建议将最低转速提高到 15-20%
  • 调试模式: 初次使用可开启 debug=true 查看温度变化日志

正常停止程序

⚠️ 警告: 程序或 Docker 容器必须正常结束!异常结束会导致服务器风扇以固定转速运行,无法响应 CPU 温度变化,可能烧毁硬件!

Windows/Linux 独立程序

在程序运行窗口按 Ctrl+C 正常结束程序。

Docker 容器

1
2
3
4
5
# 正常停止容器
docker stop dell-fan-control

# 查看容器日志
docker logs dell-fan-control

正常停止后,程序会自动将风扇控制权交还给服务器。

注意事项

  1. 生产环境: ⚠️ 不建议在生产环境使用该程序

  2. 异常处理: 如果程序异常结束,需要重新启动程序或容器,然后正常停止,以恢复服务器对风扇的控制

  3. 温度监控: 建议设置告警,监控 CPU 温度异常情况

  4. 固件版本: R740/R640 等 40 系列服务器需确保 iDRAC 版本低于 3.30.30.30

  5. 硬件保护: 程序只关注 CPU 温度,其他硬件(如硬盘、RAID 卡)需要足够的机箱风道散热

故障排查

无法连接服务器

  • 检查 iDRAC IP 地址是否正确
  • 确认 IPMI 功能已在 iDRAC 中启用
  • 检查防火墙是否放行了 IPMI 端口(默认 623)

风扇转速不变化

  • 检查用户名密码是否正确
  • 确认服务器型号是否在支持列表中
  • 查看 debug 日志获取详细信息

程序异常退出

  • 检查 JDK 版本是否为 17 或更高
  • Linux 系统确认 ipmitool 已正确安装
  • 查看程序日志定位问题

参考链接

  • Title: Dell服务器风扇控制
  • Author: 清夏晚风
  • Created at : 2026-02-26 12:36:01
  • Updated at : 2026-05-29 14:43:35
  • Link: https://blog.yuil.cn/2026/02/26/Dell服务器风扇控制/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments