← All articles
A pencil is held in a mechanical device.

UPS for the Homelab: Power Protection for Servers and NAS

Hardware 2026-03-04 · 4 min read ups power protection nut homelab hardware apc cyberpower graceful shutdown power management
By HomeLab Starter Editorial TeamHome lab enthusiasts covering hardware setup, networking, and self-hosted services for home and small office environments.

A homelab without a UPS is a hardware failure waiting to happen. Power outages corrupt filesystems, kill ZFS pools mid-write, and damage storage controllers. A UPS provides runtime to survive brief outages and — more importantly — time to gracefully shut down before power runs out.

Photo by Abby Moulton on Unsplash

UPS Types

Standby (Offline) UPS

The most common and cheapest type. During normal operation, power flows directly from the wall. On outage, the unit switches to battery (2-10ms switchover time).

The brief switchover delay is generally not a problem for modern power supplies, which handle gaps up to 10-20ms.

Line-Interactive UPS

More sophisticated: includes an autotransformer (AVR — Automatic Voltage Regulation) that corrects minor voltage fluctuations without switching to battery. Better protection against brownouts and overvoltage.

For homelab servers and NAS: line-interactive is the right tier. Pure sinusoidal output is preferred for servers with active PFC power supplies (most modern server PSUs).

Simulated vs pure sine wave output: Line-interactive UPS units come in two output waveform types:

Double-Conversion Online UPS

Power always flows through the inverter — no switchover delay. Provides the cleanest, most stable power.

Overkill for most homelabs, but appropriate for high-value equipment or enterprise-grade servers.

Sizing

Calculate your load before buying:

  1. List your equipment with power draws:

    • NAS: ~50-80W (varies with drive count and CPU)
    • Homelab server (modest): 80-150W
    • 24-port switch: 20-40W
    • Router/firewall: 15-25W
    • Raspberry Pi cluster: 5-20W total
  2. Sum the wattage: Example: NAS (70W) + Server (120W) + Switch (30W) + Router (20W) = 240W

  3. Size for 50-70% UPS capacity: A 240W load should have a 400-600VA/W UPS. The ratio of VA to W varies by power factor (typically 0.9 for modern units, so 500VA ≈ 450W).

  4. Calculate runtime: Most UPS specs show runtime at 50% and 100% load. For graceful shutdown you need 5-15 minutes. Buy accordingly.

APC UPS Selector Calculator: APC and CyberPower both have online tools where you input your equipment and get UPS recommendations.

NUT: Network UPS Tools

NUT (Network UPS Tools) is the standard open-source software for communicating with UPS units and triggering graceful shutdowns. Most homelabs use NUT with USB or serial-connected UPS.

Installation

# Ubuntu/Debian/Proxmox
sudo apt install nut nut-server nut-client

Configure USB Connection

# Detect your UPS
sudo nut-scanner -U

# Output shows something like:
[nutdev1]
  driver = "usbhid-ups"
  port = "auto"
  vendorid = "051d"  # APC
  productid = "0002"

/etc/nut/ups.conf

[homelab-ups]
  driver = usbhid-ups
  port = auto
  desc = "APC Back-UPS Pro 1500"

/etc/nut/nut.conf

MODE=standalone
# Or MODE=netserver if multiple machines will connect

/etc/nut/upsd.conf

LISTEN 127.0.0.1 3493
# For network mode, listen on your LAN interface:
# LISTEN 192.168.1.50 3493

/etc/nut/upsd.users

[admin]
  password = change-this
  actions = SET
  instcmds = ALL

[monitor]
  password = monitor-password
  upsmon master

/etc/nut/upsmon.conf

MONITOR homelab-ups@localhost 1 monitor monitor-password master

MINSUPPLIES 1
SHUTDOWNCMD "/sbin/shutdown -h +0"
POLLFREQ 5
POLLFREQALERT 5
HOSTSYNC 15
DEADTIME 15

POWERDOWNFLAG /etc/killpower

NOTIFYCMD /usr/sbin/upssched
RBWARNTIME 43200
NOCOMMWARNTIME 300

FINALDELAY 5

Start NUT:

sudo systemctl enable nut-server nut-client
sudo systemctl start nut-server nut-client

Check status:

upsc homelab-ups

Output includes: battery charge, load percentage, runtime remaining, input voltage, etc.

NUT Network Mode (Multiple Machines)

For a homelab with multiple servers:

NUT server (the machine connected to the UPS via USB):

NUT clients (other machines):

All machines shut down gracefully when the UPS battery reaches a low threshold.

Like what you're reading? Subscribe to HomeLab Starter — free weekly guides in your inbox.

Proxmox + NUT Integration

For Proxmox, NUT is the recommended approach. You can also install the NUT plugin for the Proxmox web UI.

Configure Proxmox to receive shutdown commands:

# On Proxmox host
apt install nut-client

# /etc/nut/upsmon.conf
MONITOR homelab-ups@nut-server-ip 1 monitor password slave
SHUTDOWNCMD "/sbin/shutdown -h now"

When UPS goes critical, the NUT server triggers shutdown on all clients (including Proxmox), which cleanly stops VMs before the OS shuts down.

APC vs CyberPower

Both are popular homelab brands:

APC: Market leader, excellent NUT compatibility, good reliability. Smart-UPS line is highly regarded. More expensive.

CyberPower: Better price-to-capacity ratio. PFC Sinewave models use pure sine wave output. Good NUT support. Popular with homelab builders on budget.

Eaton: Enterprise-grade, excellent reliability, slightly more expensive than APC. Very good NUT support.

For a homelab: CyberPower PR1500LCD or similar (pure sine wave, line-interactive) is a common value choice. APC Smart-UPS 1500 is the reliable default.

Battery Replacement

UPS batteries last 3-5 years. Replacement batteries are available from third parties at lower cost than OEM (Amazon, BatteryClerk, similar). Most consumer UPS units use standard SLA batteries.

Set a calendar reminder to test the battery annually (most UPS units have a self-test button) and plan for replacement before failure.

Get free weekly tips in your inbox. Subscribe to HomeLab Starter