Rational behind BTRFS and XFS?

Can anyone explain to me the rational behind Parrot v4.4 decision to change default Filesytems to BTRFS and XFS?

Specifically why / (root) is BTRFS and /home is now XFS?

Have you read the release notes? https://www.parrotsec.org/blog/parrot-4-4-release-notes/

The new Debian-Installer was modified to use btrfs by default for root and xfs for the home filesystem. The installer does no longer create a swap partition when automatically partitioning uefi or encrypted systems, and the boot partition is large enough to host multiple kernel revisions without running out of space.

Btrfs and xfs are very powerful advanced filesystems with CoW, subvolumes, snapshots and other features. While xfs is very fast on some specific workloads, btrfs has additional features like live compression and a very efficient checksuming system for file corruption detection.

Btrfs was considered experimental for many years and it is still under heavy development, but its core features are now stable and production ready (but not ready for mission critical scenarios) and many companies already use it and contribute to its development, including facebook, suse, oracle and more. We think it is ready for desktop use and we actively used it on all our personal computers, testing machines, workstations and servers (yes, parrot servers use btrfs almost everywhere), and it proved to be very stable and reliable.

YES - I read the release notes - but is’s all fluff with no real solid reasons - I have read the blurb about both filesystems too.

I wanted to know what specifically tripped the decision and why now? ie have me reached some milestone etc.

I specifically want to know why one (root) is BTRFS and the other (/home) is XFS - what qualities merit that configuration?


you can make a snapshot of your entire OS, upgrade the system, test the upgrade and eventually roll it back with a command and some milliseconds of delay to restore it to its previous state

you can compress your system and make a 12gb installation use 5gb of storage space

if you have duplicate blocks, you can merge them to save storage

if the data section of a file is corrupted you will notice it and btrfs will try to recover it as possible instead of showing you broken content

these features are far from being “blurb”, and we took this decision now because we believe that btrfs is pretty stable right now and we use everywhere, including part of our server infrastructure and build processes

opensuse has years of experience with btrfs and xfs, so we started taking the same path by following what they did.

now we are deciding whether to use only btrfs for both partitions or to switch btrfs for the home and xfs for the root since fsck does not play well with mounted btrfs partitions, which are hard to break but hard to restore


Excellent - Thanks @palinuro - Exactly what I was looking for - The Suse thing was news to me seeing as I have never used that.

It is especially important for users like me who use as our “standard” build (ie. rolling Debian testing with firejail configured and a whole bunch o useful tools) - what’s not to like :wink:

Thanks once again to you and the team for the best Distro (btw - I noticed it has jumped up the list in Distrowatch - well done!)


i really suggest you to dive into the opensuse project, it is very very well done and their development tools are compatible with all the distros (you can build fedora, debian or arch packages on build.opensuse.org or host your own version with openbuildservice.org)

opensuse is what i would have based parrot on if debian didn’t existed


What a coincidence - I was chatting today with a college and he recoommended my SLES - we were talking about backups - he works for Net Backup - and said they only officialy support RHEL/SLES - he suggested I try SLEL 12 SP4 - so I will.

Now to recommendations in one day - wow - That’s POWERFULL!

don’t go so enterprisey if you can’t pay the SLES licenses, stay on opensuse on your desktop and non-company servers

i still prefer debian/ubuntu as my working environment, but opensuse is absolutely my second home and i love it and its crazy community

Respect - I am a pure Debian guy through and through too - and I used only the pure Deb (not even Ubuntu) that I used until Parrot came along - initially because it looked so damn good - but now because of you guys it is well structured and a lot of extra value has been added: Firejails done right, extra tools, Debian testing based, etc. - Just fantastic. So you guys got style and class. Bravo!

Here’s to ten more years of stonking Parrot!

1 Like


i started to like ubuntu on servers since their 18.04 release. they are the only distro offering free kernel live patch to people, and they plan to give security support for 10 years, which is awesome

i still don’t like it on desktops, but some parrot servers use ubuntu, debian or opensuse leap

1 Like

That’s quite a bunch of heterogeneous IT there :wink: What do you manage with - Ansible, Puppet, Chef or anything like that?

What really interests me was your discussion with the Qubes guys - I played with that a while and Iike the idea - the implementation is very good - but still a bit Klunky - but booting a Parrot VM out of the box - that could be something - coupled with all the toys: Whonix, anonsurf, …

What’s the prognosis on that? It’s all gone rather quite for the moment …

we barely have enough developers to manage the bare minimum work to keep the distro running, and we don’t have enough time to play with such awesome experimentations, so we paused the opportunity to contribute with the whonix guys on a qubes+whonix+parrot+whatever jam session for when we are ready to work on it

i would really love to take a break from the parrot core development, fast security updates, new releases and documentation updates, and start playing with new tech, but it is not the right moment to do that


This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.