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
A combination of XFS and ZFS. I work in high performance computing (academic). While I love the reliability of ZFS for data archival and peace of mind that results provably haven’t suffered bitrot, sometimes I just need a 10 TB temp file(s) with fast mostly-sequential R/W. Appropriate selection of file systems lets me have both.
As an aside, I’ve been watching bcachefs with some interest, as it seems to be getting faster with every kernel release, building on the data integrity guarantees of ZFS while pushing performance boundaries and being GPL compatible (i.e. in tree). Kent Overstreet et al. have done a fantastic job with this FS.
Ext4 on every Linux device.
Ah i dont have any other kind of devices (android on mobile, but there I have no choices on fs)
Why not btrfs? Don’t know, been using what has kept working flawlessly for me for the last 20+ years, no need to replace ext4.
Ext4 for everything when possible, because its reliable and proven. I’m looking towards Btrfs for my next system drive, as it is mature now and has good features. But I would use Ext4 for everything else still. For interoperability that doesn’t understand Ext4 it would be NTFS when supported, otherwise fallback to FAT32.
That’s the entirety of my knowledge and what I use when I have to format it myself. :D
I respect your reliable and proven comment. I really love the features of BTRFS and that’s why I use it, but I also really care about my data. I have secondary installations that use EXT4 and work very well.
NTFS for the drive I had before jumping to Mint. Currently reporting several hundred gigabytes free, but refusing to make any new files, because… I don’t know. I’ll deal with it after an upcoming move.
The OS / home SSD is ext4, and so is the fat loud hard disk I recently purchased through an entire month of fighting Amazon over gift cards.
Servers - btrfs. Fewer layers of abstraction, easier to manipulate.
Laptops - ext4. I don’t do anything weird with the onboard storage, plus it supports fscrypt.
Flash drives - exFAT. I usually need to access them on multiple platforms and exFAT is about as cross-platform as VFAT (but supports bigger files).
-
Btrfs on my laptop with openSUSE, mainly because it’s default, but also for its snapshot capabilities.
-
Whatever file system my default Raspberry Pi installation uses (probably Ext4).
-
NTFS on my main computer With Windows 10, because… well… I don’t really have any other choice, although I know there’s some kind of 3rd party Btrfs driver for Windows as well and you can ever have boot partition formatted as Btrfs, but I think it’s still experimental.
-
Ext4 bc of its speed for games and my main files. Btrfs on the root for compression
ext4 on all hard disks, but my installs are all several years old at this point, and I might choose differently if I were starting over from scratch. The boot partition on the ancient laptop might actually be ext2; I don’t remember and it’s certainly old enough that that might still have been preferred Gentoo procedure when I first set it up. Removable media might be ext3, ext4, or vfat, depending on compatibility needs and how long ago I formatted it. If I buy an SD card or USB stick that turns out to be preformatted in exFAT, I reformat it before use to ensure everything can read it.
They’re all solidly reliable filesystems (well, except for the vfat), but perhaps not the most featureful.
Yeah same here, everything is ext4 'cause it’s always worked and has never given me any troubles. But next time I have to reinstall I am tempted to give Btrfs a go.
ZFS all the things. On my workstations, I wipe / on every boot except for the files that I specify, and I backup /home to my NAS on ZFS and I backup my NAS snapshots to Backblaze.
Why do you wipe your root dir?
Preventing unwanted state
If you install and then uninstall something, it will almost certainly leave logs, configurations and other garbage in places you don’t expect. Next time you want to use it, it isn’t the clean install you expected
Pretty much all ext4 except for a few Windows installs on NTFS.
I tried exFAT for my USB stick but car sterio cannot read it.
Not only is there btrfs support for Windows, but since windows and linux root structures don’t conflict, someone got both arch and windows booting from the same partition. Is it a good idea? Hell no. But can it be done? Apparently yes.
ZFS for nearly everything plus ZFSBootMenu EFI on root data pools. Get a bad upgrade? No problem, boot a previous snapshot (auto created with a pacman hook), which I had to do recently when 6.6.39 LTS kernel had a bug. Snapshots are also great when doing things such as upgrading postgres, hass, Plex, etc.
I’ve been using ZFS now for a few years for all my data drives/pools but I haven’t gotten brave enough to boot from it yet. Snapshotting a system drive would be really handy.
I bcachefs for my games, I like that it lets me havemultiple disks with redundant data copies, plus ssd caching of frequently accessed files, this fs is linux specific for now as far as I know, and is still experimental. I use ext4 for everything else, and FAT32 for flash drives.
Bcachefs is ready for real use?
In my use it has been pretty stable so far with 7 disks participating (3 caching SSDs, 4 mechanical disks, with 3 copies of metadata and 2 of data), but I’m not using the more experimental features like erasure coding, I will note the on-disk-format has changed twice since it has been in the kernel, and it hasnt been there long, but it has succeeded both on-disk-format upgrades without obvious data loss, and it recently got self healing for some checksum errors, Id say its probably ready for use if the data is backed up, replaceable, or can be gone without (so for me games are all I have that fits this). Otherwise I would use caution if you use it, but I am very optimistic about the future of the FS, as Kent Overstreet (the creator) has taken a lot of care with it.
I’ve only been put off with how slow it is in phoronix latest benchmarks
That’s fair, it has changed a bit since then and I’m hoping we get another filesystem benchmark to see if it has improved, and the caching features might offset that on frequently used data, but I don’t know how hard that would be to benchmark.
Oh, didnt know that was posted, some of the tests seem to be different from last time, it hasnt regressed but hasnt improved much yet either (from the ones that were the same). It does seem to have pulled ahead of BTRFS since the last test, doubling score in the DBench test, but it still varies a lot compared to the other filesystems it seems, doing worse pretty regularly.
Btrfs, but I’m curious about ZFS.
Btrfs’ grandperson.
It needs a time to fully understand all features and quirks.Yet surprisingly simple and easy to use
Me too.