Just a simple question : Which file system do you recommend for Linux? Ext4…?
EDIT : Thanks to everyone who commented, I think I will try btrfs on my root partition and keep ext4 for my home directory 😃
If you’re just doing a vanilla Linux install, ext4 is the way to go.
deleted by creator
We’re not in 2014 anymore.
deleted by creator
Yeah, but it isn’t noticeably “less stable” if at all anymore* unless you mean stable as in “essentially in maintenance mode”, and clearly good enough for SLES to make it the default. Stop spreading outdated FUD and make backups regularly if you care about your documents (ext4 won’t save you from disk failure either which is probably the more likely scenario).
* not talking about the RAID 5/6 modes, but those are explicitly marked unstable
My short BTRFS history
- Installed on a 1TB NVME
- used for 2 years
- Rebased my system a ton, used rpm-ostree a ton (which uses BTRFS for the snapshots I think?)
- Physically broke the SSD by bending (lol used a silicon cooler pad but it bent it) which resulted in hardware crashes
- With
ddbarely managed to get all the data onto a 1TB SATA SSD dd-ed the SATA SSD onto a 2TB NVME- deleted and restored the MBR, resized the BTRFS partition to max, resized the BTRFS filesystem to max, balanced it
Still works, never had a single failure
deleted by creator
I suppose by being more efficient, “using modern technology” (everything saving Google, Meta, Amazon etc. money and is thus extremely well funded, all server related stuff), is good for the environment.
If something runs faster on the same hardware, it may use less energy. It may also just be restricted in hardware usage, like not using multithreading.
Linux Distros shipping x86_64-v2 packages is a whole other problem…
deleted by creator
I disagree. My partition is ext4, but Timeshift saved my ass when an upgrade went wrong. I just had to restore the system from a previous snapshot taken before the upgrade.
deleted by creator
Are you talking about ext4 or BTRFS?
deleted by creator
I’m running it for over 3 years as complete linux moron with no issues whatsoever. It was default in openSUSE and its automatic snapshot feature saved my ass multiple times. I’ve heard everyone saying ext4 is super stable and I should use it, but I went with default and can’t complain.
I never tested BTRFS on SSDs under 128GB or even HDDs, but never had a corrupted one.
Those anecdotes are worth little so it would be best to have current data.
One of the above points was that the claims are outdated, which would be really interesting to verify.
Like, making a study with many different parameters
- hdd, sata ssd, nvme ssd, emmc, etc.
- size: 50-200MB, 1GB, 16GB, 128GB, 500GB, 4TB (from small embedded, to IOT, to usb flash drive, to smartphone, to laptop, to Server/Backup)
- amount of usage: percentage filled, read/write per minute
- BTRFS actions: snapshots, balance, defragment
If full backups aren’t possible that’s an administrator failure.
Reliance on a file system to never fail rather than have proper backups, is an administrator failure.
ANY system can, and will, fail. Thinking and behaving otherwise is an administrator failure.
“Everything gets gone, sooner or later” - being prepared for it is good administrator behaviour.
deleted by creator
deleted by creator
Good that you mentioned that. Reminded me that I have an Arch Linux install here where I forgot that I did choose BTRFS during installation. Within maybe a month I noticed FS errors. Looked scary. Nervously searching for documentation was even more scary :
https://wiki.archlinux.org/title/btrfs#btrfs_check ->
This article or section is out of date.(Discuss in Talk:Btrfs) Warning: Since Btrfs is under heavy development, especially the btrfs check command, it is highly recommended to create a backup and consult btrfs-check(8) before executing btrfs check with the --repair switch.What is this? My beloved Arch Wiki is not 100% perfect!
Then found this :
WARNING: Using ‘–repair’ can further damage a filesystem instead of helping if it can’t fix your particular issue.
Do not use --repair unless you are advised to do so by a developer or an experienced user, and then only after having accepted that no fsck successfully repair all types of filesystem corruption. E.g. some other software or hardware bugs can fatally damage a volume.
I figure this explains the popularity of BTRFS snapshot configurations. Luckily I had some backups :)
Filesystem snapshots won’t help, if the filesystem itself corrupts. But I’ve been using BTRFS for 6 years now and haven’t had a file system corruption, so mileage may obviously vary.
deleted by creator
Agreed, ext4 is a perfectly fine default for the os. Xfs is also a good choice. I have my os on ext4 and data on xfs and I’ve never had issues. My only headache is LVM, because I don’t actually need the additional flexibility it offers. (And mdraid is flaky, but I think that’s because of how I set it up. Maybe you aren’t supposed to use a whole drive, you’re supposed to partition it first?)
In my opinion, it depends. If a distro has BTRFS configured to automatically take a snapshot when upgrading (like OpenSuse Tumbleweed), then BTRFS.
If not, for a beginner, ext4 + timeshift to take snapshots of your system in case an upgrade goes wrong will be fine.
But you can also just use BTRFS without any fancy setup and not use its features, it will still be faster.
Btrfs has many advantages over ext4, but being faster isn’t one of them.
Mint doesn’t default to btrfs, but will use it if you so choose during install. And it integrates fantastically with Timeshift. I’ve set up daily and weekly snapshots and have peace of mind.
ext4 has been battle-tested for many years and is very stable. Doesn’t have the same fragmentation and data loss issues certain other filesystems like NTFS have.
And it has repair tools that actually work and can make the filesystem usable again.
Until you pull the power at the wrong time. Its better to use Btrfs as others have said.
But pulling the power on a btrfs drive at the wrong time results in you not even being able to mount it as read only. No snapshotting can help you there.
I have not had that experience
Btrfs. Just format as one big partition (besides that little EFI partition of course) and don’t worry about splitting up your disk into root and home. Put home on its own subvolume so that root can be rolled back separately from it. You can have automatic snapshots, low-overhead compression, deduplication, incremental backups. Any filesystem can fsck its own metadata, but btrfs is one of the few that also cares if your data is also intact.
It cares so much that when it goes wrong you can’t even mount the partitions as readonly to try get your data back. It will stubbornly hold on to it and refuse any access at all. Boy I am so glad it didn’t let me access a potentially corrupted byte somewhere!
As someone who ran BTRFS for years, I’m personally switching back to EXT4. Yes, the compression and other features are nice, but when things go wrong and you have to do a recovery, it’s not worth the complexity
I’ve found it much easier and way more reliable. If I pull out the power on ext4 it is likely to cause corruption and sometimes you can’t fix it.
Btrfs is pretty much impossible to completely corrupt. I’ve had drives fail and I didn’t lose anything
Lemme say this - While complex, I can vouch for recovering files on BTRFS. I can’t vouch for recovering files on ext4, because I never had to.
ext4 unless you need features offered by another FS.
Especially just getting into linux. Ext4 works well enough, when you learn enough to care about what it doesn’t do well try something then
I personally use ext4 everywhere but it is recommend to have BTRFS for your OS partition if you take snapshots often.
Btrfs is cool because it supports snapshots, if you don’t plan on using these, just go with ext4
I don’t use snapshots but i love the compression.
Not just snapshots. Also compression and CoW.
If you don’t actually have an opinion, just go with the default, ext4 really is a very good file system, but if you want to have an opinion and not go with the default, zfs is truly a fantastic file system.
I would recommend using btrfs on SSDs and ext4 on hard drives.
Ok but please explain subvolumes, the information has failed to latch onto my brain
Subvolumes are somewhat like a partition, but they don’t have fixed size. What they allow you to do is take snapshots. Snapshots are used to backup and restore the subvolume. They can be created instantly and don’t take up any space until something is changed.
If I’m trying to install Linux with BTRFS, and it doesn’t work, what are some of the most likely mistakes I’ve made?
What distro? Some installers will set everything up for you and others you have to setup subvolumes manually.
Ext4 on hard drives? Btrfs would be better for both.
Ext4 for most home users, because it’s simple and intuitive. Btrfs for anyone who has important data or wants to geek out about file systems. It’s got some really cool features, but to actually use most of them you’ll have to do some learning.
Just go with whatever is the default of your distribution.
That said I’ve come to love the automatic snapshots OpenSUSE gives me with BTRFS. I think they use snapper to automate that. It does a snapshot before and after every packet install, update or removal. And it has some system to delete snapshots that aren’t needed anymore but it always keeps enough to give you peace of mind, especially when you’re experimenting.
I should look into keeping some snapshots of my ~ as well. And I should implement that especially for my family.
Snapper is life saver. I don’t get it why nobody else use it by default, it’s so great. It saved me many times. My coworker, who happens to be kind of non-linux user forced there by MS bullshit, uses Ubuntu and she’s got to problems so many times, and all those would be couple clicks repair with Snapper…
For standard use, ext4. If you want to tinker and use fancy features, btrfs (or maybe zfs?).
Btrfs. It was the default filesystem already when I used Fedora on both my personal and work laptops. Not a single problem. It is true I don’t really make much use of most of its advanced features like snapshotting, CoW, etc., but I also didn’t notice any difference whatsoever in stability compared to ext4 so I’m pretty happy with it as my new default.
















