Home News Enterprise Computing Systems Management SUSE Linux Says Btrfs is Ready to Rock

SUSE Linux Says Btrfs is Ready to Rock

The advanced Butter/Better/B-tree Filesystem, Btrfs, is still labeled as experimental in the Btrfs Wiki and on Oracle's Btrfs page, though the Oracle page looks outdated. Btrfs is an advanced copy-on-write filesystem with a lot of great capabilities: snapshotting and rollbacks, checksumming of data and metadata, RAID, volumes and subvolumes, online defragmentation, compression, and online filesystem check and repair. Snapshots are always interesting to me; they're not backups, but a fast way to restore a system to a previous state. With Btrfs users can manage their own snapshots in their home directories. Btrfs supports filesystems up to 16 EiB in size, and files up to 16 EiB as well. (Which may be almost enough to store all the cute kitten photos on the Internet.)

SUSE's Geeko Samurai

Most distros include Btrfs, and Btrfs has been included in mainline Linux kernels since the 2.6.29 kernel.  To use it just install the user-space tools. So what's the story, is it ready for prime time or not?

Btrfs is Ready

Matthias Eckermann, senior product manager at SUSE Enterprise Linux, says that Btrfs is ready for production systems, and as of SUSE Linux Enterprise 11 SP2 Btrfs is officially supported, along with Ext3, ReiserFS, XFS and OCFS2 (Oracle cluster filesystem for Linux).

The idea behind supporting multiple filesystems is to enable customers to choose different filesystems for different workloads. The installation default is good old tried-and-true Ext3. In the release notes SUSE recommends XFS for data, and Btrfs for root filesystems.

SUSE is a major Btrfs contributor, and as Mr. Eckermann explains their development strategy is three-fold: First, stability. Then functionality, and then performance. Patches are rigorously tested, and only those that meet SUSE standards are accepted. SLES uses the 3.0.10 kernel, with backports and patches.

SUSE does not support all Btrfs functionality yet. For example, multi-volume handling and RAID, and compression are not yet supported, though they will be.  fsck.btrfs in on the future support roadmap. The scrub command is supported, and you can use it to perform online filesystem check and repair. It runs continually as a background process, and you can also run it manually.

SUSE's nice Btrfs snapshot management tool is called Snapper, and SUSE even provides pre-built Snapper binaries for other distros like CentOS, Debian, Ubuntu, Fedora, and Red Hat.

A notable omission is Ext4; read-only functionality is supported for migrating to a different filesystem. Full read-write support is available with the ext4-writeable KMPkernel module from the SLES11-Extras repository, but it is not supported.

You can migrate from Ext2/3/4 to Btrfs, and you can also migrate back from Btrfs, with one exception: any new data added to Btrfs after conversion will not survive conversion back to Ext2/3/4.

OpenSUSE Has Btrfs

OpenSUSE, the community SUSE edition, gets Btrfs as well, and is more aggressive in pushing out new Btrfs patches. OpenSUSE is free of cost, and SLES has a free 60-day download, so you can test both without spending any money. So is Btrfs ready for production systems? SUSE Linux says yes.

Image credits:

Geeko Samurai courtesy Novell

Green and blue SUSE geckos courtesy Wikimedia Commons, GNU Lesser General Public License



Subscribe to Comments Feed
  • monk Said:

    online huh? seems like file system monitoring stuff for me, but you know i could be wrong

  • fredfish Said:

    'Online' means on a live filesystem, rather than having to unmount it and take it offline.

  • Scooter Boston Said:

    Open Suse - has ALWAYS been a very reliable and good looking Linux Distribution. - But - It would be HEAVEN if they's release a Gnome 2 Version - with all the "other" new bells and whistles.

  • Samuel Orr Said:

    I believe there is an open build service repository for Mate and Cinnamon. Also there is an ayatana repository with Ubuntu software.

  • dgrb Said:

    Sorry, but if there is no fsck available it is *not* ready, no matter what anyone says.

  • memilanuk Said:

    I'd have to second that... if it still doesn't support fsck... what the heck are they thinking endorsing it? Are we missing something here?

  • Christopher Cox Said:

    The author of Btrfs left Oracle and now works at FusionIO... just letting you know why the Oracle page is stale.

  • Devon Said:

    I am not sure If I would ever support Btrfs when there is ZFS. Yes I understand the license issue surrounding ZFS but it is proven and works.

  • Tommy Said:

    According to its release notes, Oracle UEK2 provides a supported version for BTRFS: Cheers

  • Mace Moneta Said:

    I've been running btrfs on our desktops and server since June, with Fedora 17. Not a single problem (I run btrfs scrub daily on the desktops and weekly on the server). Even after all the power glitches and outages during Sandy and the followup nor'easter. I feel much safer with btrfs than I did with ext4, because the data is checksummed as well, and the server is running with btrfs filesystem data raid1 (and an ext4 backup, just in case). Prior to conversion, I did extensive failure testing with a couple of old drives, pulling drive power while writing, pulling the data cable while writing, power fails. After many days of this testing, I didn't lose a single byte of data (checked via 'rsync -c' to an ext4 control drive). I'd say btrfs is more than ready for prime time.

  • Jesse Said:

    Yes, what you and others are missing is that btrfs *does* have an fsck; it just happens to be built into the filesystem, and run on-line. It's called "btrfs scrub". There is also an offline fsck tool which is designed to do just enough checking of the extent tree to ensure that it's safe to mount the filesystem and allocate from the free space for new data. Since all data and metadata is stored with checksums and back-references, and there are at least two copies of every bit of metadata, btrfs doesn't require the sort of extensive fsck tool which other filesystem have, which attempts to guesstimate the original filesystem structure from a corrupted state and may actually make matters worse. The btrfs scrub operation simply goes over the entire filesystem checking the integrity of the checksums; if a problem is found in a metadata chunk, or a mirrored data chunk in a raid1/raid10 setup, the corrupted data is discarded and a new copy is made from one of the existing replicas. If it happens that there are no uncorrupted copies, there is no guarantee that *any* fsck tool would be able to recover the contents, and your best bet is to restore the missing data from a backup. TL;DR: Btrfs is designed specifically to avoid the need for an offline fsck tool.

Upcoming Linux Foundation Courses

  1. LFS520 Essentials of OpenStack Administration
    07 Dec » 10 Dec - N. Reading + Virtual
  2. LFS426 Linux Performance Tuning
    07 Dec » 10 Dec - Virtual
  3. LFS416 Linux Security
    07 Dec » 10 Dec - Virtual

View All Upcoming Courses

Check out the Friday Funnies

Sign Up For the Newsletter

Who we are ?

The Linux Foundation is a non-profit consortium dedicated to the growth of Linux.

More About the foundation...

Frequent Questions

Linux Training / Board