Files
MajorWiki/01-linux/storage/snapraid-mergerfs-setup.md
MajorLinux 6592eb4fea wiki: audit fixes — broken links, wikilinks, frontmatter, stale content (66 files)
- Fixed 4 broken markdown links (bad relative paths in See Also sections)
- Corrected n8n port binding to 127.0.0.1:5678 (matches actual deployment)
- Updated SnapRAID article with actual majorhome paths (/majorRAID, disk1-3)
- Converted 67 Obsidian wikilinks to relative markdown links or plain text
- Added YAML frontmatter to 35 articles missing it entirely
- Completed frontmatter on 8 articles with missing fields

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 11:16:29 -04:00

2.5 KiB

title, domain, category, tags, status, created, updated
title domain category tags status created updated
SnapRAID & MergerFS Storage Setup linux storage
snapraid
mergerfs
storage
parity
raid
majorraid
published 2026-04-02 2026-04-02

SnapRAID & MergerFS Storage Setup

Problem

Managing a collection of mismatched hard drives as a single pool while maintaining data redundancy (parity) without the overhead or risk of a traditional RAID 5/6 array.

Solution

A combination of MergerFS for pooling and SnapRAID for parity. This is ideal for "mostly static" media storage (like MajorRAID) where files aren't changing every second.

1. Concepts

  • MergerFS: A FUSE-based union filesystem. It takes multiple drives/folders and presents them as a single mount point. It does NOT provide redundancy.
  • SnapRAID: A backup/parity tool for disk arrays. It creates parity information on a dedicated drive. It is NOT real-time (you must run snapraid sync).

2. Implementation Strategy

  1. Clean the Pool: Use rmlint to clear duplicates and reclaim space.
  2. Identify the Parity Drive: Choose your largest drive (or one equal to the largest data drive) to hold the parity information.
  3. Configure MergerFS: Pool the data drives into a single mount point.
  4. Configure SnapRAID: Point SnapRAID to the data drives and the parity drive.

3. MergerFS Config (/etc/fstab)

On majorhome, the pool mounts three ext4 drives to /majorRAID:

/mnt/disk1:/mnt/disk2:/mnt/disk3 /majorRAID fuse.mergerfs defaults,allow_other,cache.files=off,use_ino,category.create=mfs,minfreespace=20G,fsname=mergerfsPool 0 0

Adjust the source paths and mount point to match your setup. Each /mnt/diskN is an individual ext4 drive mounted separately — MergerFS unions them into the single /majorRAID path.

4. SnapRAID Config (/etc/snapraid.conf)

Note: SnapRAID is not yet active on majorhome — a 12TB parity drive purchase is deferred. The config below is the planned setup.

# Parity file location
parity /mnt/parity/snapraid.parity

# Data drives
content /var/snapraid/snapraid.content
content /mnt/disk1/.snapraid.content
content /mnt/disk2/.snapraid.content
content /mnt/disk3/.snapraid.content

data d1 /mnt/disk1/
data d2 /mnt/disk2/
data d3 /mnt/disk3/

# Exclusions
exclude /lost+found/
exclude /tmp/
exclude .DS_Store

Maintenance

SnapRAID Sync

Run this daily (via cron) or after adding large amounts of data:

snapraid sync

SnapRAID Scrub

Run this weekly to check for bitrot:

snapraid scrub