Dorești să creezi copii de rezervă ale datelor de pe sistemul tău Linux, pentru a te proteja în caz de ștergeri accidentale? Sistemul de fișiere BtrFS îți oferă această posibilitate. Înainte de a putea genera o imagine instantanee BtrFS, este necesar să ai un dispozitiv bloc formatat cu acest sistem de fișiere. Dacă vrei să transformi o unitate existentă într-una BtrFS, urmează instrucțiunile de mai jos. Dacă intenționezi să folosești BtrFS ca sistem de fișiere rădăcină, alege „instalare personalizată” în timpul procesului de instalare și selectează BtrFS ca sistem de fișiere preferat.
Pe lângă existența unui dispozitiv bloc formatat BtrFS, este necesar să instalezi pachetul btrfs-progs.
Notă: pentru a identifica dispozitivul bloc corect pentru formatare, poate fi necesar să rulezi comanda lsblk.
BtrFS pe Linux
Pentru a formata o unitate, începe prin a face o copie de siguranță a datelor de pe ea, apoi deschide un terminal. În terminal, obține drepturi de root folosind comanda: sudo -s. Cu acces root, utilizează comanda mkfs pentru a crea noul sistem de fișiere pe dispozitiv. În acest exemplu, vom folosi /dev/sdd1
mkfs.btrfs -f /dev/sdd1
Depanare
Unitatea nu funcționează corect după formatarea BtrFS? S-ar putea să fie necesară crearea unui nou tabel de partiții. Iată cum se face:
parted /dev/sdd mklabel gpt mkpart primary btrfs 1MiB 100%
Ieși din instrumentul parted cu:
quit
Apoi, rulează din nou comanda de formatare:
mkfs.btrfs -f /dev/sdd1
Crearea de instantanee BtrFS
Înainte de a crea instantanee, este necesar să generezi câteva subvolume. Dacă sistemul tău principal Linux este deja pe BtrFS, poți sări peste acest pas și să treci direct la configurarea subvolumelor. Urmează această parte doar dacă folosești o unitate secundară formatată BtrFS, caz în care trebuie să o montezi. În exemplul dat, unitatea va fi /dev/sdd.
sudo -s mkdir /btrfs mount -t btrfs /dev/sdd1 /btrfs
Directorul principal BtrFS a fost creat, montat și este pregătit de utilizare. Acum, este momentul să creăm un subvolum. Ce este un subvolum? Este o caracteristică specifică BtrFS care permite ca volumele create să funcționeze similar cu un dispozitiv bloc (precum /dev/sda1, etc.).
În realitate, acestea nu sunt dispozitive bloc reale, ci directoare speciale care utilizează o tehnologie numită „spații de nume”. Simplificând, BtrFS profită de această tehnologie pentru a permite utilizatorilor să creeze o multitudine de subvolume independente, montabile, care se comportă ca dispozitive bloc.
Pentru a-ți crea propriul subvolum, urmează acești pași. În acest exemplu, vom prezenta o structură de bază, care începe în directorul principal /btrfs. Poți crea subvolume oriunde dorești, atâta timp cât faci asta pe un sistem de fișiere BtrFS.
Mai întâi, obține un shell de root. Aceste comenzi pot fi executate și cu privilegii sudo, dar pentru că interacțiunea cu sistemul de fișiere (ca root) poate fi dificilă, cel mai bine este să obții acces root direct. Utilizează sudo -s sau conectează-te la root cu su. Apoi, execută:
btrfs subvolume create /btrfs/vol_a
Prima comandă creează un subvolum BtrFS sub /mnt/btrfs pe unitatea noastră de exemplu, /dev/sdd1. Dacă dorești, te poți opri aici și să folosești acest volum pentru a stoca datele importante. Alternativ, poți crea sub-subvolume (câte ai nevoie). Pentru a crea un volum într-un volum, procedează astfel:
btrfs subvolume create /btrfs/vol_a/vol_b
Pentru a crea un instantaneu, mai întâi mută/copiază toate datele importante într-un subvolum. De exemplu:
cp -R ~/Documents /btrfs/vol_a/
Apoi, utilizează sistemul de fișiere pentru a genera un instantaneu.
btrfs subvolume snapshot /btrfs/vol_a/ /btrfs/vol_a/backup_1
Notă: înlocuiește „backup_1” cu numele pe care dorești să îl dai instantaneului. Etichetează-le clar pentru a le putea organiza mai târziu.
Restabilește orice instantaneu cu: mv /btrfs/vol_a/ /mnt/btrfs/vol_a/backup_1
Montarea subvolumelor ca dispozitive bloc
Un avantaj major al subvolumelor este posibilitatea de a le monta individual, ca dispozitive independente. Pentru a face asta, listează mai întâi toate volumele cunoscute, folosind comanda btrfs.
btrfs subvolume list /btrfs
Parcurge lista și găsește numărul ID al subvolumului, apoi montează-l cu comanda mount. Ulterior, demontează-l după ce ai ID-ul.
mount -o subvolid=XXX /dev/sdX /btrfs
Înlocuiește XXX cu ID-ul și /dev/sdX cu unitatea unde se află volumul care trebuie montat. Reține că nu poți monta un subvolum pe aceeași partiție ca partiția de nivel superior. Montează-l pe o altă partiție sau unitate formatată BtrFS. De exemplu:
mount -o subvolid=38 /dev/sdc1 /btrfs
Subvolumul 38 se află pe /dev/sdd1, dar /dev/sdc1 este tot BtrFS, deci aici pot fi montate instantaneele. Nu este necesar ca aceasta să se facă pe unități fizice separate. Poți monta subvolumul pe /dev/sdc2, etc.
Setarea subvolumului implicit
Setarea subvolumului implicit BtrFS este utilă, deoarece simplifică interacțiunea cu acesta. Pentru a seta o valoare implicită, utilizează mai întâi comanda subvolume list pentru a afla ID-ul. Apoi, introdu ID-ul în comanda set-default:
btrfs subvolume set-default XXX /btrfs
Pentru a elimina o valoare implicită setată, utilizează aceeași comandă, dar în loc de ID-ul volumului, folosește numărul 0. Această acțiune va restabili setările implicite și vei putea utiliza apoi alte subvolume ca implicite.
btrfs subvolume set-default 0 /btrfs
Ștergerea unui subvolum
Dacă dorești să elimini un volum, poți face asta cu ajutorul BtrFS. Nu șterge manual subvolumele de pe hard disk, folosind comenzi precum „rmdir” sau „rm -rf”. Este recomandat să utilizezi instrumentele sistemului de fișiere BtrFS.
Pentru a șterge un volum, execută:
btrfs subvolume delete /btrfs/volume-name