You know, ZFS, ButterFS (btrfs…its actually “better” right?), and I’m sure more.

I think I have ext4 on my home computer I installed ubuntu on 5 years ago. How does the choice of file system play a role? Is that old hat now? Surely something like ext4 has its place.

I see a lot of talk around filesystems but Ive never found a great resource that distiguishes them at a level that assumes I dont know much. Can anyone give some insight on how file systems work and why these new filesystems, that appear to be highlights and selling points in most distros, are better than older ones?

Edit: and since we are talking about filesystems, it might be nice to describe or mention how concepts like RAID or LUKS are related.

  • Not sure about the other ones, but I use Btrfs because of subvolumes and backups.

    Subvolumes are like special folders inside of your partition that mount separately. Ex. In my btrfs partition, I have a @home partition that is mounted to /home

    This makes it easier to choose what you are backing up, because you can say, “just copy everything in @home to the backup location”

    If I got any of that wrong, feel free to correct me!

    • I mean, is it actually easier to copy everything in @home than it is to copy everything in /home? Btrfs has always kinda felt like it’s a bunch of extra steps to solve problems I don’t have.

      • Kinda. You can copy your snapshots from @home too, meaning a restore from backup also restores your local file version history. There are also tools to push snapshots around as a large archive instead of dealing with smaller files directly.

        The COW can also reduce the chances of running rsync on a large file that is currently being accessed, and getting a partial file in your backup. Or I suck at rsync 🤷‍♂️

        • You’re right, atomic snapshots are a big advantage of CoW fs.

          Rsync backups done while the system is running have a chance of being broken, while CoW fs snapshots are instant and seem basically as if the system suddenly lost power.

      • The real power for btrfs for me is incremental backups; you can take a snapshot of your home partition and send it to a backup device, then you can take a second snapshot a week later and just send the differences between them. I do my weekly backups like this. You can keep many multiple snapshots to roll back if needs be since only the differences between snapshots take up space. This is the tutorial that got me started.

        • Yeah, alright, I see how that could be useful for someone who isn’t me. I don’t have much that’s important on my computer, and for what little there is I just have a second ssd I drag and drop it onto. That one has Mint installed on it in case I do something stupid to my main drive, because I routinely do stupid things to my main drive.

          • I suppose it depends on how much stuff you have, doing a full back up of my home every week is too time consuming to be practical but takes a couple of minutes with this method.

            Keeping multiple past snapshots is overkill for me but I do it because I can, more-or-less. It would be useful if I accidentally delete a file and only remember it months later.