I’ve been thinking of switching from btrfs to zfs but it seems like it’s quite a bit of work. Does anyone have any experience with this?
I don’t even remember i use it, on Gentoo, RAIDZ1.
I guess I meant it’s a lot of work to set up initially. Especially if you don’t have experience.
I’m using ZFS in RAID1 for my /home directory on Gentoo, but not for the root filesystem. Setting it up actually isn’t too bad. It should be straightforward to install and only a couple commands to create and mount the zpool.
When I upgrade the system, sometimes it does not autoimport the zpool on next boot, and I need to do a
# zpool import -f pool_name && reboot
, but otherwise there have been no issues.General ZFS config info:
https://wiki.gentoo.org/wiki/ZFS#Zpools
https://wiki.archlinux.org/title/ZFS#Configuration
Root filesystem info:
https://wiki.gentoo.org/wiki/ZFS#ZFS_root
https://wiki.archlinux.org/title/Install_Arch_Linux_on_ZFS#Installation
I think Ubuntu offers ZFS in the installer now, so not really, just go to the advanced options.
why do you want to make the switch?
I like the idea of deduplication and checksumming to prevent bit rot. It also sounds like backups via snapshots is extremely powerful, but maybe that’s something btrfs can do too.
Ultimately though it would be about learning. That’s what’s drawn me to Linux in the first place.
i used to use zfs for backups via snapshots. but I find using rsync and hard links is much more convenient. i can use standard tools to look through backups and track which files changed if needed.
I used ZFS with Arch for a while, the volume manager was what I’d call the largest benefit; in my opinion nothing else comes close to being as useful and well integrated.
I stopped because ZFS incompatibility with recent kernels (which I needed for GPU reasons) made me have to rescue my system more often than was ideal.
Some other minor downsides:
- boot can take ages due to ZFS using udev-settle.
- deduplication status is… Complicated.
- you’re kind-of stuck with the performance of your slowest vdev; L2ARC & a metadata device don’t really compensate well for a zpool that is predominantly a raid-z2 of spinning rust.