As someone who uses btrfs mostly (sometimes ext4, but I don’t really know why…), can someone explain the benefits of ZFS over the previous two I mentioned?
ZFS is more than just a filesystem, it’s a fully-integrated disk management system which replaces mdadm, LVM, LUKS, nfsd, rsync, as well as the filesystem. It’s great for NAS boxes and file servers, since you can give it a big pile o’ disks, and it slices and dices, and offers simple commands to create whatever volumes you need.
The two biggest benefits are that it’s basically a finished implementation of btrfs (see data corruption in large pools and raid 5 and 6), as well as being able to encrypt and compress at the same time.
Plus, and I don’t know if this is a ZFS-specific thing, being able to group disks into VDevs and not just into one big raid.
Tbf, the one thing I find nice, at least for home users, is the ability to throw JBOD and it makes it all work. Less cumbersome for newcomers. Zfs needs disks of the same size or it will only group disks into a vdev and use the smallest of the disks for capacity.
That said, I run zfs and no btrfs anywhere. Had high hopes for bcachefs but… That’s not going particularly well.
Thanks for the info. Does ZFS allow for easy snapshotting like btrfs? Or like the stuff in the backend that allows you to do things like, say, edit a filename while the file is open?
that should work on all filesystems on linux, shouldn’t it? linux keeps file handles by inode number, not filename. this is also the reason system updates can happen while everything is running, because replacing the open files is possible too, and the processes that opened it earlier keep seeing the old version of it
As someone who uses btrfs mostly (sometimes ext4, but I don’t really know why…), can someone explain the benefits of ZFS over the previous two I mentioned?
ZFS is more than just a filesystem, it’s a fully-integrated disk management system which replaces mdadm, LVM, LUKS, nfsd, rsync, as well as the filesystem. It’s great for NAS boxes and file servers, since you can give it a big pile o’ disks, and it slices and dices, and offers simple commands to create whatever volumes you need.
The two biggest benefits are that it’s basically a finished implementation of btrfs (see data corruption in large pools and raid 5 and 6), as well as being able to encrypt and compress at the same time.
Plus, and I don’t know if this is a ZFS-specific thing, being able to group disks into VDevs and not just into one big raid.
Tbf, the one thing I find nice, at least for home users, is the ability to throw JBOD and it makes it all work. Less cumbersome for newcomers. Zfs needs disks of the same size or it will only group disks into a vdev and use the smallest of the disks for capacity.
That said, I run zfs and no btrfs anywhere. Had high hopes for bcachefs but… That’s not going particularly well.
Different tools, different jobs. On my computer I also use btrfs, but on the family archive server ZFS (TrueNAS Scale). Right tool for the right job.
Thanks for the info. Does ZFS allow for easy snapshotting like btrfs? Or like the stuff in the backend that allows you to do things like, say, edit a filename while the file is open?
that should work on all filesystems on linux, shouldn’t it? linux keeps file handles by inode number, not filename. this is also the reason system updates can happen while everything is running, because replacing the open files is possible too, and the processes that opened it earlier keep seeing the old version of it
Snapshots like btrfs, yes. But I think every copy-on-write system can do that. But I don’t know about the rest.
Absolutely
Any Linux filesystem will do that