Btrfs

btrfs
Dezvoltator Oracle , Fujitsu , Red Hat [1]
Sistemul de fișiere btrfs
Data depunerii 4.18:
august 2018 [2] ( Linux )
Structura
Conținutul folderului b-copac
Plasarea fișierului măsură
Restricții
Dimensiunea maximă a fișierului 16 E&B
Lungimea maximă a numelui fișierului 255 de octeți [3]
Dimensiunea maximă a volumului 16 E&B
Caractere valide în titluri Toți octeții, cu excepția NUL și „/”
Capabilități
Atribute POSIX
Drepturi de acces POSIX , ACL
Comprimarea fundalului Da ( LZO , zlib de la kernel 4.14: - zstd )
Criptare în fundal Nu
Sistem de operare acceptat linux
 Fișiere media la Wikimedia Commons

Btrfs ( B-tree FS, „Better FS” sau „Butter FS”) este un sistem de fișiere pentru Linux bazat pe structuri B-tree și funcționează pe principiul „ copy-on-write ” . Publicat de Oracle Corporation în 2007 sub Licența Publică Generală GNU [4] . Printre obiectivele de proiectare originale a fost acela de a concura cu sistemul de fișiere ZFS (care Linux a fost împiedicat de restricțiile de licențiere) și de a aborda deficiențele sistemelor de fișiere Linux timpurii. Autorul principal - Chris Mason ( în engleză  Chris Mason ) - a remarcat și prezența unei interfețe simple de gestionare a sistemului de fișiere ca unul dintre scopurile creației [5] .

Planul inițial era lansarea Btrfs v1.0 și remedierea formatului de stocare la sfârșitul anului 2008 [6] , dar formatul a fost reparat abia pe 12 iunie 2010 [7] .

Btrfs a fost inclus în ramura principală a nucleului Linux începând cu versiunea 2.6.29-rc în stare experimentală. O evaluare a performanței de către Phoronix a arătat că Btrfs cu compresia activată depășește uneori Ext4 [8] .

Caracteristici

Se crede că Btrfs are o serie de soluții, care au apărut pentru prima dată în ReiserFS [9] , deși nu acceptă unele funcții de bază. Lista caracteristicilor sistemului din 2011 [10] :

În ciuda faptului că Btrfs nu a fost inițial capabil să se comporte ca un sistem de fișiere distribuit (de rețea) , Oracle a început să implementeze protocolul CRFS [14] de sistem de fișiere de rețea , care este proiectat și optimizat doar pentru Btrfs.

În versiunile anterioare, migrarea de la sistemele de fișiere ext3 și ext4 și înapoi era suportată (până la actualizare), dar începând cu versiunea de kernel 4.0, utilizarea funcției nu este recomandată din cauza pericolului potențial [15] .

Crearea unui fișier de paginare în Btrfs este posibilă din martie 2019 (kernel Linux 5.0), fișierul este creat cu steag nocow și trebuie să fie localizat pe o singură unitate [16] .

Dezavantaje

Nu puteți utiliza instantanee LVM și copii de volum realizate cu dd, deoarece acestea vor avea același UUID, ceea ce poate duce la scrierea în copie greșită și la coruperea tuturor datelor [17] ; în loc să utilizați LVM și ddîn Btrfs, trebuie să utilizați utilitare speciale Btrfs pentru gestionarea subvolumelor și mecanismul de lucru cu instantanee.

Datorită tehnicii implicite copy-on-write, poate apărea o fragmentare semnificativă cu un număr mare de suprascrieri ale fragmentelor aleatorii de fișiere [18] ; o soluție ar putea fi dezactivarea COW (posibil doar pentru directoare/fișiere noi și goale).

Note

  1. Ce companii contribuie la Btrfs? (link indisponibil) . gmane.org (24 aprilie 2014). Data accesului: 18 iunie 2014. Arhivat din original pe 16 februarie 2018. 
  2. lista de modificări . Consultat la 13 iulie 2010. Arhivat din original la 10 februarie 2010.
  3. Linux/VLFN - Etersoft cercetează extensia lungimii numelui de fișier . Consultat la 1 noiembrie 2014. Arhivat din original la 1 noiembrie 2014.
  4. Btrfs Wiki: Pagina principală  (eng.)  (downlink) . Arhivat din original pe 28 iunie 2012.
  5. Sean Michael Kerner. Un sistem de fișiere mai bun pentru Linux  (engleză)  (link nu este disponibil) . InternetNews.com (30 octombrie 2008). — „Scopul principal este să-l lași pe {Linux} să se extindă pentru spațiul de stocare care va fi disponibil. Scalare nu înseamnă doar abordarea stocării, ci înseamnă și posibilitatea de a o administra și de a o gestiona cu o interfață curată, care le permite oamenilor să vadă ce este folosit și o face mai fiabilă.” Consultat la 30 octombrie 2008. Arhivat din original pe 28 iunie 2012.
  6. Btrfs Wiki: Cronologie de dezvoltare  (engleză)  (link nu este disponibil) . Arhivat din original pe 20 decembrie 2008.
  7. [https://web.archive.org/web/20100612201526/http://lkml.org/lkml/2010/6/12/66 Arhivat 12 iunie 2010 la Wayback Machine LKML: Christian Kujau: [PATCH] Eliminați steagul EXPERIMENTAL din Btrfs]
  8. Unde este performanța Btrfs astăzi (downlink) . Phoronix.com (9 iunie 2010). Preluat la 9 iulie 2010. Arhivat din original la 28 iunie 2012. 
  9. Theodore Ts'o . Re: reiser4 pentru 2.6.27-rc1 (link indisponibil) (1 august 2008). Consultat la 22 ianuarie 2009. Arhivat din original pe 28 iunie 2012. 
  10. Dr. Chris Brown. Sistem de fișiere B-tree // format Linux. - 2011. - Nr. LXF140 . — ISSN 1470-4234 .
  11. Suportul de compresie LZ4 este puțin probabil pentru Btrfs - Phoronix . Preluat la 18 august 2017. Arhivat din original la 18 august 2017.
  12. Compression-btrfs Wiki . Preluat la 18 august 2017. Arhivat din original la 12 iunie 2017.
  13. Evidențieri Btrfs în 5.5: noi hashuri . Preluat la 29 august 2020. Arhivat din original la 10 septembrie 2020.
  14. Sistem coerent de fișiere la distanță . Consultat la 31 mai 2009. Arhivat din original la 20 februarie 2009.
  15. Conversie din Ext3 . Consultat la 31 mai 2009. Arhivat din original la 19 februarie 2009.
  16. Lansarea kernelului Linux 5.0 Arhivat 14 mai 2019 pe Wayback Machine — opennet  03/04/2019 „A fost adăugată capacitatea de a plasa o partiție de swap în fișiere în interiorul Btrfs FS...”
  17. Gotchas - btrfs Wiki . Preluat la 13 februarie 2017. Arhivat din original la 14 iunie 2017.
  18. Josef Bacik. Btrfs: The Swiss Army Knife of Storage (link indisponibil) (1 februarie 2012). Consultat la 13 iulie 2010. Arhivat din original la 28 iunie 2012. 

Link -uri

În engleză

În rusă