Btrfs sau ext4: prezentare generală a sistemului, performanță, conversie

În Linux totul este un fișier. Tipul de organizare în Linux este o bază bună pentru creșterea securității sistemului de operare. Sistemele sunt montate într-un director ale cărui fișiere formează conținutul său. Un astfel de director se numește punct de montare. Atunci când este montat un sistem de fișiere BTRFS și EXT4, fișierele proprii ale punctului de montare vor fi detectate de acesta. Aceasta este o caracteristică excelentă a Linux, care vă permite să montați și să demontați rapid diferite sisteme de fișiere, fără a avea nevoie de drivere. Acest lucru oferă utilizatorilor și dezvoltatorilor libertatea de a alege modul în care doresc să gestioneze documentele.

Istoria dezvoltării sistemului de fișiere

Istoria dezvoltării sistemului de fișiere

Când a scris kernelul Linux original, Linus Torvalds a avut nevoie de un nou sistem de fișiere, dar nu a vrut să scrie unul și a folosit pur și simplu Minix, scris de Andrew C. Tanenbaum și face parte din sistemul de operare de tip Unix Minix, scris în scopuri educaționale. Codul său este încă disponibil în mod liber și licențiat.

Minix are structuri, majoritatea fiind localizate în partiția în care este generat sistemul de fișiere - acesta este sectorul de boot din primul sector al hard disk-ului în care este instalat. Blocul de boot include o înregistrare de boot și o tabelă de partiții.

Originalul sistem de fișiere EXT (Extended) a fost scris de Rémy Card și lansat împreună cu Linux în 1992, pentru a depăși unele limitări de dimensiune ale Minix. Principalele modificări structurale sunt în metadatele sistemului de operare bazat pe Unix (UFS), cunoscut și sub numele de FFS. EXT a avut probleme semnificative și a fost rapid înlocuit de EXT2 și apoi EXT3.

EXT4 este cea mai recentă modificare

EXT4 este cea mai recentă evoluție a sistemului de fișiere original. Îmbunătățește performanța, funcționalitatea și lățimea de bandă a sistemului de operare. Au fost adăugate metadate și sume de verificare a jurnalelor în scopuri de securitate. Timestamp-urile au fost îmbunătățite cu intervale de până la nanosecunde.

Anul 2014 a fost marcat de o schimbare majoră, deoarece cele mai importante două distribuții Linux profesionale, Red Hat și SUSE, au spus adio sistemului de fișiere clasic EXT și au lansat noi standarde, BTRFS și XFS. B-tree este următoarea generație de sisteme de fișiere pentru Linux, pronunțat ca Butter FS sau B-tree FS. BTRFS are o serie de caracteristici care îl fac o soluție atractivă de stocare pe disc local. Cu toate acestea, alegerea finală între BTRFS sau EXT4 depinde de dumneavoastră.

Tipuri de fișiere

În Linux, totul este tratat ca un fișier, chiar și dispozitivele precum imprimantele și unitățile de disc. Deoarece toate datele sunt, în esență, un flux de octeți, fiecare dispozitiv poate fi tratat în mod logic ca un fișier.

Pentru a face alegerea corectă, BTRFS sau EXT4, trebuie să înțelegeți structura sistemului de fișiere. Toate fișierele din Unix pot fi împărțite în linii mari în 3 tipuri, și anume:

  • Normal;
  • directoare;
  • dispozitive.

Ultimele două nu se aseamănă intuitiv cu fișierele, așa că sunt considerate "speciale". Primul tip, enumerat mai sus, este un fișier normal, adică fără "scop special". Se compune din fluxuri de date (octeți) stocate pe un dispozitiv fizic. Exemple sunt documentele de text simplu, aplicațiile care conțin cod sursă de nivel înalt, fișiere text executabile și fișiere binare.

Al doilea tip este un fișier special, numit director. Acest tip acționează ca un container pentru alte categorii numite subdirectoare. Acestea nu conțin date în sensul utilizatorului, ci doar legături către fișierele pe care le conțin.

Cea de-a treia categorie, menționată mai sus, este dispozitivul. Acesta este un alt tip special utilizat pentru a descrie un dispozitiv fizic, cum ar fi o imprimantă sau o unitate portabilă. În acest caz, BTRFS sau EXT4 nu va conține date, ci va afișa pur și simplu informațiile care intră în dispozitivul descris.

BTRFS: Scalare pentru stocare

BTRFS se bazează pe un copiere la scriere COW cu arbore B. Potrivit lui Chris Mason, autorul BTRFS, scopul său a fost de a permite Linux să se adapteze la spațiul de stocare disponibil. Scalabilitatea nu se referă doar la accesul la spațiul de stocare, ci și la posibilitatea de a-l administra și gestiona cu ajutorul unei interfețe simple care permite utilizatorilor să vadă ce se utilizează, ceea ce face ca procesul să fie mai fiabil. Deci, alegerea BTRFS sau EXT4 are mai multe avantaje pentru primul standard.

BTRFS este, de asemenea, un sistem de stocare bazat pe instanțe, precum XFS. Se salvează spațiu pentru fișiere mici și directoare indexate și suportă plasarea dinamică "inode". Gestionează mai multe dispozitive de stocare și oferă suport pentru striping RAID, mirroring, striping și mirroring partajat. De asemenea, are suport flash, cu suport direct pentru operațiunile TRIM/reset.

Sistemul suportă date instantanee comprimate, inscriptibile și accesibile la citire, precum și backup-uri incrementale eficiente. Epitome permite divizarea internă a rădăcinii sistemului de fișiere, precum și implementarea cotelor și deduplicarea externă. Aceste caracteristici sunt foarte utile în sistemele integrate de înaltă disponibilitate.

BTRFS are un minim de informații stocate în locații fixe. Acesta este un avantaj pentru migrările EXT2/3/4, deoarece conversia in situ este posibilă atâta timp cât există suficient spațiu liber. Standardul este, de asemenea, baza de stocare pentru Ceph, sistemul de fișiere al clusterului. Pentru utilizator, aceste argumente sunt suficiente pentru a alege BTRFS și EXT4.

Sistem extins

Sistem extins

Acest standard de lungă durată este familia care include EXT2, EXT3 și EXT4, și este încă utilizat pe scară largă de facto.

EXT2 a fost introdus în 1993 și suporta caracteristici Linux, cum ar fi link-uri simbolice și nume de fișiere lungi, gestionând volume de până la 32TB și fișiere de până la 2TB. Format încă utilizat în multe depozite bazate pe flash, împreună cu FAT. Nu avea sistemul de jurnalizare inerent în EXT3 și EXT4. EXT2 utilizează o ierarhie pe mai multe niveluri care permite accesul rapid la fișiere mai mici. Fișierele de mari dimensiuni adaugă o legătură pe unul și două niveluri înainte de a fi disponibile.

EXT4 oferă o serie de caracteristici, inclusiv sisteme de fișiere cu o dimensiune de până la 1 octet și fișiere de până la 16TB. Extents înlocuiește mecanismul tradițional de cartografiere a blocurilor utilizat cu rudele anterioare. În ciuda compatibilității retroactive, EXT4 nu poate fi montat ca EXT3 dacă sunt activate caracteristici mai noi, cum ar fi suportul pentru extents.

EXT4 suportă prealocarea persistentă - utilă pentru aplicații cum ar fi streaming media, unde performanța accesului serial este primordială. De asemenea, suportă alocarea amânată, alocarea monobloc, verificarea rapidă și logarea pentru o mai bună fiabilitate.

Format de generație următoare

BTRFS, standardul de generație următoare pentru Linux, este proiectat pentru fișiere mari și sistem de la zero, snapshot-uri, administrare simplificată, RAID integrat și management de volum.

BTRFS are avantaje față de EXT4:

  1. Integritatea datelor încorporate - sume de control și metadate.
  2. Detectează și repară corupția datelor, îmbunătățește fiabilitatea generală a sistemului de fișiere.
  3. Crearea de copii ușoare și clone ale fișierelor sau ale unor întregi structuri de directoare cu cerințe minime de spațiu suplimentar pe disc. Această caracteristică este deosebit de utilă în special împreună cu tehnologiile de virtualizare, cum ar fi, pentru depozitare Imagini de mașini virtuale și containere Linux.
  4. Recuperarea rapidă a modificărilor recente ale fișierelor.
  5. Îmbunătățește operațiunile de backup, în loc să fie nevoie să ocolească întreaga structură de directoare pentru fișierele care au fost modificate, sistemul de fișiere poate furniza direct aceste informații.
  6. Suport discard și TRIM.
  7. Suport optimizat pentru dispozitivele de stocare solid state (Flash), permițându-le să recupereze sectoarele din fișierele șterse pentru operațiuni viitoare de scriere.
  8. Integrarea instantaneelor cu managementul pachetelor yum.
  9. Permite ca actualizările de software și de sistem de operare să fie rapid anulate sau să se pornească rapid la un nivel de patch mai vechi.
  10. Defragmentare online. Împiedică fragmentarea în cazul în care multe fișiere mici sunt create și șterse într-o succesiune rapidă, crescând astfel performanța generală a sistemului de fișiere prin reducerea accesărilor pe disc.
  11. Curățarea corecției erorilor. Constatări și remedieri Corupția sistemului de fișiere sisteme în mod automat.
  12. Comprimarea datelor online. Crește capacitatea de stocare și reduce I/O.
  13. Suport integrat pentru mai multe dispozitive. Permite un singur sistem de fișiere pe mai multe discuri, fără un manager de volum separat, și oferă funcționalitate RAID pentru o redundanță sau performanță sporită.

Comparație: BTRFS vs EXT4

Comparație: BTRFS vs EXT4

Nu cu mult timp în urmă, utilizatorii Linux încă lucrau cu sisteme de fișiere care nu s-au schimbat prea mult de la Unix, de exemplu EXT3. Standardul utilizează pointeri de bloc, un index al fiecărui fișier în structura centrală de date care conține toate informațiile despre fișiere și o listă de pointeri pentru fiecare bloc individual.

Comparație între standarde

Standardele EXT4 mai recente folosesc pointeri la "extents". Fiecare este un grup de blocuri contigue. Deoarece acestea lucrează cu stocare continuă, bazată pe extents, pot reduce semnificativ costul de gestionare a spațiului de fișiere.

BTRFS folosește, de asemenea, extents, dar acestea sunt destul de diferite față de alte sisteme de operare Linux și sunt capabile de copy-on-write COW. Atunci când datele sunt suprascrise în EXT4, noile date sunt scrise peste datele existente pe dispozitivul de stocare, distrugând vechea copie. BTRFS mută blocurile suprascrise într-o altă locație și scrie blocuri noi acolo, lăsând vechea copie pe loc.

O altă caracteristică importantă a BTRFS este managerul încorporat. BTRFS poate acoperi mai multe dispozitive fizice într-o serie de configurații RAID. Orice volum este un set de unul sau Discurile fizice multiple pot fi, de asemenea, subdivizate în "lifturi", care sunt văzute ca sisteme independente care împart un singur set de volume fizice. Astfel, BTRFS vă permite să grupați o parte sau toată stocarea într-un pool mare și apoi să împărțiți acel pool între un set de sisteme de fișiere, fiecare cu propriile limitări.

BTRFS oferă o gamă largă de alte caracteristici care nu sunt acceptate de alte standarde de fișiere Linux. Poate efectua o sumă de verificare completă atât a datelor, cât și a metadatelor, ceea ce îl face robust împotriva unei potențiale corupții hardware. Suma de verificare completă este costisitoare, deci va fi utilizată doar într-un număr mic de instalații.

Datele pot fi stocate pe disc într-o formă comprimată. Funcția de primire/transfer este utilizată ca parte a unor scheme de backup suplimentare. Un motor de defragmentare operațională repară fișierele fragmentate pe un sistem în funcțiune. În nucleul 3.12 A fost adăugată funcția de deduplicare offline, care navighează în blocurile care conțin date duplicate și le reunește într-o singură copie partajată.

În timp ce EXT4 și BTRFS se compară în favoarea celui din urmă standard, noua funcționalitate excelentă a BTRFS nu este gratuită. În multe cazuri, administratorii pot decide că costurile asociate cu BTRFS sunt mai mari decât beneficiile. Odată ce va fi general acceptat faptul că BTRFS este gata pentru utilizarea publică în lumea reală, există o șansă bună ca standardul să apară pe multe sisteme.

Alegerea unui model pentru SSD

Alegerea unui model pentru SSD-ul dvs

Atunci când se configurează o nouă instalare Linux cu un SSD, mulți utilizatori nu sunt siguri cu ce sistem de fișiere să lucreze. Acest lucru este clar, pentru că atunci când utilizatorii instalează Linux, aleg adesea setările implicite.

SSD-BTRFS are mulți detractori. Ei spun că este instabil, ceea ce pare a fi adevărat, deoarece este încă într-o situație delicată stadiul de dezvoltare. Dar este de fapt un sistem de fișiere destul de solid pentru o utilizare de bază, în special cu SSD-uri.

BTRFS nu înregistrează, spre deosebire de alte sisteme, economisirea de spațiu prețios pentru SSD-uri. De asemenea, suportă TRIM, o caracteristică importantă pentru proprietarii de SSD-uri. TRIM vă permite să ștergeți blocurile care nu sunt utilizate, ceea ce este esențial pentru a menține unitatea operabilă sub Linux.

SSD-EXT4 este astăzi cel mai utilizat și cel mai fiabil sistem de pe Linux. Este utilizat în centrele de date mari și în mediile de producție, pe toate tipurile de hard disk-uri, inclusiv SSD-uri.

Conversia fișierelor

În timpul pornirii de la montarea Live USB, trebuie să convertiți partiția directorului rădăcină din EXT4 în BTRFS. În caz contrar, nu puteți rula comanda BTRFS-convert atunci când vi se solicită: /dev/sda1 este montat.

algoritmul de execuție:

  1. Accesați Anexa> Ubuntu Software Center din meniul Editare> Surse software.
  2. Verifică întreaga listă: Reîncercați apt-get install BTRFS-tools. Se recomandă utilizarea unui sistem actualizat versiunea BTRFS-tools. De exemplu, obțineți BTRFS-tools_0.19+20100601-3ubuntu3_amd64.deb și scrie: sudo dpkg -i BTRFS-tools v0.19+20100601-3ubuntu3 _amd64.deb
  3. Fără acest instrument actualizat, nu este posibilă eliminarea instantaneului din BTRFS.
  4. În cazul în care conversia EXT4 în BTRFS a avut succes și funcția BTRFS-convert este în curs de execuție, se vor afișa următoarele mesaje.
Conversia fișierelor

Apoi, modificați UUID-ul în meniul.fișier lst. Cu Grub Legacy, schimbați valoarea root=UUID în meniul.lst pentru partiția BTRFS manual. Pentru a face acest lucru, utilizați următoarele linii pentru meniul Grub s.fișier lst. Pe măsură ce sunt adăugate scripturi și cârlige, initramfs, initrd, imaginile din directorul de boot trebuie actualizate.

Conversia partițiilor de disc

Conversia unei partiții de disc

Înainte de a efectua o conversie a sistemului de fișiere rădăcină, se efectuează în prealabil o copie de rezervă completă a sistemului de operare, pentru o posibilă recuperare ulterioară.

Procesul de conversie a fișierelor EXT2, EXT3 sau EXT4 în fișiere rădăcină BTRFS:

  1. Rulați comanda mount pentru a defini dispozitivul care este montat ca root și tipul de sistem de fișiere.
  2. Utilizați comanda ls -l pentru a determina că dispozitivul mapat corespunde cu /dev/vg hostol6/lv_root și că sistemul de fișiere root corespunde cu partiția de disc /dev/sda2.
  3. Închideți PC-ul.
  4. Boot de pe un CD, DVD sau ISO Oracle Linux.
  5. Selectați Rescue Installed System în meniul de configurare. Când vi se solicită, alegeți o limbă și o tastatură, selectați CD/DVD-ul local ca suport de instalare și continuați cu "Nu" pentru a ocoli interfața de rețea.
  6. Alegeți "Skip" pentru a ocoli selecția mediului de recuperare.
  7. Selectați Start shell pentru a obține bash - promptul shell-ului (bash-4.1#) în partea de jos a ecranului.
  8. Dacă sistemul rădăcină existent este configurat ca un volum LVM, utilizați următoarea comandă pentru a porni un grup de volume: vg_hostol6.
  9. Rulați o versiune corectă de fsck, cum ar fi fsck.ext3 sau fsck. ext4 pentru a verifica și repara integritatea sistemului.
  10. Conversia sistemului în BTRFS.
  11. Creați un punct de montare (/mnt 1) pentru sistemul rădăcină convertit.
  12. Utilizați comanda pentru a edita fișierul /mnt1/etc/fstab și pentru a schimba tipul de sistem rădăcină BTRFS.
  13. Creați un fișier .Utilizați o comandă pentru a schimba tipul de sistem rădăcină în rădăcina sistemului montat.
  14. Prezența de .fișierul autorelabel instruiește SE Linux să recreeze atributele de securitate pentru toate fișiere de pe sistem.
  15. Demontați sistemul rădăcină convertit.
  16. Scoateți CD-ul, DVD-ul sau ISO-ul bootabil și reporniți sistemul.

Synology: Optimizarea SSD

Synology: Optimizarea SSD

BTRFS este relativ nou pe syno, fiind deja considerat o soluție stabilă și propus ca standard în majoritatea distribuțiilor. Selectarea unui sistem de fișiere pentru SSD, BTRFS și EXT4, pe baza următoarelor argumente.

BTRFS este un sistem de fișiere multi-root încorporat în kernelul Linux în 2013 și declarat stabil. Acesta poate stoca 16 milioane de TB în volum (16 Eo) și oferă numeroase caracteristici:

  1. Detectarea și optimizarea automată a SSD-urilor. Discurile neparafiliate beneficiază de anumite optimizări și aceasta este o problemă de dezvoltare. Inițial considerat SF, mai ales în EXT4 dacă aveți nevoie să dezactivați anumite opțiuni în timpul editării, cum ar fi timpul de scriere a fișierelor.
  2. RAID liniar este util atunci când un utilizator are medii de stocare diferite și diverse care trebuie consolidate pentru reciclare, cum ar fi NAS prin adăugarea unui server NFS. Acest lucru nu este posibil cu o placă RAID, MDADM sau LVM. BTRFS JBOD oferă o șansă mai bună de salvare a datelor, în special cu un număr mic de discuri, astfel încât standardul ales pentru Synology este BTRFS și EXT4.
  3. După o copie de rezervă inițială completă numai pentru citire, BTRFS poate efectua copii de rezervă incrementale cu rotație, cum ar fi păstrarea unei copii de rezervă pe zi, apoi una pe lună, apoi una pe an. Transferul de instantanee este, de asemenea, gradual, mai ușor și mai rapid decât utilizarea "rsync", deoarece sistemul poate distinge între ștergerea unui fișier și simpla redenumire a arborelui.

BTRFS este următoarea generație de sisteme de fișiere Linux și schimbă preferințele utilizatorilor pentru alegerea lor. Acesta este un adevărat instrument mobil care trebuie învățat pe măsură ce cresc cerințele utilizatorilor.

Articole pe această temă