Formatting code for FileSystemBTRFS


show source only

{{parent page="FileSystem"}}

===BTRFS (Better File System)===
BTRFS has some promising features. http://btrfs.wiki.kernel.org/index.php/Stable_releases
Seems the author is still not 100% confident with the filesystem so it's still being tagged as experimental. Well it kinda is. **Use it at your own risk!**

==RAID1 with BTRFS==
Interesting option with btrfs. I created a mirror volume with:
%%
mkfs.btrfs -Lvm -d raid1 -m raid1 /dev/sda6 /dev/sdb6
mount -tbtrfs /dev/sda6 /vm
# with btrfs, mount any member will work
%%

Now when doing a df, it shows RAID0 usage - as oppose to RAID1. To check the actual usage, use **btrfs-show**. It tells you the usage on each member
%%
> btrfs-show vm
Label: vm uuid: bdf5ee15-4888-4d0d-9a82-5f381c061ddf
Total devices 2 FS bytes used 26.32GB
devid 1 size 139.70GB used 51.03GB path /dev/sda6
devid 2 size 139.70GB used 51.01GB path /dev/sdb6
%%

When coying from md raid to btrfs raid, I noticed the IO usage is uneven on each member
%%
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 111.05 28364.40 19436.09 313317712 214694198 <-- destination
sdb 93.13 9767.72 37604.06 107895805 415380440 <-- destination
md4 80.53 7000.99 12343.80 77334096 136351640 <-- source
%%

Adding or replacing member
https://btrfs.wiki.kernel.org/index.php/Using_Btrfs_with_Multiple_Devices

==prelim benchmark==
Hardware: NetCell 160G RAID3
Kernel: 2.6.28
OS: Fedora 10 x86_64
LVM: Both volume reside on the same VG

%%(text;reiserfs)
> time dd if=/dev/zero of=test.img bs=1G count=2
2+0 records in
2+0 records out
2147483648 bytes (2.1 GB) copied, 40.0457 s, 53.6 MB/s

real 0m40.433s
user 0m0.000s
sys 0m17.246s
%%

%%(text;btrfs)
> time dd if=/dev/zero of=test.img bs=1G count=2
2+0 records in
2+0 records out
2147483648 bytes (2.1 GB) copied, 31.2646 s, 68.7 MB/s

real 0m31.671s
user 0m0.000s
sys 0m8.421s
%%

%%(text; btrfs raid1)
time dd if=/dev/zero of=test.img bs=1G count=2
2+0 records in
2+0 records out
2147483648 bytes (2.1 GB) copied, 12.1612 s, 177 MB/s

real 0m12.322s
user 0m0.000s
sys 0m3.050s
%%


Not bad huh.

==Auto mount onboot==
%%
echo "alias btrfs btrfs" >> /etc/modules.conf
echo "/dev/vg0/TEST /btrfs btrfs defaults 0 0" >> /etc/fstab
cd /boot
mv initrd-2.6.28.img initrd-2.6.28.img-O
mkinitrd initrd-2.6.28.img 2.6.28
%%

==Resize filesystem==
%%
btrfsctl -r +20g /vm
%%
Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by WikkaWiki