{{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 %%