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
BTRFS in FS-managed RAID configuration for automatic self-healing and snapshots for instant automated backups (though I keep a traditional backup too for protection against bugs and user error).
Storage is cheap compared to how much I value my data. BTRFS has very good support on Linux, integration with some backup tools, and I really want to use a FS that has full data checksums to make sure the data stays correct at rest. I like that I don’t have to use equal sized drives and can use whatever I have available, though I would appreciate a better read distribution model rather than the current where it just chooses a random drive to read from when multiple copies are available.
Disadvantages include difficulty accessing from Windows in my experience, less than stellar performance on HDDs, not very space efficient for small files systems because of the bulky metadata, and some uncommon RAID types don’t work correctly and will eat your data. I also don’t recommend it for use over USB because many such devices don’t correctly implement sync, and this is very important to stay on the correct transaction number and prevent file system inconsistencies. If I had to boot from USB, I wouldn’t pick BTRFS.
I don’t think exFAT or FAT32 offer POSIX permissions. I’m not sure if you could have a root file system there.
Good to know. I know a couple of people in the steam deck world who dual boot windows and steamos and have their games on a btrfs partition that use it so they don't need games installed twice ... I have no desire to do this so I have never tried.
It’s possible I was just unlucky, but data corruption makes it harder for me to sleep at night. I choose to be a little more conservative and consider that tool beta quality.
Additionally, at least for my use-case btrfs benefits me since it is less picky about drive sizes being the same and duplicating everything correctly - letting you essentially just throw additional storage at it as you acquire it.