The default journaling file system on non-boot partitions on Ubuntu 11.04 is ext4. Other journaling file systems supported are ext3, xfs, jfs, reiserfs, and btrfs. The journaling file system of interest in this article is btrfs, the B-Tree File System. Btrfs is an ongoing attempt to create a ZFS-like file system for Linux. It is still a long way from matching ZFS feature for feature, and it not yet recommended for use in production, but is good enough for those who just want to see what it has to offer.
ZFS, the Zettabyte File System, is the file system in use on Oracle Solaris. A port of it is also in use on FreeBSD, PC-BSD, and FreeNAS.
Before we get started, what are the reasons for using btrfs? Let me list some of them:
- Space efficient packing of small files
- Writable snapshots
- Subvolumes (separate internal filesystem roots)
- Object level mirroring and striping
- Integrated multiple device support, with several raid algorithms
- Very fast offline filesystem check
- Efficient incremental backup and FS mirroring
- Online filesystem defragmentation
Setting up a btrfs-based system requires just three partitions:
- /boot, the boot partition, where boot-related programs reside.
- Swap, an unformatted disk space for use as virtual memory
- The main partition, which will be formated with btrfs
This is the advanced disk partitioning window. This is a standalone installation, so there will be no other operating system or distribution on the disk. It is very easy to set up a dual-boot installation with another OS, if that is what you want to do. To start creating partitions, select the free space you wish to use, and click on Add.
The first partition will be mounted at /boot, with the ext2 file system (it could also be btrfs). The partition number of this boot partition, if it is the first partition on the disk, will be /dev/sda1. While many Linux distributions assign about 500 MB of disk space to /boot, only about 22 MB of the disk space allocated to it on a new installation of Ubuntu 11.04 is used. If you are tight on disk space, you can go as low as 50 MB, but keep in mind that disk usage on /boot will grow with each upgrade. Click OK to create it.
With the /boot partition created, select the free space, then click on Add to create the second partition.
Which will be used as Swap space. About 2000 MB should be enough. Select “swap area” from the “Use as” dropdown menu. OK
Again, select the free space and click on Add to create the third partition.
Which will be the last one. The file system must be btrfs, and the mount point, /. You may assign all available disk space to this partition. Notice that like the others, it is a primary partition. Add.
With all partitions created. Click Install Now to complete the installation. After installation, reboot and have fun with your btrfs-based Natty Narwhal. Keep in mind that if you use the Alternate Installer ISO image, you should be able to create an encrypted btrfs file system.
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.