ZFS: Difference between revisions
Line 5: | Line 5: | ||
* zpools are a JBOD of one or more vdevs | * zpools are a JBOD of one or more vdevs | ||
* vdevs are groups of drives, likely in raidz(2|3) or mirror. | * vdevs are groups of drives, likely in raidz(2|3) or mirror. | ||
* datasets are filesystems stored on a zpool | * datasets are filesystems stored on a zpool, similar to partitions | ||
* zvol is a virtual block device on a zpool without a filesystem | * zvol is a virtual block device on a zpool without a filesystem | ||
Revision as of 01:05, 7 November 2021
How to use ZFS:
Background
There are three levels to understand
- zpools are a JBOD of one or more vdevs
- vdevs are groups of drives, likely in raidz(2|3) or mirror.
- datasets are filesystems stored on a zpool, similar to partitions
- zvol is a virtual block device on a zpool without a filesystem
Usage
# Create a zpool with a mirror vdev. zpool create -f -o ashift=12 -o compression=lz4 $zpool_name mirror \ /dev/disk/by-id/diskA \ /dev/disk/by-id/diskB # Create a dataset. zfs create -o encryption=aes-256-gcm -o keyformat=passphrase $zpool_name/$dataset_name
Pros and Cons
VS Snapraid + btrfs + mergerfs
- Pros
- ZFS has realtime parity.
- ZFS can work while degraded.
- ZFS snapshots with send and receive.
- ZFS has encryption on per-dataset.
- ZFS handles everything altogether including parity on permissions
- Cons
- The main con is that ZFS is less expandable. You need to buy all of your drives up front.
- If many drives die, i.e. >2 for raidz2, you lose all your data.