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
  • @[email protected]
    link
    fedilink
    English
    10
    edit-2
    4 months ago

    I care a lot about filesystems.

    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.

      • @[email protected]
        link
        fedilink
        English
        54 months ago

        Yes I have and it caused file system corruption the two times I tried it. Something wasn’t quite right.

        • @[email protected]
          link
          fedilink
          44 months ago

          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.

          • @[email protected]
            link
            fedilink
            English
            24 months ago

            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.

    • chingadera
      link
      24 months ago

      |I care a lot about filesystems.

      Damn bro, I didn’t think I was gonna cum in /linux

    • @[email protected]
      link
      fedilink
      24 months ago

      So, genuine question: why btrfs instead of zfs? Sounds like your use case would fit the latter.

      • @[email protected]
        link
        fedilink
        74 months ago

        BTRFS is zero effort on root, because it is included in kernel. ZFS on root is extra effort at least on Arch, due to licensing restrictions.

        • @[email protected]
          link
          fedilink
          14 months ago

          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.

      • @[email protected]
        link
        fedilink
        English
        44 months ago

        Does ZFS handle data duplication on unequal sized volumes or heterogeneous pools? I don’t believe so, and BTRFS was a first class installer option.