Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

Dell PowerEdge Fan Control

License: MIT Platform

A dynamic fan control solution for Dell PowerEdge servers (R730xd, R730, R630, etc.) running Proxmox VE or other Linux distributions.

中文文档

Problem

Dell PowerEdge servers often run fans at maximum speed (9600+ RPM) when third-party PCIe devices (like NVMe SSDs) are installed, causing excessive noise even when temperatures are low.

Solution

This script provides dynamic fan control based on CPU and NVMe temperatures, balancing cooling performance with noise levels.

Features

  • 🌡️ Monitors both CPU and NVMe temperatures
  • 🔄 Dynamic fan speed adjustment based on temperature
  • 🔇 Disables Dell's aggressive third-party PCIe fan response
  • 🚀 Automatic startup via systemd
  • ⚙️ Configurable temperature thresholds

Requirements

  • Dell PowerEdge server with iDRAC
  • ipmitool package
  • lm-sensors package

Installation

One-Line Install (Recommended)

Using wget:

wget -qO- https://raw.githubusercontent.com/Evil0ctal/Dell-Fan-Control/main/install.sh | sudo bash

Using curl:

curl -fsSL https://raw.githubusercontent.com/Evil0ctal/Dell-Fan-Control/main/install.sh | sudo bash

Quick Install

# Clone the repository git clone https://github.com/Evil0ctal/Dell-Fan-Control.git cd Dell-Fan-Control # Run installer sudo ./install.sh

Manual Install

# Install dependencies apt install ipmitool lm-sensors -y # Detect sensors sensors-detect --auto # Copy script sudo cp dell-fan-control.sh /usr/local/bin/ sudo chmod +x /usr/local/bin/dell-fan-control.sh # Copy systemd service sudo cp dell-fan.service /etc/systemd/system/ # Enable and start service sudo systemctl daemon-reload sudo systemctl enable dell-fan sudo systemctl start dell-fan

Fan Speed Strategy

TemperatureFan SpeedScenario
< 55°C30%Idle
55-60°C35%Light load
60-65°C40%Normal load
65-68°C50%Medium load
68-72°C60%High load
72-75°C70%Heavy load
75-80°C80%Very heavy load
80-85°C90%Extreme load
≥ 85°C100%Protection mode

Usage

Check Service Status

sudo systemctl status dell-fan

View Logs

sudo journalctl -u dell-fan -f

Monitor Temperatures and Fans

watch -n 5 'echo "=== CPU ===" && sensors | grep "Package id" && echo "=== NVMe ===" && sensors | grep "Composite" && echo "=== Fans ===" && ipmitool sensor | grep Fan | grep RPM'

Manually Set Fan Speed

# Enable manual control ipmitool raw 0x30 0x30 0x01 0x00 # Set fan speed (0x1e = 30%, 0x32 = 50%, 0x64 = 100%) ipmitool raw 0x30 0x30 0x02 0xff 0x1e # Restore automatic control ipmitool raw 0x30 0x30 0x01 0x01

Fan Speed Reference

PercentageHex Value
15%0x0f
20%0x14
25%0x19
30%0x1e
35%0x23
40%0x28
50%0x32
60%0x3c
70%0x46
80%0x50
90%0x5a
100%0x64

Configuration

Edit the script to customize temperature thresholds:

sudo nano /usr/local/bin/dell-fan-control.sh

Tested On

  • Dell PowerEdge R730xd
  • Dell PowerEdge R730
  • Dell PowerEdge R630
  • Proxmox VE 8.x / 9.x
  • Debian 12 (Bookworm)
  • Ubuntu 24.04 LTS

Warning

⚠️ Use at your own risk! Manual fan control can lead to overheating if not configured properly. Monitor your temperatures closely after installation.

Uninstall

Using the uninstall script:

cd Dell-Fan-Control sudo ./uninstall.sh

Or manually:

sudo systemctl stop dell-fan sudo systemctl disable dell-fan sudo rm /etc/systemd/system/dell-fan.service sudo rm /usr/local/bin/dell-fan-control.sh sudo systemctl daemon-reload # Restore automatic fan control ipmitool raw 0x30 0x30 0x01 0x01

Contributing

Pull requests are welcome! Please feel free to submit issues and feature requests.

License

MIT License - see LICENSE file for details.

Acknowledgments

  • Dell IPMI documentation
  • Proxmox VE community
  • All contributors

Related Projects

关于 About

Dynamic fan control for Dell PowerEdge servers (R730xd/R730/R630). Reduces noise while maintaining safe temperatures. | Dell PowerEdge 服务器动态风扇控制,降低噪音同时保持安全温度。
dellfan-controlhomelabipmilinuxlinux-shellnoise-reductionpoweredgeproxmoxr630r730r730xdservertemperature-monitoring

语言 Languages

Shell100.0%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
2
Total Commits
峰值: 2次/周
Less
More

核心贡献者 Contributors