Add ZFS support

This commit is contained in:
Andrea Mazzoleni 2026-05-04 11:36:34 +02:00
parent 6354ec9236
commit ea70143695
12 changed files with 767 additions and 242 deletions

View file

@ -1155,7 +1155,7 @@ Configuration
files, preventing errors caused by concurrent file modifications.
This option applies exclusively to data disks formatted with the
Btrfs or Bcachefs filesystems. Parity disks, or data disks using
Btrfs, Bcachefs or ZFS filesystems. Parity disks, or data disks using
other filesystems, will always use the live version of the filesystem.
This significantly improves recovery: if a file is deleted from the live
@ -1163,15 +1163,11 @@ Configuration
from becoming "broken" for that block, ensuring you can still successfully
recover data if another disk fails.
Snapshots are stored in a hidden '.snapraid' directory at the root
of the subvolume containing your data. SnapRAID will automatically
detect the subvolume root for each data path.
Snapshot creation and deletion require administrative privileges.
Ensure SnapRAID is run with the necessary permissions (e.g., sudo) when
this option is enabled.
See the SNAPSHOTSsection for a detailed explanation of the snapshot
See the SNAPSHOTS section for a detailed explanation of the snapshot
lifecycle.
nohidden
@ -1447,7 +1443,7 @@ Snapshots
filesystem supports this functionality. Parity disks always use
the live filesystem.
At present, this is supported exclusively on Btrfs and Bcachefs.
At present, this is supported exclusively on Btrfs, Bcachefs, and ZFS.
You can mix data disks with different filesystems. Only those that
support snapshots will utilize them, while other disks will continue
@ -1491,8 +1487,9 @@ Snapshots
Snapshots Lifecycle
SnapRAID manages two specific snapshots, `stable` and `pending`,
within a hidden `.snapraid` directory at the root of each data
subvolume.
within a hidden directory at the root of each data subvolume.
In Btrfs an Bcachefs it's used the `.snapraid/` directory, in ZFS
the standard `.zfs/snapshot/`.
The `stable` snapshot represents the state of the last
successfully completed `sync`, containing the exact data used to