Btrfs

Btrfs
Fejlesztő Oracle Corporation (kezdetben)
angol név Btrfs
Bevezetés Stabil: Linux kernel 3.10, 2013. július 29.
instabil: Linux kernel 2.6.29, 2009. március
( Linux )
Szerkezet
A könyvtárak tartalma B fa
Fájl allokáció mértékben
Korlátozások
Maximális fájlméret 16 Eio
A fájlok maximális száma 2 64
A fájlnév maximális mérete 255 bájt
Maximális hangerőméret 16 Eio
A fájlnevekben engedélyezett karakterek Mind, kivéve NUL ('\ 0') és '/'
Jellemzők
Felvett dátumok módosítás (mtime), attribútumok módosítása (ctime), hozzáférés (atime)
Attribútumok POSIX , Extended attribútumok
Engedélyek POSIX, ACL
Integrált tömörítés Igen ( zlib , LZO és (a 4.14-es rendszermag óta) Zstd )
Integrált titkosítás Tervezett

Btrfs ( B-tree fájlrendszer , hangsúlyos ButterFS) egy fájlrendszer az 2010-es évek alapján Copy-On-Write (copy-on-write francia) alatt a GNU GPL , közösen fejlesztette ki az Oracle , a Red Hat , a Fujitsu , Intel , SUSE , STRATO AG  (in) és mások. 2012-ben, amikor még nem tartották elég stabilnak, a közösség intenzív fejlesztési és tesztelési erőfeszítéseket tett annak érdekében, hogy a Btrfs az ext4 és az ext3 utódja legyen , a disztribúciók szokásos fájlrendszere. Az OpenSuse 13.2 az indításkor alapértelmezés szerint a Btrfs-t kínálja a gyökérpartícióra a biztonság biztosítása érdekében, és meghagyja az ext4 és az XFS (gyorsabb) közötti választást a / home számára.

A Btrfs a következő szolgáltatásokat nyújtja, amelyek nem találhatók meg más fájlrendszerekben:

Ezek a jellemzők fontosak a Linux rendszerek, mind a szerverek, mind az ügyfél munkaállomások számára, mivel a tárolók mérete és konfigurációja általában növekszik és összetettebbé válik.

A pillanatkép technika különösen biztosítja, hogy következetes biztonsági másolatot készítsen a rendszerfájlokról, olyanokról, amilyenek a pillanatkép pillanatában voltak, még akkor is, ha a biztonsági mentés több órát vesz igénybe, és sok fájl megváltozik.

Történelem

A Btrfs adatszerkezet (copy-on-write a Tree B ) már javasolta, amelyet a kutató számára az IBM , Ohad Rodeh , egy konferencián USENIX 2007 Chris Mason, a korábbi mérnöke SUSE Oracle csatlakozott 2007 végén, és elkezd dolgozni a Btrfs megtervezése a B Tree adatszerkezet alapján . A szerverek biztonsági mentésének lehetősége működésük megszakítása nélkül valójában nagy igény.

A Red Hat megszüntette a Btrfs támogatását az RHEL 7.4 verziója óta , 2017. augusztus 1-jén. A CentOS 8.0 Linux disztribúció már nem tartalmaz olyan csomagokat a tárolókban, amelyek támogatnák a Btrfs fájlrendszereket.

Jellemzők

Terjedelem

A Btrfs az Ext4-hez hasonlóan a kiterjedés fogalmán alapul . Ez egy összefüggő terület (akár több száz MB is, ellentétben a néhány KB-val régebbi klaszterekkel ), amelyet minden egyes fájl a merevlemezre történő mentéskor tart fenn . Így amikor a fájl végéig (függelék) írunk, vagy teljesen átírjuk, az új adatok gyakran közvetlenül a meglévő mértékben mennek át, nem pedig a merevlemez egy másik területére. A kiterjedés ilyen használata csökkenti a széttagoltságot , ezért növeli a hagyományos merevlemez teljesítményét (de nem nyer semmilyen erősítést az SSD-n ). Ez az időhatékonyság a lemezterület nagyobb elfoglaltságának az árát jelenti, amelynek költségeit több nagyságrenddel csökkentették. A Btrfs a nagyon kicsi fájlok adatait is közvetlenül a könyvtár fájl kiterjesztésében tárolja , nem külön terjedelemben.

Almennyiségek és pillanatképek

A Btrfs fenntartja a "részmennyiségek" fogalmát , amely a könyvtárak és fájlok külön fája (beleértve a gyökérzetet is ), lehetővé teszi a különféle fák egyidejű használatát, függetlenebbé téve őket a fő rendszertől. Az adatok így jobban elkülönülnek, és különböző mennyiségeket lehet kvótákkal meghatározni. A fő előny a pillanatképek (más néven pillanatképek ) lehetősége. A pillanatfelvétel lehetővé teszi, hogy egy pillanatfelvételt készítsen egy fájlrendszer adott pillanatában, hogy a munka folytatása közben a következetes állapotba mentse . Ez a pillanatkép egy alkötet, amely utána szerkeszthető. Ez az írásmódosítás, amely a biztonsági mentés során lehetséges (csak egy korábbi állapotból), lehetővé teszi az online adatbázisok magas rendelkezésre állását.

Másolás írásra

Ezen részkötetek és pillanatfelvételek kiaknázására a Btrfs a klasszikus „ copy-on-write  ” technikát használja  . Ha az adatokat memóriablokkba kívánja írni, akkor a memóriablokkot átmásolja a fájlrendszer egy másik helyére, hogy ne változtassa meg az eredetit, és az új adatokat később a másolatba menti. Ezután a blokkra mutató metaadatok automatikusan módosulnak az új adatok figyelembevétele érdekében. Ez a tranzakciós mechanizmus különbözik az ext3-ban meglévő naplózástól , amely emlékezik csak arra, ami az írás előtt létezett, és mindaddig megtartja, amíg meg nem erősítik, hogy az írás jól sikerült. A rendszer pillanatképének elkészítése lehetővé tenné, hogy probléma esetén azonnal visszatérjen a pillanatképre, anélkül, hogy a meghibásodás idején újra kellene játszania a folyamatban lévő fájlt. A teljesítményproblémák mellett (a Btrfs nem rendelkezik az XFS teljesítményével) ez felveti a kérdéseket: mikor kell pillanatképet készíteni milyen mennyiségű adatról? A fénykép világából kölcsönzött "pillanatkép" elnevezés félrevezető, amennyiben a dermedt állapot valóban egy pillanatnyi, a művelet jellemzően még mindig néhány tíz milliszekundumot vesz igénybe, még akkor is, ha nem kapcsolódik a tíz percig. egy tartalék. A pillanatképek e célra történő felhasználása nem a fejlesztők által felvetett pont.

Másrészt elengedhetetlen a szinkronizáláshoz , az archiváláshoz és a biztonsági mentésekhez , biztosítva, hogy a teljes választott fájlrendszer szinkronizálásra, archiválásra vagy biztonsági mentésre kerüljön, a művelet kezdetével megegyező állapotban, még akkor is, ha a a művelet megkezdődött. ”tovább dolgozunk rajta, és a biztonsági mentés több órát vesz igénybe. Ez a lehetőség következetes biztonsági mentéseket tesz lehetővé, feltéve, hogy az informatikai csapat végrehajtja.

Adat védelem

Btrfs saját adatvédelmi technikák: a használata hátsó referenciák - azaz tudva, egy adatblokk, amely a metaadatok pont a blokk) lehetővé teszi, hogy azonosítják a rendszer a korrupció. Ha egy fájl azt állítja, hogy blokkkészlethez tartozik, és ezek a blokkok azt állítják, hogy egy másik fájlhoz tartoznak, ez azt jelzi, hogy a rendszer konzisztenciája megváltozott. A Btrfs ellenőrzi az összes tárolt adatot és metaadatot is annak érdekében, hogy mindenféle forró korrupciót felismerhessen, javítson néhányat, és ezáltal jobb megbízhatóságot nyújtson.

Forró átméretezés

Lehetővé teszi a fájlrendszer méretének gyors átméretezését (beleértve annak csökkentését is), miközben megőrzi a metaadatok kiváló védelmét, amelyet a biztonság érdekében több helyen másolnak. A művelet egyszerű: btrfs filesystem resize +2g /mntadjon hozzá 2  GiB fájlt a fájlrendszeréhez. Ez a funkció nem célja felesleges, amit nyújt a logikai kötet manager for Linux , de azt állítja, a technikailag teljes.

Nagyon gyors fájlrendszer-ellenőrzés

A fájlrendszer ellenőrzése a btrfsck programon keresztül hibatűrő és a tervezés szerint rendkívül gyors. A B fák használata lehetővé teszi a lemez szerkezetének feltárását olyan sebességgel, amelyet lényegében korlátoz a lemez olvasási sebessége. A másik oldal nagy memóriaterület, mivel a btrfsck háromszor több memóriát használ, mint az e2fsck .

Rétegek

A Btrfs tiszteletben tartja a Linux funkcionális "rétegeinek" hierarchiáját. Például, bár további funkciókat kínál, igyekszik a lehető legnagyobb mértékben átírni az LVM által alapértelmezésként kínált teljes kötetkezelő rendszert .

Logikai kötetkezelés

A Btrfs lehetővé teszi a logikai kötetek kezelését , vagyis több tárolóeszköz összesítését.

RAJTAÜTÉS

A Btrfs számos RAID funkció megvalósítását teszi lehetővé .

Adattömörítés

A Btrfs lehetővé teszi a tárolt adatok tömörítését . Meg lehet aktiválni idején szerkesztést, míg választotta ki a tömörítés típusa között Zstd , Zlib és LZO .

Más tömörítési algoritmusokat fontolgattak vagy mérlegelnek:

A lemezkihasználtsághoz és a magas rendelkezésre állási réshez kapcsolódó költségek

Az adatok biztonságának és konzisztenciájának biztosítása minden bizonnyal költségekkel jár, amelyeket azonban össze kell hasonlítani:

Ezt felidézve:

A Btrfs belső működése gyakorlatilag lehetetlenné teszi a szabad hely mennyiségének meghatározását: a " df  " parancs  csak a látszólagos térnek felel meg, nem a valós térnek, amely sokkal nagyobb lehet. Korábban ilyen típusú problémákkal csak üreges (vagy " lyuk ") fájlokkal rendelkező Linuxok találkoztak .

Megjegyzések és hivatkozások

  1. (en) btrfs.wiki.kernel.org
  2. (in) Chunkfs: Gyors fájlrendszer ellenőrzés és javítás , Valerie Henson Hozzáfért2008. február 5. A jelenet 18: 49-kor következik be. "Butter FS-nek vagy B-tree FS-nek hívják, de az összes menő gyerek azt mondja, hogy Butter FS"
  3. CRFS és POHMELFS [LWN.net]
  4. [1]
  5. https://btrfs.wiki.kernel.org/index.php/FAQ#Is_btrfs_stable.3F
  6. http://searchdatacenter.techtarget.com/news/2240185580/Red-Hat-discloses-RHEL-roadmap
  7. http://thread.gmane.org/gmane.linux.file-systems/26246/focus=26492
  8. https://btrfs.wiki.kernel.org/index.php/Using_Btrfs_with_Multiple_Devices
  9. http://www.linuxfoundation.org/news-media/blogs/browse/2009/06/conversation-chris-mason-btrfs-next-generation-file-system-linux
  10. https://btrfs.wiki.kernel.org/index.php/Btrfs_design
  11. http://lwn.net/Articles/342892/
  12. akkor ismert a ReiserFS fájlrendszeren végzett munkájáról
  13. https://lkml.org/lkml/2007/6/12/242
  14. (in) Red Hat, "  Deprecated Functionality  " (hozzáférés: 2019. október 3. )
  15. A Seagate cég nyilatkozata szerint 29 év alatt 1 300 000-szeresére
  16. (en) Hogyan kezdtem el az Oracle Linux Btrfs fájlrendszerét?
  17. (in) "  Btrfs felveszi a tömör tömörítési támogatást  " a Phoronix- on ,2012. január 13(megtekintés : 2015. december 30. )
  18. "  Tömörítés - btrfs Wiki  " a btrfs.wiki.kernel.org címen (elérhető : 2017. január 4. )
  19. http://ns1758.ca/winch/cost-hard-drives-komorowski.jpg

Függelékek

Kapcsolódó cikkek

Külső hivatkozás