Building a NAS with TrueNAS and Old Hardware

You don’t need a Synology or a rack of enterprise drives to have real, checksummed, self-healing network storage at home. TrueNAS (built on OpenZFS) turns a repurposed old PC into a genuinely capable NAS, and it’s free.

Minimum Viable Hardware

  • Any 64-bit CPU from the last decade — ZFS isn’t CPU-hungry for basic use
  • 8GB RAM minimum, more if you enable deduplication (which most home users shouldn’t)
  • A boot drive separate from your storage drives — a small SSD works great
  • ECC RAM is recommended but not required for a home setup; don’t let its absence stop you

Why ZFS Specifically

ZFS combines the volume manager and filesystem into one system that checksums every block of data, automatically detects silent corruption (“bit rot”), and can repair it from redundant copies if you’re running a mirror or RAID-Z array — something traditional filesystems simply can’t do.

Creating a Pool via the CLI

# Create a RAID-Z1 pool (like RAID 5, one disk of redundancy) from three disks
zpool create storage raidz1 /dev/sda /dev/sdb /dev/sdc

# Create a dataset (like a folder with its own settings) inside the pool
zfs create storage/media
zfs set compression=lz4 storage/media

# Check pool health
zpool status storage

Scrubbing: ZFS’s Self-Check

Schedule a periodic scrub, which reads every block and verifies its checksum, catching corruption before it becomes unrecoverable data loss:

# Monthly scrub via cron
echo "0 3 1 * * root zpool scrub storage" | sudo tee /etc/cron.d/zfs-scrub

Once the pool is set up, TrueNAS’s web UI handles sharing (SMB, NFS), snapshots, and replication — the CLI groundwork above is really the only part that requires understanding ZFS concepts directly.