Mhddfs: filesystem to distribute files across other fs

Anyone here using it, what do you use it for?

It’s a fuse based filesystem that just merges space from other underlying filesystems to give you an illusion of one big drive.

It appears to not have any redundancy built in.

I keep hearing about it on and off since ~2010 but I never actually got to use it.

I don’t. If you want a distributed filesystem, use Ceph. if you want replication, use rsync.

It’s not distributed in a network sense. It’s just distributed across local volumes. Basic idea is, you have 3 separate ext4 filesystems and you want to put whole files randomlish across them.

One drive dies, you have 2/3 of your files, another one goes, you have 1/3 of your files.

If you have backups, restore.

I’ve tried it but AUFS is faster. I also use snapraid to add redundancy.

I’m assuming you make snapshots of original filesystems (e.g. with lvm), and then run snapraid sync using mounted snapshots as the data in order to get the parity updated?

Do you need to keep the snapshots until next sync?

It doesn’t use file system snapshots, it just calculates parity as a snapshot. So When you run sync it will create parity at that point and then if a disk fails it can be restored to the last sync. The advantage is that it can be used on any existing file-system without changing the data the downside is it won’t work for data which is changing frequently, handy for media libraries and other large arrays of static data.

Right, I’m thinking I may want to snapraid a snapshot in case there happens to be a database on the filesystem… So that snapraid doesn’t depend on file not changing while it’s backing it up. (e.g. imagine you had a data=ordered type of use case and wanted to ensure data is actually consistent).

That said, I have no idea how aufs or snapshots work across multiple volumes wrt. consistency.

At that point you’re probably better off using a traditional raid like setup