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
  • ryannathans
    link
    fedilink
    arrow-up
    26
    ·
    3 months ago

    ZFS where possible for maximum reliability

    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

    • Avid Amoeba@lemmy.ca
      link
      fedilink
      arrow-up
      13
      ·
      3 months ago

      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.

      • The Doctor@beehaw.org
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 months ago

        …and that’s why Oracle fucked up the licensing on it. We are not allowed to have nice things.

        • Avid Amoeba@lemmy.ca
          link
          fedilink
          arrow-up
          3
          ·
          3 months ago

          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.

          • ryannathans
            link
            fedilink
            arrow-up
            4
            ·
            edit-2
            3 months ago

            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

            • Avid Amoeba@lemmy.ca
              link
              fedilink
              arrow-up
              2
              ·
              3 months ago

              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.

              • ryannathans
                link
                fedilink
                arrow-up
                3
                ·
                edit-2
                3 months ago

                Yet practically no distros support it out of the box

                And on root? Can practically forget it

                Sad

                • Avid Amoeba@lemmy.ca
                  link
                  fedilink
                  arrow-up
                  2
                  ·
                  3 months ago

                  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.

        • ghjones@beehaw.org
          link
          fedilink
          arrow-up
          2
          ·
          3 months ago

          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.

          • The Doctor@beehaw.org
            link
            fedilink
            English
            arrow-up
            1
            ·
            3 months ago

            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).

      • non_burglar@lemmy.world
        link
        fedilink
        arrow-up
        5
        ·
        3 months ago

        XFS is simply a journalling filesystem.

        ZFS is a COW filesystem and volume manager with compression, block management, and an adaptive read cache.

        Kind of an apples-to-oranges comparison.

        • theroff
          link
          fedilink
          arrow-up
          1
          ·
          3 months ago

          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.

    • youRFate@feddit.org
      link
      fedilink
      arrow-up
      2
      arrow-down
      3
      ·
      3 months ago

      Well, encryption is very much not a strong point of zfs. I agree on all other points tho.

      • ScottE@lemm.ee
        link
        fedilink
        arrow-up
        3
        ·
        3 months ago

        Actually native encryption has been a feature of ZFS for a few years now. It’s nice not having to have an extra LUKS layer.

        • ghjones@beehaw.org
          link
          fedilink
          arrow-up
          2
          ·
          3 months ago

          Yeah, but it’s had some actual data corruption bugs related to sending encrypted snapshots (off the top of my head).

          • ryannathans
            link
            fedilink
            arrow-up
            1
            arrow-down
            1
            ·
            3 months ago

            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