TrueNAS: Build Your Own Network Storage Server
At some point, every self-hoster hits the same wall: files scattered across multiple machines, no real backup strategy, and a growing media collection eating up laptop storage. A Network Attached Storage (NAS) server solves all of this. It gives you centralized storage that every device on your network can access, a proper foundation for backups, and a platform for running services like media servers, file sync, and surveillance.
You can buy a turnkey NAS from Synology or QNAP. Or you can build something more powerful for less money with TrueNAS — a free, open source storage operating system built on ZFS, one of the most robust filesystems ever created.
This guide covers what TrueNAS is, how to choose the right edition, what hardware you need, and how it stacks up against the alternatives.
Why Run a NAS at All?
If you're still on the fence, here's what a dedicated NAS gives you:
- Centralized file storage — One place for documents, photos, videos, and project files. Accessible from any device on your network via standard protocols (SMB for Windows/Mac, NFS for Linux).
- Real backups — Your laptop's "backup" of copying files to an external drive isn't a backup strategy. A NAS gives you automated snapshots, versioning, and replication to remote locations.
- Media library — Run Jellyfin or Plex directly on the NAS (or point them at it) for a home streaming setup.
- File sharing — Share folders with family members or housemates without relying on Google Drive or Dropbox.
- Self-hosted app platform — Modern NAS software (including TrueNAS SCALE) can run Docker containers, turning your storage server into a general-purpose home server.
TrueNAS CORE vs TrueNAS SCALE
TrueNAS comes in two editions, and the distinction matters.
TrueNAS CORE
The original. Built on FreeBSD with the native ZFS implementation. It's mature, battle-tested, and has been running in production at companies and home labs for over a decade (it was previously called FreeNAS). Extensibility comes through FreeBSD jails — lightweight containers that predate Docker.
CORE is rock-solid for pure storage workloads, but its ecosystem is shrinking. FreeBSD jails are less flexible than Docker containers, and the pool of community plugins has stagnated.
TrueNAS SCALE
The newer edition, built on Debian Linux. Same ZFS-powered storage engine, but with Linux underneath, which means native support for Docker containers and (optionally) Kubernetes. SCALE also adds KVM virtualization for running full VMs.
iXsystems (the company behind TrueNAS) has made SCALE the primary focus of active development. New features, UI improvements, and the apps ecosystem all target SCALE first.
Recommendation: Unless you have a specific reason to run FreeBSD, go with TrueNAS SCALE. You get the same ZFS storage with a much larger software ecosystem. If you're building a new NAS today, there's no reason to start with CORE.
ZFS: Why It Matters
ZFS is the main reason to choose TrueNAS over alternatives. It's not just a filesystem — it's a combined filesystem and volume manager that was designed from the ground up for data integrity. Here's what makes it special, explained without the jargon.
Data integrity (checksumming)
Every block of data written to a ZFS pool gets a checksum. When ZFS reads data back, it verifies the checksum. If a bit has flipped (which happens more often than you'd think, especially on consumer hardware), ZFS detects it. With redundancy (mirrors or RAID-Z), ZFS can automatically repair the corruption by fetching the correct data from another disk. This is called self-healing.
Most other filesystems (ext4, NTFS, HFS+) have no idea if your data has silently rotted. ZFS does.
Snapshots
ZFS snapshots are instant, space-efficient point-in-time copies of your data. They're not full copies — they only store the changes (blocks that have been modified since the snapshot). You can take hundreds of snapshots with negligible overhead.
This means you can set up automatic hourly snapshots and roll back files (or entire datasets) to any point in time. Accidentally deleted a folder? Overwritten a file? Roll back in seconds.
RAID-Z
ZFS has its own redundancy system, similar in concept to traditional RAID but with key improvements:
- RAID-Z1 — Similar to RAID 5. Survives one disk failure. Requires at least 3 disks.
- RAID-Z2 — Similar to RAID 6. Survives two disk failures. Requires at least 4 disks.
- RAID-Z3 — Survives three disk failures. Requires at least 5 disks.
- Mirror — Simple mirroring (like RAID 1). Every disk has a copy. Best performance.
Unlike traditional RAID, ZFS never has a "write hole" — a situation where a power failure during a write leaves the array in an inconsistent state. ZFS uses copy-on-write and transactional writes, so your pool is always consistent.
Compression
ZFS supports transparent compression (LZ4 by default). Your data is compressed on disk but appears normal to applications. LZ4 is so fast it often improves performance — the CPU can compress/decompress faster than the disk can read/write raw data. There's essentially no reason not to enable it.
What ZFS demands in return
ZFS is powerful, but it's opinionated. You can't easily add a single disk to an existing RAID-Z group (you can add entire new groups, called "vdevs," but not expand an existing one). Plan your pool layout upfront. This is the biggest adjustment coming from Unraid or traditional RAID cards.
Hardware Requirements
The ECC RAM debate
You'll see heated forum arguments about whether ZFS requires ECC (Error-Correcting Code) RAM. Here's the honest answer:
- ZFS does not require ECC RAM. It will run fine on non-ECC memory.
- ECC RAM is recommended because ZFS checksums data on disk but trusts what's in RAM. A bit flip in RAM could theoretically cause ZFS to write bad data and then faithfully checksum the bad data. ECC catches these errors.
- Perspective: If you're running a home NAS and your budget is tight, non-ECC is fine. You're still vastly better off with ZFS on non-ECC RAM than with ext4 or NTFS on non-ECC RAM. Don't let the ECC purists scare you away.
Minimum specs
- CPU: Any modern 64-bit processor. Intel Celeron/Pentium is plenty for a basic NAS. If you plan to run Docker apps or VMs, step up to an i3/i5 or Ryzen equivalent.
- RAM: 8 GB absolute minimum. 16 GB recommended. ZFS uses RAM aggressively for caching (the ARC), and more RAM directly translates to better performance. The old "1 GB per TB of storage" rule is outdated, but 16 GB is a good starting point for up to ~50 TB of raw storage.
- Boot drive: A small SSD (even 32 GB is enough) for the TrueNAS OS. Don't waste a storage bay on the boot drive — use an M.2 slot, a USB SSD, or a SATA DOM.
- Storage drives: Your call. More on this below.
- HBA (Host Bus Adapter): If your motherboard doesn't have enough SATA ports, get an HBA card (not a hardware RAID card). ZFS wants direct access to the disks. The LSI 9207-8i (or its rebranded Dell/IBM equivalents) is the go-to, widely available used for under $30.
Example builds
Budget build (~$300, repurposed hardware)
- Used Dell OptiPlex or HP ProDesk (SFF or tower)
- 16 GB DDR4 (non-ECC is fine)
- 2x 8 TB used/shucked external drives in a mirror
- USB SSD for boot drive
- Good for: Basic file storage, backups, light media serving
Mid-range build (~$600-800)
- Mini-ITX or Micro-ATX build with Intel i3-12100 or similar
- 32 GB DDR4 ECC (if your board supports it)
- 4x 8 TB drives in RAID-Z1 (24 TB usable)
- 256 GB NVMe for boot + app storage
- Fractal Node 304 or similar compact case with drive bays
- Good for: Heavy file serving, Docker apps, Jellyfin with transcoding
Enthusiast build (~$1200+)
- Supermicro or ASRock Rack board with IPMI
- Intel Xeon or ECC-capable Ryzen
- 64 GB ECC RAM
- 6x 16 TB drives in RAID-Z2 (64 TB usable)
- NVMe SSD for SLOG/L2ARC (special ZFS cache devices)
- Good for: Serious storage, multiple users, VM workloads, remote replication
Installation Walkthrough
TrueNAS installs as a complete operating system — it takes over the entire machine. This isn't something you install alongside Linux. It's a dedicated storage appliance OS.
- Download the TrueNAS SCALE ISO from the official website.
- Flash it to a USB drive using balenaEtcher, Rufus, or
dd. - Boot from the USB drive and follow the installer. You'll select a boot drive (separate from your storage drives), set a password, and wait a few minutes.
- Access the web UI at
http://<server-ip>from any browser on your network. The initial console output shows the IP address. - Create a storage pool — Select your drives, choose your redundancy level (mirror, RAID-Z1, etc.), and create the pool. This is a one-time decision, so plan carefully.
- Create datasets and shares — Datasets are like folders within your pool, but with independent settings for compression, quotas, and permissions. Set up SMB shares for Windows/Mac access or NFS shares for Linux.
The web UI guides you through all of this. It's not as polished as Synology's DSM, but it's functional and has improved significantly in recent releases.
Key Features
Once your pool is set up, TrueNAS gives you:
- SMB/NFS/AFP shares — Standard network file sharing. SMB for Windows and Mac, NFS for Linux. AFP is legacy but available for older Mac workflows.
- iSCSI — Present raw block storage to other machines. Useful for VMs or specialized workloads.
- Automated snapshots — Schedule snapshots every 15 minutes, hourly, or daily. Define retention policies (keep 24 hourly snapshots, 30 dailies, etc.).
- Replication — Send snapshots to a remote TrueNAS system over the network. This is your offsite backup story — put a second small NAS at a friend's house or a colo and replicate to it.
- S.M.A.R.T. monitoring — TrueNAS monitors your drive health and alerts you before a drive fails. Configure email or push alerts so you're never surprised by a dead drive.
- Scrubs — Scheduled verification of every block on every disk. ZFS reads all data, verifies checksums, and repairs any corruption it finds. Run these monthly.
- Encryption — Native ZFS dataset encryption. Encrypt individual datasets with a passphrase or key file. Data at rest is protected if a drive is stolen.
Running Docker Containers on TrueNAS SCALE
This is where SCALE really differentiates itself from CORE. TrueNAS SCALE includes a built-in apps system backed by Docker.
The official apps catalog
TrueNAS SCALE ships with a curated catalog of apps — Plex, Jellyfin, Nextcloud, Home Assistant, Syncthing, and dozens more. You install them through the web UI with a few clicks, and TrueNAS handles the container lifecycle, storage mounts, and networking.
The official catalog is somewhat limited and opinionated about configuration. For more control, you have two other options.
Custom Docker Compose
As of recent SCALE releases, you can deploy arbitrary Docker Compose stacks directly from the TrueNAS UI. Create a docker-compose.yml, paste it in, and TrueNAS deploys it. This gives you the full flexibility of Docker with access to your ZFS storage.
When to go beyond the NAS
TrueNAS SCALE is capable of running Docker apps, but it's a storage-first OS. If you find yourself running 15+ containers and the NAS is more "home server" than "storage server," consider splitting the workloads: let TrueNAS handle storage and mount its shares on a separate Docker host (even a Raspberry Pi or a small VM).
TrueNAS vs the Competition
| Feature | TrueNAS SCALE | Synology DSM | QNAP QTS | Unraid |
|---|---|---|---|---|
| Cost | Free (open source) | Included with hardware | Included with hardware | $59-$129 (license) |
| Filesystem | ZFS | Btrfs or ext4 | ext4 or ZFS (limited) | XFS + parity array |
| Hardware | Any x86 (build your own) | Synology boxes only | QNAP boxes only | Any x86 |
| Data integrity | Full checksumming + self-healing | Btrfs has checksums; ext4 does not | Limited ZFS support | No checksumming |
| Snapshots | ZFS snapshots (instant, efficient) | Btrfs snapshots | Snapshots available | No native snapshots |
| Docker support | Yes (native) | Yes (Container Manager) | Yes (Container Station) | Yes (excellent) |
| VM support | KVM | Virtual Machine Manager | Virtualization Station | KVM (excellent) |
| UI polish | Functional, improving | Excellent | Good | Very good |
| Learning curve | Moderate to steep | Low | Low | Low to moderate |
| Expandability | Add vdevs (not single disks to existing vdevs) | Add drives to volume | Add drives to volume | Add any drive anytime |
| Community | Large, active forums | Large, active | Moderate | Large, very active |
Synology and QNAP
These are the "appliance" approach. You buy their hardware, plug it in, and get a polished UI. The experience is excellent — DSM in particular is one of the best NAS interfaces ever built. The downsides: you're locked to their hardware (which is underpowered for the price), their software increasingly pushes subscriptions (Synology's C2 cloud, photo AI features), and you can't fix or upgrade the hardware beyond swapping drives.
If you want something that "just works" and you don't mind paying a premium for less powerful hardware, Synology is a fine choice. But dollar for dollar, you get dramatically more performance building your own.
Unraid
Unraid occupies a unique niche. Its storage model is fundamentally different — drives are independent (each formatted with XFS), and a parity drive protects against failure. This means you can mix drive sizes freely and add one drive at a time, which ZFS can't match. Unraid also has arguably the best Docker and VM management of any NAS OS.
The trade-off: Unraid has no checksumming or self-healing. Data integrity relies on your hardware being perfect. It's also a paid product ($59 for basic, $129 for the full Pro license), and the parity system is slower than ZFS for many workloads.
Choose Unraid if you want maximum flexibility in drive management and you prioritize Docker/VM convenience over data integrity guarantees. Choose TrueNAS if data integrity is your top priority and you're willing to plan your storage layout upfront.
Backup Strategies with TrueNAS
Having a NAS isn't a backup strategy by itself. A NAS protects against drive failure (via redundancy) but not against fire, theft, ransomware, or accidental deletion of the pool. You need additional layers.
Layer 1: Snapshots (protects against accidental deletion and ransomware)
Configure automatic snapshots on all important datasets. A typical schedule:
- Every 15 minutes, keep for 24 hours
- Hourly, keep for 7 days
- Daily, keep for 30 days
- Weekly, keep for 6 months
If someone (or something) deletes or encrypts your files, you roll back to a snapshot from before the incident.
Layer 2: Replication (protects against hardware failure and local disasters)
Set up a second TrueNAS system at a different physical location. ZFS replication sends only changed blocks, so after the initial full sync, daily replication of even terabytes of data is efficient over a typical home internet connection.
Don't have a second location? A small used PC with one large drive at a friend's house running TrueNAS makes a serviceable replication target.
Layer 3: Cloud backup (protects against everything)
Use a tool like rclone to sync critical data to cloud storage (Backblaze B2, Wasabi, or similar). This is your last-resort recovery option. You don't need to back up everything to the cloud — focus on irreplaceable data (photos, documents, financial records).
Common Pitfalls
Not enough RAM. ZFS performance degrades noticeably below 8 GB. If your NAS feels sluggish, RAM is usually the bottleneck. Adding more RAM is the single most effective upgrade.
Mixing drive sizes in a vdev. In a RAID-Z group, every drive is limited to the size of the smallest drive. Four 8 TB drives and one 4 TB drive gives you a vdev of five 4 TB drives. Use matched drives.
Using hardware RAID cards. ZFS needs direct access to your disks. Hardware RAID cards intercept disk access and present a virtual "drive" to the OS, which defeats ZFS's checksumming and self-healing. Reflash RAID cards to IT mode (HBA mode) or buy an actual HBA.
Not testing restores. Snapshots and replication are useless if you've never verified you can actually restore from them. Test your recovery process at least once.
Ignoring S.M.A.R.T. alerts. When TrueNAS tells you a drive is failing, replace it promptly. Running degraded (with a failed drive in a RAID-Z group) leaves you one more failure away from data loss.
Over-building for your needs. You don't need 128 GB of ECC RAM and enterprise SAS drives for a home NAS storing family photos and a few Docker containers. Start modest. You can always add more storage later by adding new vdevs.
Verdict
TrueNAS is the right choice if:
- Data integrity is your top priority
- You want enterprise-grade storage features without paying enterprise prices
- You're comfortable with a moderate learning curve and planning your storage layout upfront
- You want to run Docker apps alongside your storage (SCALE)
- You enjoy building and configuring your own hardware
TrueNAS is not the right choice if:
- You want a plug-and-play appliance with minimal setup (consider Synology)
- You need maximum flexibility to add random drives over time (consider Unraid)
- You don't want to think about vdev layouts, scrubs, or pool topology
Bottom line: TrueNAS gives you the most capable, most reliable storage platform available for free. ZFS is in a class of its own for data integrity, and TrueNAS SCALE's Docker support makes it a genuine home server platform, not just a file server. The learning curve is real but manageable — spend an afternoon reading about ZFS pool layouts before you build, and you'll be set for years.