Btrfs (udtales 'Butter F S') er et avanceret filsystem til Linux, som kan fungere på tværs af flere harddiske og understøtter forskellige fejltolerance modeller som RAID 0, RAID 1 og RAID 10. Btrfs har været i udvikling siden 2008, og det er hvad der er kendt som et "copy on write" filsystem, hvilket betyder, at når dataene ændres i en blok, vil blokken kopieres en ny blok, der er skrevet til disken, med de indbyggede ændringer. Det betyder, at blokke aldrig ændres, men der oprettes stadig nye blokke, og de gamle blokke genbruges senere. Dette har fordele for ydeevne, især når man sikrer konsistens og integritet (selv efter en strømafbrydelse).

Forudsat at du har et allerede kørende Linux-system (sandsynligvis ved hjælp af ext4), men du vil tilføje nogle harddiske og bruge Btrfs, er dette det, du skal gøre. Først skal du installere Btrfs-værktøjerne. På Ubuntu:

 sudo apt-get install btrfs-værktøjer 

Forudsat at /dev/sda er hoveddisken med Linux installeret på den, og du vil bruge to nye diske /dev/sdb og /dev/sdc, er næste trin at oprette btrfs-filsystemet på disse diske.

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

-d raid1 fortæller btrfs at bruge RAID 1 spejling til dataene. Dette betyder, at der vil være mindst to kopier af hver eneste data, hver på en anden enhed. Det er faktisk muligt at bruge mere end to harddiske i en RAID 1 spejlingskonfiguration. I sådanne tilfælde vil btrfs sikre, at mindst en anden disk har en kopi af dataene. Oplysningerne om data, herunder filnavn og filtilladelser mv, gemmes i det såkaldte metadata. -m raid1 fortæller btrfs at bruge RAID 1-spejling til metadataene. Ligesom spejlet for dataene sikrer brug af spejling for metadata, at de væsentlige oplysninger om filerne er gemt på mindst to diske. Hvis nogen af ​​diske har eksisterende partitionstabeller (og muligvis data), så brug -f indstillingen til at tvinge mkfs.btrfs til at overskrive.

Nu, da filsystemet er oprettet, kan det monteres ved hjælp af den normale mount kommando:

 sudo mount / dev / sdb / mybtrfs 

Hvor /mybtrfs er den mappe, hvor du vil montere filsystemet.

På dette tidspunkt vil det nye filsystem blive opført af kommandoen df -h . På mit testsystem er /dev/sdb og /dev/sdc 100 GB hver. På et traditionelt RAID 1-system vil det resulterende filsystem blive opført som kun 100 GB, da en disk bruges til at duplikere dataene. Dette er ikke sådan med btrfs. Fordi diske af forskellig størrelse kan bruges i enhver kombination, viser btrfs den samlede størrelse. Der er dog en kommando, der giver flere detaljer:

 sudo btrfs filesystem df / mybtrfs 

Dette vil vise den ægte diskbrug for et btrfs-filsystem, herunder det rum, der er taget af de faktiske data på filsystem og metadata.

" sudo btrfs filesystem show " er også nyttigt, da det vil liste de enkelte enheder, der bruges i filsystemet sammen med deres samlede størrelse og plads brugt.

Det sidste trin er at redigere filen /etc/fstab for automatisk at montere btrfs-filsystemet ved opstart. For at gøre det, rediger filen og tilføj følgende linje:

 / dev / sdb / mybtrfs btrfs standardværdier 0 0 

Du kan få den universelt unikke identifikator til btrfs-filsystemet ved hjælp af kommandoen sudo btrfs filesystem show . At montere ved hjælp af uuid snarere end enhedens navn ville gøre linjen /etc/fstab noget som dette:

 UUID = 7911f7a9-cd03-48ef-8dca-27550d6039f4 / mybtrfs btrfs standard 0 0 

Hvis du har mere spørgsmål, er du velkommen til at spørge i kommentaren nedenfor.