I want to learn more about file systems from the practical point of view so I know what to expect, how to approach them and what experience positive or negative you had / have.
I found this wikipedia's comparison but I want your hands-on views.
For now my mental list is
NTFS - for some reason TVs on USB love these and also Windows + Linux can read and write this
Ext4 - solid fs with journaling but Linux specific
Btrfs - some modern fs with snapshot capability, Linux specific
xfs - servers really like these as they are performant, Linux specific
FAT32 - limited but recognizable everywhere
exFAT - like FAT32 but less recognizable and less limited
It also has self healing, no "partitions", high performance, compression, smart drive redundancy without RAID holes, encryption, deduplication and an extremery intelligent cache called ARC
ZFS is completely ridiculous. It's like someone actually sat down to design an intelligent filesystem instead of making a slightly improved version of what's already out there.
I feel your pain on the CDDL (although I think it is still considered a “free” license), and while I love to hate Oracle, I think the CDDL decision was originally Sun’s, even if Oracle could “free” it now to be GPL.
I don't 'love' to 'hate' Oracle. For much of my career it seems like they've gone out of their way to make things more difficult than they need to be. If I had to calculate how much time fighting with their projects cost me (compared to everything else), they'd be at the head of the list (with one more zero at the left of the decimal point than Microsoft).
Why though? AFAIK the CDDL totally allows us to have nice things. It's similar to MPL and considered a free software license by the FSF. Sure it's not GPL but it doesn't disallow us from changing ZFS, using it, even commercially.
I don't really understand why the linux community complains about the licencing. I'm sure openzfs overcame that. In the freebsd world it's native on root straight out of the box
Yeah there's no essential problems with it in itself as free open source software. Legally it doesn't seem compatible with the Linux kernel source code, as in you can't compile it into the kernel but it seems to be okay to load it as a binary module, prebuilt or built on demand.
Well Ubuntu is the most popular distro and it supports it out of the box. It's had experimental ZFS-on-root support since 2020. Unfortunately it needs more work to be to be promoted from experimental status. But yeah, I don't know of any other diatros supporting it on root out of the box. Which is sad.
Technically XFS is also a CoW filesystem, but it doesn't have the vast array of features that ZFS does like volume management, snapshots, send/recv etc. It does have reflink support which I guess is a kind of snapshot for a file.
Not really bugs, the process for zfs send differs with encrypted snapshots. Make sure you consult the docs. Always test your backups to make sure you cloned properly