The Struggle of Managing Dozens of Scattered Hard Drives
Home Server enthusiasts often find themselves “scrounging” for hard drives: an old 2TB drive from a laptop, a 4TB one caught on sale, and a newly purchased 8TB. If you mount them normally at /mnt/disk1, /mnt/disk2, you will soon face a management nightmare.
Is the 2TB drive showing red? You’ll have to manually “move house” for your data to another drive just to free up space. Traditional RAID (RAID 5, 6) is too strict because it requires drives of the same capacity; otherwise, you’ll waste a significant amount of resources.
After 5 years of running a home lab, I found a “lifesaver”: mergerfs. This is a powerful union filesystem that helps pool all drives into a single mount point (like /mnt/storage) without disturbing existing data.
Why mergerfs Outperforms RAID for Personal Needs?
Instead of dealing with the headaches of complex RAID arrays, mergerfs offers absolute freedom:
- Data is always safe: mergerfs is just an overlay. If the server fails, you can simply pull the hard drive and plug it into any other computer to read your files immediately.
- Mix-and-match freely: You can pool a 500GB drive with an 18TB drive without losing a single byte of capacity.
- Drives can rest: Unlike RAID which forces every drive to spin together, mergerfs only accesses the specific drive containing the file you need. The other drives can spin down to save power and increase longevity.
- Expansion in a heartbeat: Adding a new drive takes only 30 seconds to edit the configuration file.
Quick Installation on Linux
Most Linux repositories have this tool available. I prefer using Ubuntu or Debian for their high stability.
With Debian/Ubuntu, run the command:
sudo apt update && sudo apt install mergerfs
With Fedora or RHEL-based distributions:
sudo dnf install mergerfs
Type mergerfs -V to ensure everything is ready.
Real-world Hard Drive Pooling Configuration
Suppose the system has 3 ext4-formatted drives already mounted at:
/mnt/disk1(2TB)/mnt/disk2(4TB)/mnt/disk3(8TB)
Our goal is to create a massive “pool” at /mnt/storage.
Step 1: Create the Main Mount Point
sudo mkdir -p /mnt/storage
Step 2: Set up Auto-mount in /etc/fstab
To have the system automatically pool the drives on boot, add the following configuration line to the end of the /etc/fstab file.
sudo nano /etc/fstab
Paste this line (pay attention to your paths):
# <source> <mount point> <filesystem> <options> <dump> <pass>
/mnt/disk* /mnt/storage fuse.mergerfs defaults,nonempty,allow_other,use_ino,cache.files=off,moveonenospc=true,dropcacheonclose=true,category.create=mfs 0 0
Decoding the “golden” parameters from my experience:
/mnt/disk*: Use a wildcard to automatically detect all folders like disk1, disk2… extremely convenient.allow_other: Access permissions for all users. Without this, your Plex or Jellyfin will immediately report “Permission Denied.”category.create=mfs: (Most Free Space) The system will prioritize writing new files to the drive with the most free space, keeping drive capacities balanced.moveonenospc=true: If a drive fills up during a copy, it will automatically find a free drive to continue, avoiding workflow interruptions.
Step 3: Activate the Configuration
Run the following command to execute the mount without rebooting:
sudo mount -a
Check the result with the df -h command. You will see a 14TB partition (total of 2+4+8) appear like magic:
Filesystem Size Used Avail Use% Mounted on
1:2:3 14T 7.2T 6.8T 51% /mnt/storage
Tips for Choosing Smart File Writing Policies
The category.create parameter determines where your files will live. In practice, there are 2 most popular choices:
- mfs: Prioritizes the emptiest drive. This is the go-to choice for movie and photo storage.
- epmfs: If you want files in the same folder (e.g., episodes of a TV show) to stay on the same physical drive, use this policy. It helps reduce access time and prevents multiple drives from having to spin up at once.
Important Note on Data Safety
You must keep this in mind: mergerfs is not a backup solution. If a physical hard drive dies, the data on that specific drive is gone.
To build a perfect system, I often combine mergerfs with SnapRAID. mergerfs handles the pooling for convenience, while SnapRAID handles creating recovery files (parity) in case of drive failure. This is the “unbeatable” duo for any Home Server today—both flexible and absolutely safe.
In practice, my 1Gbps LAN speed always stays stable at 110-115MB/s, with no significant performance drop caused by the FUSE layer. If you have a few old hard drives lying around, start building a storage server with mergerfs today!

