I've got Btrfs on my desktop for the OS drive cuz that was what Fedora recommended when I was installing it. It took a bit of effort to get snapshots working properly, but other than that, I've had no issues with it at all over the past year. I've got an exFAT drive and an NTFS drive in there that are kind of leftovers from using Windows. I've been thinking about reformatting the exFAT drive to ext4 or something, since all it really does is store games, and having the ability to symlink to it would be nice.
I've got a TrueNAS machine as well and that uses ZFS for pretty much everything.
BTRFS on Linux (including the SD card in my Steam Deck, dunno what the root storage on that uses). NTFS on Windows (BTRFS driver for Windows isn’t quite as stable as I’d like it to be). ZFS on a NAS because that’s how it came set up and so far the zRAID hasn’t failed me yet. FAT32 for UEFI boot partitions and recovery USB drives.
XFS at work because apparently ext4 isn’t “mature enough”. Not by choice.
No idea what Android uses, probably ext4 with some software on top?
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.
ext4 because I value my data and don’t want to lose it. I used to mess about with ZFS for mass storage but it’s a university course to learn how to use and have decent performance.
I used to use XFS, but ext4 caught up.
And I used to use XFS… on something other than Linux.
xfs has reflinks. That means you can copy huge wodges of data nearly for free on one filesystem. For backup systems this is a killer feature. Veeam rolling up incremental backups into the last full happens in seconds because pointers to blocks are juggled around rather than the data blocks themselves.
xfs has been around for a very, very long time. I use it for larger filesystems eg Nextcloud, Zoneminder and the like (and Veeam backup repos that are not object storage). I use ext4 by default.
pfSense boxes - zfs because the alternative is ufs.
RPi - OverlayFS (with ext4 and tmpfs) gets you a generally read only filesystem with changes held in RAM. Ideal for kiosks, appliances and keeping memory sticks alive.
Windows - NTFS, it works well and has streams and there aren’t many other options (ReFS is a bit new but it does have reflinks)
I use Btrfs for my root partition to be able to rollback if something goes wrong after update. XFS: in all other cases, since I hate the lost+found directory on ext4. Although I don’t think there’s any significant difference between ext4 and xfs in performance and reliability.
Basically, I just followed this tutorial for my EndeavourOS installations. It’s as easy as choosing an older entry in GRUB. Fedora offers something similar by default, and I think Tumbleweed does too.
Moreover I’m now playing with Arkane Linux (arkanelinux.org), immutable flavour of Arch, it features another magic with btrfs and rollbacks without snapshots and GRUB
nope, it works really well, for more than a year now, this is my work PC using 8h/day, I’m using MX23 AHS version. Directly in the setup you can select encryption and btrfs volume etc. btrfs is pretty stable.
I like BTRFS and it's features but sadly Debian doesn't have a preset for it in it's installer so the only way to use it is to manually partition and I absolutely suck at that.
Sorry if this is a dumb question, but have you tried using gParted? GUI, new-user friendly, easy to visualize your system, I’ve used it for over a decade on multiple devices…
Actually, I was using gparted yesterday! I was trying to format a USB drive to exFAT but the option was greyed out, so either gparted doesn't have support for formatting in exFAT or I needed an optional dependency.
Honestly I saw btrfs in the arch install guide and read about it because I thought the name sounded funny. I used it until I distro hopped to NixOS couldn’t figure out how to install it with btrfs, so I’m back on ext4.
Maybe I’ll give it another try next hop, which is likely soon since Qt theming seems impossible on Nix. :/
Yeah, I did find the page, but it assumes you’re doing a command line install whilst I was using the graphical installer. Now that I know more about Nix I think I should’ve gone for a CLI install, but I don’t know if I will stick with it due to the themeing issues.
Agreed! I wonder how it will work if I have to reinstall, I guess I git clone my flake from the install CD and use that instead.
For Qt themes, I had Catppuccin working on Arch but I haven’t found a way to apply it. I tried Stylix (kde.enable = true does nothing for Dolphin or nheko), the official Catppuccin flake (dropped GTK support, sets QT_STYLE_OVERRIDE which breaks nheko). I know it’s possible to theme Qt apps because I’ve had it working before, but I can’t find any info on how to do it with NixOS that works…
Is there a way to set catppuccin as the qt5ct theme? I tried manually adding the files but using qt5ct breaks all icons in Dolphin (it displays alt text or nothing), and kind-of applies in nheko but leaves the main window background fully white.
You just download and put the theme files where it tells you to (and in the qt6ct folder too) and set the theme (and icon theme) in the app. Icons breaking is interesting; I just installed Dolphin and it had no problem using my icon theme. Does PCManFM-Qt also have this issue for you?
I tried this and was able to set a colorscheme in qt5/6ct that stuck in nheko (with QT_QPA_PLATFORMTHEME=qt5ct), but it still has the same icons issue in Dolphin. pcmanfm-qt also has the icons missing.
Which RAID? I need to read about SystemD encrypt hooks because I know nothing. Also why not LVM? Is btrfs more flexible in partitioning when you want to extend it or shrink it? I heard that you can merge “partitions” on 2 different disks so they are visisble under one mount point.
Btrfs can mostly fo everything you would normaly use LVN or raid for natively.
Btrfs raid0 lets you combine any number of differently sized drives into one (just without the speed boost of traditional raid0 because with flexible drive sizes data is not symmetrical striped). And btrfs raid1 keeps every data duplicated, again with flexible number and sizes of drive (also with metadata on every drive).
The sytemd hooks (instead of the traditional busybox ones) then manage the one other task you use LVM for: unlocking multiple partitons (for example multiple raid partitons and swap) with just one password. Because the systemd encrypt function tries unlooking all luks partitions it finds with the first password provided and only asks for passwords for each partition if that doesn’t work.
PS: btrfs subvolumes are already flexible in size and don’t need predefined sizes. So the only things that need to be created separately are non-btrfs stuff like the efi system partition or a physical swap (which you can also skip by using a swap file instead of a partition).
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
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.
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.
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
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.
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.
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.
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).
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.
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
en.wikipedia.org
Oldest