Btrfs ("Butter F S") е усъвършенствана файлова система за Linux, която може да работи на различни твърди дискове и поддържа различни модели за толерантност към грешки като RAID 0, RAID 1 и RAID 10. Btrfs се развива от 2008 г. насам. известен като файлова система "копиране при запис", което означава, че когато данните се променят в блок, блокът ще бъде копиран на нов блок, написан на диска с включените промени. Това означава, че блоковете никога не се променят, но се създават нови блокове и по-късно старите блокове се използват повторно. Това има предимства за ефективността, особено при осигуряване на последователност и целостта (дори след прекъсване на захранването).

Ако приемем, че вече съществуваща Linux система (вероятно използваща ext4), но искате да добавите някои твърди дискове и да използвате Btrfs, това е, което трябва да направите. Първо трябва да инсталирате инструментите на Btrfs. На Ubuntu:

 sudo apt-get инсталирате btrfs-tools 

Ако приемем, че /dev/sda е основният диск с Linux инсталиран на него и искате да използвате два нови диска /dev/sdb и /dev/sdc, следващата стъпка е да създадете btrfs файлова система на тези дискове.

 sudo mkfs.btrfs -m raid1 -d raid1 / dev / sdb / dev / sdc 

Приложението -d raid1 казва на btrfs да използва огледало RAID 1 за данните. Това означава, че ще има поне две копия от всяка част от данните, всяка от тях на друго устройство. В действителност е възможно да се използват повече от два твърди диска в конфигурацията на mirroring на RAID 1. В такива случаи, btrfs ще се увери, че поне един друг диск има копие на данните. Информацията за данните, включително името на файла и файловите разрешения и т.н., се съхранява в така наречените метаданни. Опциите -m raid1 казват на btrfs да използват mirroring на RAID 1 и за метаданните. Подобно на огледалото за данните, използването на огледало за метаданните ще гарантира, че основната информация за файловете се съхранява на поне два диска. Ако някой от дисковете има съществуващи таблици на дяловете (и вероятно данни), използвайте опцията -f за да принудите mkfs.btrfs да презапишете.

Сега, когато файловата система е създадена, тя може да бъде монтирана с помощта на командата за нормално mount :

 sudo монтаж / dev / sdb / mybtrfs 

Къде /mybtrfs е директорията, в която искате да монтирате файловата система.

На този етап новата файлова система ще бъде df -h командата df -h . На моята система за тестване, /dev/sdb и /dev/sdc са по 100 GB всяка. В традиционната RAID 1 система, получената файлова система ще бъде посочена като само 100 GB, тъй като един диск се използва за дублиране на данните. Това не е така с btrfs. Тъй като дискове с различни размери могат да се използват във всяка комбинация, btrfs показва общия размер. Има обаче команда, която дава повече подробности:

 sudo btrfs файлова система df / mybtrfs 

Това ще покаже истинската употреба на диска за btrfs файлова система, включително мястото, което са взети от действителните данни на файловата система и метаданните.

sudo btrfs filesystem show " sudo btrfs filesystem show " също е полезна, тъй като ще изброи отделните устройства, използвани в файловата система, заедно с общия им размер и използвано пространство.

Последната стъпка е да редактирате файла /etc/fstab за да монтирате автоматично файловата система btrfs при стартиране. За целта редактирайте файла и добавете следния ред:

 / dev / sdb / mybtrfs btrfs по подразбиране 0 0 

Можете да получите универсалния уникален идентификатор за файловата система btrfs, като използвате командата sudo btrfs filesystem show . За да се монтира с uuid а не с името на устройството, uuid /etc/fstab би направил нещо подобно:

 UUID = 7911f7a9-cd03-48ef-8dca-27550d6039f4 / mybtrfs btrfs по подразбиране 0 0 

Ако имате още въпроси, можете да попитате в коментара по-долу.