DiyMediaServer
Featured image of post SnapRAID Parity & MergerFS Pool Calculator

SnapRAID Parity & MergerFS Pool Calculator

Enter your drive sizes and get parity recommendations, a ready-to-copy snapraid.conf, and the matching MergerFS fstab line.

Enter the sizes of your data drives (and parity drives, if you already own them). The calculator tells you how many parity drives you need and how big they must be, then generates the snapraid.conf and the MergerFS /etc/fstab line to pool the data drives.

Your drives

Comma or space separated, one number per drive, e.g. 8, 8, 4, 12. Decimals are fine.

Leave blank if you haven't bought parity drives yet — the tool tells you what to buy.

Data drives mount as <prefix>1, <prefix>2, … The MergerFS pool globs <prefix>*.

Kept outside the data glob so parity never joins the MergerFS pool.

Where the combined MergerFS pool appears, e.g. /mnt/storage.

Array summary
Enter your data drive sizes to size the array.
/etc/snapraid.conf
Enter your data drive sizes to generate snapraid.conf.
/etc/fstab MergerFS pool line
Enter your data drive sizes to generate the fstab line.

How the parity recommendation works

The parity counts follow the official SnapRAID FAQ guideline:

Data drivesParity drives
2–41
5–142
15–213
22–284
29–355
36–426

Each parity drive protects against one simultaneous drive failure. The one hard rule: every parity drive must be at least as large as your largest data drive. If you’re buying drives, it’s common to buy one size up for parity so future data-drive upgrades don’t force a parity upgrade too.

Unlike traditional RAID, SnapRAID parity costs you no capacity on the data drives: usable space is simply the sum of your data drives, and each file lives whole on one disk.

Why parity mounts at /mnt/pool/parity, not /mnt/pool/disk

The generated fstab line pools every mount matching /mnt/pool/disk* into MergerFS. If a parity drive were mounted at /mnt/pool/disk4, the glob would swallow it into the pool and your media apps would happily fill the parity drive with files. Mounting parity under a different prefix (/mnt/pool/parity1) keeps it out of the pool by construction.

After you copy the config

  1. Partition, format, and mount each drive first (the mounts referenced in snapraid.conf and fstab must exist).
  2. Run snapraid sync to build parity, then schedule regular syncs and scrubs.
  3. Reload mounts with sudo systemctl daemon-reload && sudo mount -a.