Came here in search of an answer to a problem, but didn't find it? Visit the forum @ LinuxBSDos.com, pick a category and ask a question.

How to install Linux Mint 11 on a btrfs file system

Like Ubuntu 11.04 on which it is based, Linux Mint 11 has support for btrfs, a modern journaling file system with features that are not available on the default file system on Linux. For example, with btrfs, you can:

  • Writable snapshots
  • Subvolumes (separate internal filesystem roots)
  • Object level mirroring and striping
  • Integrated multiple device support, with several raid algorithms
  • Efficient incremental backup and FS mirroring

While it is still in development and not yet certified for use in production, now presents a good opportunity to try to get familiar with it, in preparation for when it will become the default, which it will soon. It is already the default on MeeGo.

This tutorial presents the simple steps involved in installing Linux Mint 11 on a btrfs file system.

To start, download an installation image of Linux Mint 11, burn it to a CD, DVD or transfer it to a USB stick, and boot the computer from it. The system will boot into a Live environment. Click the “Install Linux Mint” icon on the desktop, and when the installation starts, click until you get to the disk partitioning methods step.

Depending on the state of the disk you are attempting to install on, the installer will present several disk setup methods. When setting up a btrfs-based system, you want to partition the disk manually. That means selecting the “Something else” method.
MintBtrfs

If the disk has not been initialized, that is, if it does not have a partition table, select it and click on New Partition Table to create one. If the disk has already been initialized, the New Partition Table button will be greyed out.
MintBtrfs1

With a partition table in place, select the free space, then click on Add to start creating partitions. When setting up partitions for btrfs, three partitions need to be created and mounted at:

  • /boot – Where the applications required for booting the system will be located.
  • Swap – Disk space that the system may use as virtual memory.
  • / – The main file system directory.

MintBtrfs2

The first partition will be mounted at /boot. That is where the boot loader files and folders will be stored. The default file system on Mint is ext4. That is what I will use here. It makes no difference whether you use a journaling file system or ext2 for /boot. Note that you could just as well format /boot with btrfs. It offers no significant advantages to /boot, but at least you know it can be done. Many distributions allocate between 250 MB to 500 MB to /boot, so any value within that range will do. Keep in mind that on a new installation of Linux Mint 11, just 30 MB of the disk space allocated to /boot is used.
MintBtrfs3

With the partition for /boot configured, select the free space and click on Add to configure the other partitions. Note that this step will have to be repeated for the last partition too.
MintBtrfs4

The second partition will be the Swap space. You can install Linux Mint 11 without configuring a Swap partition, but that comes with its own set of headaches that you would rather not take a chance on. Most distributions allocate about 2000 or 2 GB to Swap, so just about that size should do. OK.
MintBtrfs5

The last partition will be mounted at /. The file system will, of course, be btrfs. For this tutorial, I have allocated the rest of the available space to this partition, but if you have plans to use some space for something else, then you may allocate the space as you wish. OK.
MintBtrfs6

That is just about it. All the partitions are configured. You may continue with the rest of the installation. Note that by default, GRUB, the bootloader, will be installed in the Master Boot Record (MBR) of the hard disk. If Mint 11 is the only distribution you have on this computer, then accept the default, and install GRUB in the MBR. If you intend to dual-boot with other distributions or operating systems, then additional considerations must be made regarding the location of GRUB.
MintBtrfs7

You can have quality articles like this delivered automatically to your Feed Reader or Inbox by subscribing via RSS or email. This website now has a Question and Answer section. Use the commenting system for simple comments, but for more involved assistance, please use the Q & A section.

Digital Ocean SSD VPS Cloud Server droplets

Digital Ocean is a VPS/Cloud hosting provider. For just $5 per month, you can get yourself a Cloud server with 512 MB of RAM, 20 GB super-fast SSD, free snapshots, plus backups for a minimal fee. All via a simple graphical interface.

And by signing up with this referral link, you can help support this website.

If you are reading this, your ad could also be occupying this space. Contact us to make it happen.

If commenting on this article is closed, please post your comments at forum.linuxbsdos.com.

6 Comments

  1. Mateo says:

    thank you for the info…realy helped me
    For openSUSE 12.1 is the same…
    if you try to create a btrfs at mount point ./ will promt a warning: “Is very likely that will be problems” :)
    the right order is:
    -500mb ./ ext4
    -2Gb swp
    -20(?) btrfs

    it works for me

  2. Chen Xiao-Long says:

    Does btrfs handle fsync’s correctly now? The last time I tried using btrfs, apt-get and dpkg were painfully slow because of the fsync’s.

  3. Joe Steiger says:

    No /home partition?

    • finid says:

      Yes, no /home. With btrfs, there are no partitions, and all resides in the root subvolume. Perhaps this will explain it better:

      A subvolume is like a directory – it has a name, there’s nothing on it when it is created, and it can hold files and other directories. There’s at least one subvolume in every Btrfs filesystem, the “root” subvolume.

      The equivalent in Ext4 would be a filesystem. Each subvolume behaves as a individual filesystem. The difference is that in Ext4 you create each filesystem in a partition, in Btrfs however all the storage is in the ‘pool’, and subvolumes are created from the pool, you don’t need to partition anything. You can create as many subvolumes as you want, as long as you have storage capacity.

      It’s just like how you install PC-BSD on a ZFS file system.

Leave a Comment