Home Server

Build Your Own Home Server: The Complete Guide

Everything you need to plan, build, power, and secure a home server — whether you repurpose an old PC you already own, build around a low-power single-board computer, or assemble a dedicated NAS. Covers hardware paths, a full step-by-step assembly walkthrough, the right software for every use case (media streaming, gaming servers, home automation, databases, ad-blocking, and more), power backup, and a real backup strategy.

Beginner friendly Repurposed PC · Raspberry Pi / SBC · Dedicated Build Plex · TrueNAS · Proxmox · Home Assistant · Pi-hole

Before you start. Always unplug a computer from the wall before opening the case, touch a grounded metal surface (or wear an anti-static wrist strap) before handling components, and never work on a PSU's internals — treat it as a sealed unit. If you're repurposing a drive that already has data on it, back it up before you do anything else. This guide is educational reference material, not a substitute for your specific hardware's manual — always check the documentation for your case, motherboard, and drives before assembly.

What Is a Home Server, and Why Build One?

A home server is simply a computer that stays on and stays connected, quietly doing a job for you and your household around the clock: storing and streaming your media, backing up your other devices, running your smart-home automations, hosting a game world for your friends, or replacing a handful of paid cloud subscriptions with something you own and control.

Unlike your everyday laptop or desktop, a server is optimized for uptime, reliability, and efficiency rather than raw single-user performance. That changes the priorities: quiet, low-power hardware; drives rated for continuous use; a stable power supply (and ideally a battery backup); and a real backup plan, since a server usually holds the only copy of things you actually care about.

Quick answer: you don't need to buy anything to get started. An old laptop or desktop gathering dust in a closet is a perfectly capable first home server — see the Hardware Paths tab for how to evaluate what you already have before spending a cent.
What You Can Do With It
  • Stream your own movie/TV/music library to any device (Plex, Jellyfin)
  • Centralize backups from every phone, laptop and desktop in the house
  • Host a private Minecraft, Valheim or ARK server for friends
  • Run Home Assistant to control lights, sensors and smart devices locally
  • Block ads and trackers network-wide with Pi-hole or AdGuard Home
  • Replace Google Photos/Dropbox with your own Nextcloud
  • Run a personal VPN to securely reach your home network from anywhere
  • Spin up databases, dev environments, and self-hosted apps in containers
How to Use This Guide

Work through it in order: pick your hardware path, physically build (or repurpose) the machine, choose the software for what you actually want to run, then lock in power protection and backups before you trust it with anything important.

Three Ways to Get There
PathTypical costIdle power drawDifficultyBest for
Repurposed PC/laptop$0 (you own it)15–45WEasiestTrying self-hosting risk-free before buying anything
Raspberry Pi / SBC$$2–8WEasyLightweight, always-on jobs: Pi-hole, Home Assistant, VPN
Dedicated build (NAS/tower)$$$20–60WModerateHeavy storage, 4K media transcoding, virtualization

Full comparison, minimum specs by use case, and how to evaluate hardware you already own are in the next tab.

Choose Your Starting Point

There is no single "correct" home server — the right hardware depends entirely on what you want to run and what you already have lying around. All three paths below are legitimate; most home-lab enthusiasts end up owning more than one over time.

Path A — Repurpose What You Have
An old desktop or laptop is the cheapest possible start: zero hardware cost, and modern lightweight server software runs comfortably on a 6–10 year old CPU. Check RAM (8GB+ is comfortable), storage health, and that the fan/thermal paste aren't due for cleaning.
$0 to startGreat for learning
Path B — Raspberry Pi / Single-Board Computer
A credit-card-sized computer drawing only a few watts, silent, and cheap enough that a dedicated one per job (Pi-hole here, Home Assistant there) is genuinely practical. Limited CPU/RAM rules out heavy transcoding or big databases.
2–8W idleSilent, fanless options
Path C — Dedicated Build (Mini-Tower or NAS)
A purpose-built machine with room for multiple drive bays, ECC RAM, and a CPU with real transcoding muscle (or an add-in GPU). The right choice once you're storing serious amounts of media or running several demanding services at once.
Best ceilingMost upgradable
Full Comparison
FactorRepurposed PCRaspberry Pi / SBCDedicated build
Upfront costFree (you own it)LowModerate–high
Power draw (idle)15–45W2–8W20–60W
NoiseDepends on age (often loud fans)Silent (usually fanless)Quiet if chosen deliberately
Storage expansion2–4 internal bays typicalUSB only, unless a HAT/case adds SATA4–8+ bays, hot-swap options
4K video transcodingDepends on CPU generationWeak to noneStrong with the right CPU/GPU
Best first projectFile backup target, Pi-hole, small Plex libraryPi-hole, Home Assistant, VPN, DNSMulti-user Plex, virtualization, big NAS array
Evaluating a Repurposed PC or Laptop
  • RAM: 4GB is workable for one light service; 8GB+ is comfortable for several.
  • CPU: practically any 64-bit CPU from the last decade runs Linux server software fine; only heavy Plex transcoding or virtualization really taxes an old chip.
  • Storage health: check a mechanical drive's SMART data before trusting it with anything important — a drive with reallocated sectors should be treated as disposable, not backed onto.
  • A laptop has a built-in UPS — its battery keeps it running through short power cuts, which is a genuine advantage over a repurposed desktop tower. Just remove/disable the battery if you plan to run it 24/7 for years, since batteries degrade under constant charge — check your laptop's manufacturer guidance.
  • Old but unreliable hardware (random reboots, failing capacitors) is a false economy — a $30–50 used SBC is often the better call than fighting flaky old hardware.
Minimum Specs by Intended Use
Use caseCPURAM
Pi-hole / DNS ad-blockingAny, even single-core512MB+
Home AssistantDual-core+2GB+
File storage / NAS (no transcoding)Dual-core+4GB+
Plex/Jellyfin (1–2 streams, transcoding)Quad-core w/ Quick Sync or GPU8GB+
Small game server (Minecraft/Valheim)Quad-core, high single-thread4–8GB+
Virtualization hub (Proxmox, several VMs)6+ cores16GB+

Treat these as comfortable starting points, not hard limits — the full breakdown per service is in the Use Cases & Software tab.

Don't own a spare machine at all? Check with family and friends first — a "too slow for Windows" laptop from a few years ago is frequently a perfectly good Linux server. If you do need to buy, a low-power SBC (Path B) or a small used office PC ("thin client" or mini-PC) is almost always cheaper and more power-efficient than building new from scratch.
Before You Open the Case

This walkthrough covers a from-parts tower build (Path C). If you're repurposing a complete PC or laptop (Path A), skip straight to Step 9. If you're using a Raspberry Pi / SBC (Path B), skip to Step 10 — there's no case to assemble, just a board, a case, and a microSD card or USB drive.

  • Phillips-head screwdriver (magnetic tip helps a lot)
  • Anti-static wrist strap, or touch a grounded metal object often
  • A clean, well-lit, carpet-free work surface
  • Zip ties or velcro straps for cable management
  • Thermal paste (only if your CPU cooler doesn't already have some pre-applied)
  • The manuals for your case and motherboard, at least on a second screen
1Prepare the Case

Lay the case on its side and remove both side panels. Locate the motherboard standoffs (small brass posts) and install any that are missing, matching your motherboard's screw-hole pattern (check the manual for the exact layout).

2Install the Power Supply

Slide the PSU into its bay (fan facing outward or downward, per your case's ventilation design) and secure it with the four rear case screws. Don't connect any cables yet.

Buy more wattage headroom than your parts strictly need — a PSU running near its limit runs hotter and less efficiently.

3Mount CPU & Cooler on the Motherboard

With the motherboard on an anti-static surface (its own box works well), lift the CPU socket lever, align the CPU's corner notch/triangle, and let it drop in — never force it. Apply a pea-sized dot of thermal paste if needed, then mount the cooler per its instructions.

4Mount the Motherboard in the Case

Lower the motherboard onto the standoffs from Step 1, lining up the rear I/O with the case's I/O shield. Secure every hole with a screw — snug, not overtightened.

5Install RAM

Open the clips on the correct slots (check your manual for which pair enables dual-channel — usually every other slot), align each stick's notch, and press straight down evenly on both ends until the clips snap shut.

6Install Storage Drives

Mount a small SSD (or NVMe stick directly on the motherboard) as your boot/OS drive, and any HDDs into the case's drive bays for bulk storage. Connect each drive's SATA data cable to the motherboard and a SATA power cable from the PSU.

Planning more than one storage drive? A basic RAID (mirroring) protects against a single drive failure — but it is not a backup on its own. See the Backup Strategy tab.

7Connect Front Panel & Fans

Match the small front-panel connector pins (power switch, reset switch, LEDs) to your motherboard's labeled header, one at a time, using the manual's diagram — these are the fiddliest connectors in the whole build. Plug any case fans into the labeled fan headers.

8Cable Management

Route cables behind the motherboard tray where possible and bundle the rest with zip ties, keeping them clear of fans. This isn't cosmetic — good airflow keeps a 24/7 server running cooler, quieter, and longer.

9First Boot & BIOS Check

Connect a monitor, keyboard, and power cable, then press the power button. Enter the BIOS/UEFI setup (commonly Del or F2 at boot) and confirm all RAM and drives are detected, then enable XMP/EXPO memory profile and, on a repurposed system, verify the boot drive priority.

10Install the Operating System

Write your chosen OS image to a USB drive (or microSD for an SBC), boot from it, and follow the installer. A Raspberry Pi typically skips this step entirely — most images are flashed directly and boot headless on first power-up. See the next tab to pick the right OS for your use case.

Repurposing a complete PC or laptop? You can skip Steps 1–8 entirely — just open the case briefly to blow out dust with compressed air and check the cooling fan spins freely, then go straight to Step 9.
Pick Your Use Case

Most home servers end up running several of these at once, usually inside lightweight containers (Docker) so each service stays isolated and easy to update independently. Start with one, get comfortable, then add more.

Media Server
Plex, Jellyfin (fully open-source) or Emby turn your own movie/show/music files into a Netflix-style app on every TV and phone in the house. Multiple simultaneous 4K streams need real transcoding power — a CPU with Intel Quick Sync (or an equivalent GPU) is far more efficient than CPU-only transcoding.
CPU/GPU dependentNeeds storage
NAS / File Storage & Backup Target
TrueNAS, OpenMediaVault, or Unraid turn a pile of drives into one reliable, network-accessible storage pool with snapshotting and optional RAID redundancy — the natural landing spot for every device's backups.
Light CPU loadRAM helps a lot
Game Server
Host a private, always-on Minecraft, Valheim, ARK, or Satisfactory world for friends instead of paying a hosting company. Requirements vary hugely by game — Minecraft is light, ARK and Satisfactory want real CPU and RAM.
Per-game specs varyLow latency helps
Home Automation
Home Assistant is the standard: it unifies smart lights, sensors, thermostats and cameras from dozens of brands under one local dashboard and automation engine — no cloud dependency, no outage taking your lights down.
Runs great on an SBC
Network-Wide Ad-Blocking & DNS
Pi-hole or AdGuard Home block ads and trackers for every device on your network at the DNS level — no per-device app needed. Extremely light; the classic first project for a Raspberry Pi.
Runs on almost anything
Personal VPN
WireGuard (fast, modern, minimal setup) lets you securely reach your home network — and everything on it — from anywhere, without exposing services directly to the internet. Tailscale or ZeroTier wrap WireGuard in an easier-to-manage mesh if you'd rather skip manual key/port setup.
Minimal resources
Personal Cloud (Photos & Files)
Nextcloud or Immich replicate what Google Photos/Drive or iCloud do, syncing photos and files across your devices automatically — except the data lives on hardware you own.
Moderate RAM/storage
Databases & Dev Sandbox
A dedicated, always-on PostgreSQL/MySQL instance or a full development environment you can SSH into from a laptop, tablet, or even your phone. An SSD matters far more here than raw CPU power — database performance is dominated by storage I/O.
SSD strongly recommended
Virtualization Hub
Proxmox VE turns one physical machine into many isolated virtual machines and containers, so you can run several of the use cases above side by side — each with its own resources, backups, and update schedule — on a single box.
Needs the most RAM/cores
Software Quick-Reference
GoalRecommended softwareLicense
General-purpose base OSUbuntu Server, Debian, or Proxmox VE (for virtualization)Free / open-source
NAS-focused OSTrueNAS SCALE, OpenMediaVault, UnraidFree (Unraid is paid)
Media streamingJellyfin (free/open) or Plex (freemium)Free / Freemium
Home automationHome Assistant OSFree / open-source
Ad-blocking DNSPi-hole, AdGuard HomeFree / open-source
VPNWireGuard, Tailscale, ZeroTierFree tiers available
Container managementDocker + PortainerFree / open-source
Personal cloud/photosNextcloud, ImmichFree / open-source

Running several services on one machine? Learn Docker early — each app runs in its own isolated container, so one misbehaving service can't take the others down, and updates/removals stay clean.

Why Power Protection Matters

A server is only useful if it's actually running when you need it — and it's only trustworthy if a sudden power cut doesn't corrupt whatever it was writing at that instant. Unlike a desktop you shut down each night, a server is expected to survive storms, brownouts, and the occasional tripped breaker without losing data.

The real risk isn't the outage — it's the sudden cut. A database or filesystem mid-write when power vanishes can end up corrupted. A UPS (uninterruptible power supply) bridges that gap and, ideally, tells the server to shut down cleanly if the outage runs long.
Surges matter too. A UPS with AVR (automatic voltage regulation) or a basic surge protector also shields sensitive hardware from voltage spikes — a real risk for equipment that's powered on 24/7/365.
Estimating Your Power Draw
SetupIdleUnder load
Raspberry Pi / SBC2–8W6–15W
Repurposed laptop8–20W25–60W
Repurposed desktop tower30–60W80–200W+
Efficient dedicated build (low-power CPU)15–35W50–100W
Each additional 3.5″ HDD~4–8W~6–10W

A basic plug-in power meter (or a smart plug that reports wattage) gives you an exact reading for your specific build in minutes — far more reliable than any table of estimates, including this one.

Sizing a UPS

UPS capacity is rated in VA (volt-amps) and watts. As a simple rule of thumb, buy roughly 2–3× your server's actual load in watts — that headroom gives you a genuinely useful runtime window (typically 10–30+ minutes) rather than just a few seconds, and leaves room to add another device later.

Example: a repurposed desktop drawing ~50W under normal load is comfortably covered by an entry-level 600VA/360W UPS, with several minutes of runtime to spare for a clean shutdown.

Look for a UPS with a USB (or network) management port — this is what lets the server detect an outage and react automatically, covered next.

Automatic Graceful Shutdown (NUT)

Network UPS Tools (NUT) is the standard free, open-source software that watches your UPS over USB and tells connected servers to shut down safely once the battery runs low — so an extended outage results in a clean shutdown instead of a hard power loss. A minimal client-side config on a Debian/Ubuntu-based server looks like this:

sudo apt install nut
MODE=netclient # in /etc/nut/nut.conf
MONITOR ups@192.168.1.10 1 monuser secret slave # in upsmon.conf

Exact configuration depends on your UPS model and OS — check your UPS manufacturer's documentation or your server OS's NUT integration guide for the precise setup.

Alternatives If You Don't Have a UPS Yet
  • Use a laptop as your server (Path A) — its built-in battery already acts as a natural UPS through short outages, at no extra cost.
  • A secondhand/used UPS often only needs a fresh replacement battery to work like new, at a fraction of the cost of buying new.
  • Configure the BIOS "power-on after AC loss" setting so a desktop server automatically powers back on once electricity returns, rather than sitting off until someone flips the switch by hand.
  • At minimum, use a basic surge protector — it won't provide runtime, but it's cheap insurance against spikes frying your hardware.
Energy-Efficient Choices
  • Favor CPUs built for efficiency (low TDP mobile/embedded chips) over high-performance desktop CPUs if raw power isn't needed.
  • Configure drives to spin down after inactivity on a NAS that isn't accessed constantly — most NAS operating systems support this natively.
  • An SBC running one or two light services (Path B) can cost only a few dollars a year in electricity — worth factoring in alongside upfront price.
  • A single efficient always-on box beats several older, power-hungry machines left running — consolidate where you can.
RAID Is Not a Backup

This is the single most important idea on this page. RAID (multiple drives working together) protects you against one drive failing — it does nothing to protect you from accidental deletion, ransomware, a fire or flood, a lightning strike frying the whole machine, or a software bug that silently corrupts your data across every mirrored drive at once. A backup is a separate copy, ideally in a separate place.

If it only exists in one place, it doesn't really exist. Treat your server's storage pool as the working copy, not the archive — the archive is the backup you keep somewhere else.
The 3-2-1 Rule
3 copies
The original plus at least two backups — not two copies total, three.
2 different media
Not two drives in the same machine — an internal drive plus an external drive, or an internal drive plus cloud storage.
1 copy offsite
Somewhere physically separate from your home — cloud storage, or a drive kept at a family member's house — so a house fire or theft can't take out every copy at once.
Backup Tools Worth Knowing
ToolBest for
rsyncSimple, scriptable file/folder mirroring — the classic building block
Restic / BorgEncrypted, deduplicated, versioned backups — restore any past snapshot, not just the latest
DuplicatiFriendly web UI wrapped around similar snapshot-style backups
rcloneSyncs to dozens of cloud storage providers — the usual way to get your offsite copy out
Making It Actually Happen
  • Automate it. A backup that depends on you remembering to run it manually will eventually not happen — schedule it with cron or a systemd timer.
  • Encrypt anything offsite, especially cloud-stored backups, so a provider breach doesn't expose your data.
  • Test a restore at least once. An untested backup is a hope, not a guarantee — actually recover a file from it and confirm it opens correctly.
  • Back up configs, not just data — Docker Compose files, app settings, and container definitions save enormous time when rebuilding a service.
  • A cloud storage subscription for the offsite leg is inexpensive relative to what it protects — see the Buying Guide tab for affiliate options.
Give Your Server a Fixed Address

A server whose local IP address changes every so often breaks every bookmark, shortcut, and automation pointed at it. Fix this once, early, and forget about it.

DHCP reservation (recommended)
In your router's settings, reserve a fixed local IP for your server's MAC address. It still uses DHCP, but always receives the same address.
Static IP (manual)
Set the IP directly on the server itself. Works, but means updating it by hand on both the server and router if your network layout ever changes.
Reaching Your Server From Outside the House
MethodSetup effortSecurity posture
Tailscale / ZeroTier (mesh VPN)LowStrong — no ports exposed to the internet
Self-hosted WireGuardModerateStrong, fully self-controlled
Port forwarding + reverse proxyHigherWeaker unless carefully hardened

For most home setups, a mesh VPN (Tailscale/ZeroTier) is the best starting point: it works through most routers with zero configuration and never exposes a single port to the open internet.

Basic Security Hygiene
  • Change every default password and username on day one — this is the single most common way home servers get compromised.
  • Keep the OS and any exposed services updated — enable automatic security updates where practical.
  • Only expose to the internet what genuinely needs to be reachable from outside; keep everything else on the local network or behind a VPN.
  • Consider a separate VLAN or guest network for smart-home/IoT devices, isolated from the server and your main devices.
  • If you do forward a port, put a reverse proxy (like Nginx Proxy Manager or Caddy) in front of it with HTTPS and, ideally, fail2ban-style brute-force protection.
Build Out Your Home Server

A practical shopping list organized the way you'd actually buy it. Remember: if you already own a usable PC or laptop, you don't need most of this list to get started — see the Hardware Paths tab.

Core Hardware
Compact Server/NAS Case
Multiple drive bays and good airflow for a dedicated build.
Check Price
Low-Power CPU / Motherboard Combo
Efficient chip with built-in transcoding, ideal for 24/7 use.
Check Price
Single-Board Computer Kit
Board, case, power supply and microSD card bundled together.
Check Price
RAM (Dual-Channel Kit)
8–32GB kits depending on your intended workload.
Check Price
80+ Bronze/Gold PSU
Efficient, reliable power for hardware running around the clock.
Check Price
NVMe/SSD Boot Drive
Fast, reliable OS drive — keep bulk media off this drive.
Check Price
NAS-Rated Hard Drive
Built for 24/7 operation — the right choice for bulk storage.
Check Price
Power, Backup & Networking
UPS with USB Management Port
Battery backup plus automatic graceful shutdown support.
Check Price
Surge Protector Power Strip
Baseline spike protection for the rest of your networking gear.
Check Price
Cloud Backup Storage Plan
The offsite leg of your 3-2-1 backup strategy.
Check Price
External HDD (for local backup)
A second, different-media copy — the "2" in the 3-2-1 rule.
Check Price
Managed Network Switch
VLAN support for isolating IoT devices from your server.
Check Price
Cat6 Ethernet Cables
A wired connection beats Wi-Fi for a server, every time.
Check Price
Build Tools & Accessories
Magnetic Precision Screwdriver Set
The right bits for motherboard, drive and case screws.
Check Price
Anti-Static Wrist Strap
Cheap insurance against static damage to sensitive components.
Check Price
Thermal Paste
For a CPU cooler that doesn't already come pre-applied.
Check Price
Velcro Cable Ties
Reusable cable management that won't scratch components.
Check Price
USB Power Meter / Smart Plug
Measure your exact real-world wattage draw and UPS runtime.
Check Price

Some links on this page are affiliate links — if you buy through them we may earn a small commission at no extra cost to you. Replace the placeholder links above with your own Pretty Links before publishing.