Ext4 vs. Btrfs: Why We’re Making The Switch [Linux]

Ads by Google

switch linux root filesystemQuite honestly, one of the last things people look at is which file system is being used. Windows and Mac OS X users have even less reason to look, because they really have only one choice for their system – NTFS and HFS+, respectively. Linux, on the other hand, has plenty of different file system options, with the current default being ext4.

However, there’s been another push to change the file system to something called btrfs. But what makes btrfs better, and when will we see distributions making the change?

What Do File Systems Do?

In case you’re unfamiliar about what file systems actually do, it’s pretty simple when summarized. File systems are used to control how data is stored after a program is no longer using it, what other information – known as metadata – is attached to the data itself, how access to data is controlled, and so on.

It doesn’t sound like an easy thing to program, and it’s definitely not. File systems are still continually being revised to include more functionality while becoming more efficient in what it needs to do. Therefore, although it’s a basic necessity for all computers, it’s not quite as basic as it sounds.

Why Switch File Systems?

switch linux root filesystem

ext4 has been another improvement to the ext3 file system, which was an improvement over the ext2 file system. While the ext4 is a very solid file system which has been the default choice for almost all distributions for the past few years, it is made from an aging code base. Additionally, Linux users are seeking many new different features in file systems which ext4 does not handle on its own.

There is software that takes care of some of those needs, but in the performance aspect, being able to do those things on the file system level would be faster.

Ads by Google

ext4

linux switch root filesystem

ext4‘s limits are still pretty impressive. The largest volume/partition you can make with ext4 is 1 exbibyte – the equivalent of roughly 1,152,921.5 terabytes. While the maximum file size is 16 tebibytes – or roughly 17.6 terabytes, which is much bigger than any hard drive a regular consumer can currently buy.

ext4 is known to bring speed improvements over ext3 by using multiple different techniques. Like most modern file systems, it is a journaling file system, which means that it keeps a “journal” of where files are located on the disk and of any other changes to the disk. Despite all of its features, it does not support transparent compression, transparent encryption, or data deduplication. Snapshots are technically supported, but that feature is experimental at best.

Btrfs

Btrfs, which can be pronounced as “Butter FS”, “Better FS”, or “B-Tree FS”, is a file system made completely from scratch. Btrfs exists because the developers wanted to expand the functionality of a file system to include pooling, snapshots, and checksums among other things.

While independent from ext4, it wants to build off the ideas present in ext4 which are great for consumers and businesses alike and incorporate those additional features which will benefit everyone (but specifically enterprises). For enterprises who use very large programs with very large databases, having a seemingly continuous file system across multiple hard drives would be very beneficial because it can make consolidation of data much easier. Data deduplication would reduce the amount of actual space data would occupy, and data mirroring would become easier with btrfs as well when there is a single, broad file system that needs to be mirrored.

Of course, you can still choose to create multiple partitions so that you don’t have to mirror everything. The maximum partition size of a btrfs file system is 16 exbibytes, and the maximum file size is also 16 exbibytes. Considering that btrfs will be able to span over multiple hard drives, it’s a good thing that it supports 16 times more drive space than ext4.

Conclusion

switch linux root filesystem

Sadly, the arrival date for btrfs isn’t quite known. Officially, the next-generation file system is still classified as unstable, but if you download the latest version of Ubuntu you can choose to install on a btrfs partition. It has been reported Fedora 18 will use btrfs as its default file system, as by the time of its release a file system checker for btrfs should exist.

When btrfs will actually be classified as stable is still a mystery, but don’t expect Ubuntu to use btrfs by default until it is indeed considered stable. There is still a good amount of work left for btrfs, as not all features are yet implemented and performance (in my experience) is a little sluggish when compared to ext4.

What’s your opinion of btrfs? Do you think it’ll be any better than ext4 for regular desktop users? Anything you’d like to see implemented in btrfs? Let us know in the comments!

Image Credits: Internet background with binary code via Shutterstock, Jackson Carson, dthprod

Join live MakeUseOf Groups on Grouvi App Join live Groups on Grouvi
Best Linux Apps
Best Linux Apps
5 Members
Linux for New Switchers
Linux for New Switchers
8 Members
Linux Distros Talk
Linux Distros Talk
3 Members
Master the Linux Command Line
Master the Linux Command Line
5 Members
Ads by Google
Comments (70)
  • Inukaze

    30 / Mar / 2015 : You can use brtfs (stable) in distros Like ArchLinux and derivates , its my prefer know , well i really wanna to test reiser4 again with this distro but during the installation i can’t install the depedencies for use it

  • beavis

    Code doesn’t age numbuts

  • survivalmonkey

    Been using btrfs on a production laptop for about a year now. I have 3 subvolumes on 2 drives: / and /vm on drive #1 and /home on Drive #2.

    As much as I love snapshots and all the rest of what btrfs brings to the party, I’m in the process of re OSing this machine and using ext4. I’ve never experienced corruption the system has degraded in performance to the point of being frustrating. I’ve had autodefrag set in fstab for random writes but I think that overall, the fs is defragmented to the point of beginning to trip over itself. Because of the placement of my vmware machines, I cannot perform the btrfs online defragmentation and this is something that I had not realized when I chose to experiment.

    I love the concept and gave it my best shot, gaining new features with every new kernel but I have to, sadly, throw in the towel.

  • Ahmed Khalil

    Linux steps is good but still very slow to win the war with windows and mac

  • Dave

    I use BTRFS on the desktop, it’s terrible, and I am migrating back to ext4 (bit of a pain with 2TB of data). Huge huge huge IOWAITs all the time, sluggish desktop. Only using a 5400RPM disk for my /home, but it’s ridiculous the amount of times Linux completely blocks everything else for some stupid write, and then there are occasional panics from some btrfs codepath. This is on an 8GB RAM desktop.

    Also, it’s unstable, with some bad luck, you can not fix it (no tools available yet).

    The premise is of course great, I’d love to have ZFS also for my desktop. Since none of the Linux filesystems have proper end to end checkums or easy snapshots (not the LVM mess) I wouldn’t recommend it on a server either, at least not one with data you care about. Funny how people bitch about it here in the comments, it’s the ONLY serious filesystem for a server where you care about your data!

    Also, NTFS is a very good filesystem, you have atomic transactions! All filesystems get fragmented, some faster than others due to their design (think FAT), some have external tools, some avoid it with hugely delayed writes, and some fix it in the background. ext3/4 are fine for desktop but no need for MS bashing, it’s not 1999 anymore.

Load 10 more
Affiliate Disclamer

This review may contain affiliate links, which pays us a small compensation if you do decide to make a purchase based on our recommendation. Our judgement is in no way biased, and our recommendations are always based on the merits of the items.

For more details, please read our disclosure.
Affiliate Disclamer

This review may contain affiliate links, which pays us a small compensation if you do decide to make a purchase based on our recommendation. Our judgement is in no way biased, and our recommendations are always based on the merits of the items.

For more details, please read our disclosure.