Merge pull request #9 from outis1one/claude/bios-vt-power-settings-mxjh0x
fix: remove iDRAC HddSeq dependency removed in BIOS 2.19+
This commit is contained in:
+23
-9
@@ -212,10 +212,26 @@ targets unconfigured physical disks.
|
||||
|
||||
### Install perccli
|
||||
|
||||
Download from Dell support (search "PERCCLI") or copy the `.deb` to the host:
|
||||
`apt` does not carry perccli. Download the RPM from Dell and convert it:
|
||||
|
||||
```bash
|
||||
dpkg -i perccli_*.deb
|
||||
# Download (referer header required — Dell blocks plain curl)
|
||||
curl -L \
|
||||
--referer "https://www.dell.com/" \
|
||||
--user-agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" \
|
||||
"https://dl.dell.com/FOLDER03559396M/1/perccli-1.17.10-1.noarch.rpm" \
|
||||
-o /tmp/perccli.rpm
|
||||
|
||||
# Convert RPM → deb and install
|
||||
apt install -y alien
|
||||
alien --to-deb /tmp/perccli.rpm
|
||||
dpkg -i /tmp/perccli_*.deb
|
||||
|
||||
# Binary lands in /opt/MegaRAID/perccli/ — symlink it into PATH
|
||||
ln -s /opt/MegaRAID/perccli/perccli64 /usr/local/bin/perccli
|
||||
|
||||
# Verify
|
||||
perccli show
|
||||
```
|
||||
|
||||
### Run the script
|
||||
@@ -300,17 +316,15 @@ To check current speed: `ipmitool sdr type Fan`
|
||||
|
||||
### Staggered spin-up
|
||||
|
||||
**Layer 1 — iDRAC BIOS** (fires at every boot, before OS):
|
||||
> **BIOS 2.19+ note:** `BIOS.StorageSettings.HddSeq` was removed from the
|
||||
> R730xd firmware. The iDRAC/BIOS layer (Layer 1) no longer works — skip it
|
||||
> and go straight to the Linux service below.
|
||||
|
||||
```bash
|
||||
bash /opt/local_proxmox/scripts/stagger-spinup.sh --idrac
|
||||
# If racadm is not available, the script prints the iDRAC web UI path instead.
|
||||
```
|
||||
|
||||
**Layer 2 — Linux service** (handles drives coming up from standby):
|
||||
**Linux service** (staggers drives in standby at OS boot):
|
||||
|
||||
```bash
|
||||
cp /opt/local_proxmox/scripts/stagger-spinup.sh /usr/local/sbin/stagger-spinup.sh
|
||||
chmod +x /usr/local/sbin/stagger-spinup.sh
|
||||
cp /opt/local_proxmox/scripts/stagger-spinup.service /etc/systemd/system/
|
||||
systemctl daemon-reload
|
||||
systemctl enable stagger-spinup.service
|
||||
|
||||
@@ -10,9 +10,14 @@ set -euo pipefail
|
||||
|
||||
PERCCLI=$(command -v perccli || command -v perccli64 || true)
|
||||
if [[ -z "$PERCCLI" ]]; then
|
||||
echo "perccli not found. Install from:"
|
||||
echo " https://www.dell.com/support (search 'PERCCLI')"
|
||||
echo " or: dpkg -i perccli_*.deb"
|
||||
echo "perccli not found. Install it:"
|
||||
echo " curl -L --referer 'https://www.dell.com/' \\"
|
||||
echo " --user-agent 'Mozilla/5.0' \\"
|
||||
echo " 'https://dl.dell.com/FOLDER03559396M/1/perccli-1.17.10-1.noarch.rpm' \\"
|
||||
echo " -o /tmp/perccli.rpm"
|
||||
echo " apt install -y alien && alien --to-deb /tmp/perccli.rpm"
|
||||
echo " dpkg -i /tmp/perccli_*.deb"
|
||||
echo " ln -s /opt/MegaRAID/perccli/perccli64 /usr/local/bin/perccli"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
+13
-19
@@ -28,25 +28,19 @@ HDPARM=$(command -v hdparm || true)
|
||||
# ── iDRAC BIOS method (Layer 1) ───────────────────────────────────────────────
|
||||
|
||||
configure_idrac() {
|
||||
if ! command -v racadm &>/dev/null; then
|
||||
echo "racadm not found."
|
||||
echo "Option A: Run from iDRAC SSH:"
|
||||
echo " ssh root@<idrac-ip>"
|
||||
echo " racadm set BIOS.StorageSettings.HddSeq Enabled"
|
||||
echo " racadm jobqueue create BIOS.Setup.1-1"
|
||||
echo " # Then reboot to apply."
|
||||
echo ""
|
||||
echo "Option B: iDRAC web UI:"
|
||||
echo " System BIOS → Power Management → Hard Disk Drive Sequencing → Enabled"
|
||||
echo " Apply and reboot."
|
||||
return 0
|
||||
fi
|
||||
|
||||
echo "Enabling iDRAC hard disk drive sequencing (staggered spin-up)..."
|
||||
racadm set BIOS.StorageSettings.HddSeq Enabled
|
||||
racadm jobqueue create BIOS.Setup.1-1
|
||||
echo "Job queued. Reboot for the BIOS setting to take effect."
|
||||
echo "Verify after reboot with: racadm get BIOS.StorageSettings.HddSeq"
|
||||
# BIOS.StorageSettings.HddSeq was removed in R730xd BIOS 2.19+.
|
||||
# The BIOS-level stagger is no longer available; rely on Layer 2 (Linux service).
|
||||
echo "NOTE: BIOS.StorageSettings.HddSeq was removed in R730xd BIOS 2.19+."
|
||||
echo "The iDRAC/BIOS layer for staggered spin-up is not available on this firmware."
|
||||
echo ""
|
||||
echo "Use the Linux systemd service (Layer 2) instead — it handles the same"
|
||||
echo "job by staggering drives that are in standby at OS boot time."
|
||||
echo ""
|
||||
echo "To install the service:"
|
||||
echo " cp stagger-spinup.sh /usr/local/sbin/stagger-spinup.sh"
|
||||
echo " chmod +x /usr/local/sbin/stagger-spinup.sh"
|
||||
echo " # copy stagger-spinup.service to /etc/systemd/system/"
|
||||
echo " systemctl daemon-reload && systemctl enable stagger-spinup.service"
|
||||
}
|
||||
|
||||
# ── Linux spin-up stagger (Layer 2) ──────────────────────────────────────────
|
||||
|
||||
Reference in New Issue
Block a user