Btrfs
btrfs |
Kehittäjä |
Oracle , Fujitsu , Red Hat [1] |
Tiedostojärjestelmä |
btrfs |
Jättöpäivämäärä |
4.18: elokuu 2018 [2] ( Linux ) |
Kansion sisältö |
b-puu |
Tiedoston sijoitus |
laajuus |
Tiedoston enimmäiskoko |
16 E&B |
Tiedostonimen enimmäispituus |
255 tavua [3] |
Suurin äänenvoimakkuuden koko |
16 E&B |
Otsikoissa kelvollisia merkkejä |
Kaikki tavut paitsi NUL ja '/' |
Attribuutit |
POSIX |
Käyttöoikeudet |
POSIX , ACL |
Taustan pakkaus |
Kyllä ( LZO , zlib alkaen ydin 4.14: - zstd ) |
Taustasalaus |
Ei |
OS tuettu |
Linux |
Mediatiedostot Wikimedia Commonsissa |
Btrfs ( B-tree FS, "Better FS" tai "Butter FS") on tiedostojärjestelmä Linuxille , joka perustuu B-puurakenteisiin ja toimii " copy-on-write " -periaatteella . Julkaisija Oracle Corporation vuonna 2007 GNU General Public License -lisenssillä [4] . Alkuperäisten suunnittelutavoitteiden joukossa oli kilpailla ZFS -tiedostojärjestelmän kanssa (jota Linux oli haitannut lisenssirajoitukset) ja korjata varhaisten Linux-tiedostojärjestelmien puutteita. Pääkirjailija - Chris Mason ( englanniksi Chris Mason ) - totesi myös yksinkertaisen tiedostojärjestelmän hallintaliittymän olemassaolon yhtenä luomisen tavoitteista [5] .
Alkuperäinen suunnitelma oli julkaista Btrfs v1.0 ja korjata tallennusmuoto vuoden 2008 lopussa [6] , mutta muoto korjattiin vasta 12. kesäkuuta 2010 [7] .
Btrfs on ollut mukana Linux-ytimen päähaarassa versiosta 2.6.29-rc lähtien kokeellisessa tilassa. Phoronixin suorituskyvyn arviointi osoitti, että Btrfs , joissa pakkaus on käytössä, on joskus parempia kuin Ext4 [8] .
Ominaisuudet
Uskotaan, että Btrfs:llä on useita ratkaisuja, jotka ilmestyivät ensimmäisen kerran ReiserFS :ssä [9] , mutta eivät tue joitain perustoimintoja. Luettelo järjestelmän ominaisuuksista vuodesta 2011 [10] :
- Eheyden tarkistus ilman irrottamista;
- kirjoitettavat tilannekuvat ;
- Inodien dynaaminen allokointi (tiedostojärjestelmän tiedostojen enimmäismäärää ei rajoiteta);
- Tallennuslaitteiden lisääminen ja poistaminen, kun tiedostojärjestelmä on asennettu (asemat ja osiot on helppo liittää Btrfs-verkkoon ja vaihtaa tai poistaa tarvittaessa);
- Tuki monimutkaisille monen levyn kokoonpanoille - tasot 0, 1, 5, 6 ja 10 (toteutettu, mutta 5 ja 6 ei ole vielä vakaina), sekä erilaisten redundanssikäytäntöjen käyttöönotto tiedostojärjestelmäobjektien tasolla - on, on mahdollista määrittää esimerkiksi peilaus mille tahansa hakemistolle tai tiedostolle (suunnitelmissa).
- Pakkaus ( LZO , zlib , zstd - toteutettu, korjaustiedostoja LZ4 :lle ja Snappylle ehdotettu ) [11] [12] ;
- Alitaiteet ( alivolyymit ) ;
- Tehokas tiedostojärjestelmän kloonaus ja lisäarkistojen luominen;
- Liitetyn tiedostojärjestelmän eheyttäminen.
- Päiväkirjan kirjoittaminen kopiointi-kirjoituksella.
- Rajat (erikseen kullekin osalle tai alavolyymiryhmälle, todellisen varatun tilan tai "virallisen" mukaan)
- Tietolohkojen ja metatietojen eheyden tarkistaminen tarkistussummien avulla.
- Metatietojen peilaus jopa yhden aseman kokoonpanossa (pois käytöstä SSD -levyllä ).
- Täysin hajautettu esto.
- ACL- tuki .
- Tietojen katoamisen suojaus.
- Hajautusalgoritmin valinta tietojen ja metatietojen eheyden hallintaan ( CRC-32 ). Version 5.5 käyttöönoton jälkeen [13] : xxHash , SHA256 , BLAKE2B .
- NFS-tuki (vielä epätäydellinen).
- Yhteensopivuusliput, joita tarvitaan levymuodon vaihtamiseen uusissa Btrfs-versioissa säilyttäen samalla yhteensopivuuden vanhojen versioiden kanssa.
- Superblock-varmuuskopiot, vähintään yksi laitetta kohti.
- Hybridipoolit (suunniteltu) - btrfs yrittää siirtää eniten käytetyt tiedot nopeimmalle laitteelle työntäen sieltä pois "vanhentuneet" lohkot, tämä käytäntö on hyvin yhdenmukainen mallin kanssa, jossa SSD-asemia käytetään yhdessä levyasemien kanssa.
- Tietojen tasapainottaminen laitteiden välillä Btrfs:ssä on mahdollista heti levyn lisäämisen jälkeen pooliin erillisellä komennolla, eikä vain asteittain käytön aikana (kuten ZFS:ssä toteutettu).
- Hot-swap-levyt, joiden tuki on ilmestynyt myös ZFS:ssä (suunnitelmissa).
- Offline - duplikointi (liitetyssä muodossa, mutta tallennuksen päätyttyä - ydin 3.12 ja uudemmat), jatkossa - duplikointi suoritetaan tiedoston tallennuksen aikana.
Huolimatta siitä, että Btrfs ei alun perin kyennyt toimimaan kuin hajautettu (verkko)tiedostojärjestelmä , Oracle ryhtyi toteuttamaan CRFS [14] -verkkotiedostojärjestelmäprotokollaa , joka on suunniteltu ja optimoitu vain Btrfs:lle.
Aiemmissa versioissa siirtoa ext3- ja ext4 -tiedostojärjestelmistä ja takaisin tuettiin (päivitykseen asti), mutta ytimen versiosta 4.0 alkaen funktion käyttöä ei suositella mahdollisen vaaran vuoksi [15] .
Sivutustiedoston luominen Btrfsissä on mahdollista maaliskuusta 2019 lähtien (Linux-ydin 5.0), tiedosto luodaan nocow-lipulla ja sen on sijaittava yhdellä asemalla [16] .
Haitat
Et voi käyttää LVM- vedoksia ja -kopioita ,dd jotka on tehty -sovelluksella, koska niillä on sama UUID, mikä voi johtaa siihen, että kirjoitetaan väärään kopioon ja vahingoitetaan kaikki tiedot [17] ; LVM:n ja ddBtrfs:n sijaan sinun on käytettävä erityisiä Btrfs-apuohjelmia alimäärien hallintaan ja mekanismia tilannekuvien käsittelyyn.
Oletusarvoisen kopiointi-kirjoitustekniikan vuoksi voi tapahtua merkittävää pirstoutumista , kun tiedostojen satunnaisten fragmenttien suuri määrä ylikirjoitetaan [18] ; ratkaisu voisi olla COW:n poistaminen käytöstä (mahdollista vain uusille ja tyhjille hakemistoille/tiedostoille).
Muistiinpanot
- ↑ Mitkä yritykset osallistuvat Btrfs:ään? (linkki ei saatavilla) . gmane.org (24. huhtikuuta 2014). Käyttöpäivä: 18. kesäkuuta 2014. Arkistoitu alkuperäisestä 16. helmikuuta 2018. (määrätön)
- ↑ muutosluettelo . Haettu 13. heinäkuuta 2010. Arkistoitu alkuperäisestä 10. helmikuuta 2010. (määrätön)
- ↑ Linux/VLFN - Etersoft tutki tiedostonimien pituutta . Haettu 1. marraskuuta 2014. Arkistoitu alkuperäisestä 1. marraskuuta 2014. (määrätön)
- ↑ Btrfs Wiki: Pääsivu (eng.) (downlink) . Arkistoitu alkuperäisestä 28. kesäkuuta 2012.
- ↑ Sean Michael Kerner. Parempi tiedostojärjestelmä Linuxille (englanniksi) (linkkiä ei ole saatavilla) . InternetNews.com (30. lokakuuta 2008). - "Päätavoite on antaa sen {Linux} skaalata käytettävissä olevaan tallennustilaan. Skaalaus ei ole vain tallennustilan käsittelemistä, vaan se tarkoittaa myös kykyä hallita ja hallita sitä puhtaalla käyttöliittymällä, jonka avulla ihmiset näkevät mitä käytetään ja tekee siitä luotettavampaa." Haettu 30. lokakuuta 2008. Arkistoitu alkuperäisestä 28. kesäkuuta 2012.
- ↑ Btrfs Wiki: Kehityksen aikajana (englanniksi) (linkkiä ei ole saatavilla) . Arkistoitu alkuperäisestä 20. joulukuuta 2008.
- ↑ [https://web.archive.org/web/20100612201526/http://lkml.org/lkml/2010/6/12/66 Arkistoitu 12. kesäkuuta 2010 Wayback Machinessa LKML: Christian Kujau: [PATCH] Poista EXPERIMENTAL lippu Btrfs:stä]
- ↑ Missä Btrfs-suorituskyky on tänään (downlink) . Phoronix.com (9. kesäkuuta 2010). Haettu 9. heinäkuuta 2010. Arkistoitu alkuperäisestä 28. kesäkuuta 2012. (määrätön)
- ↑ Theodore Ts'o . Re: reiser4 versiolle 2.6.27-rc1 (linkki ei saatavilla) (1. elokuuta 2008). Haettu 22. tammikuuta 2009. Arkistoitu alkuperäisestä 28. kesäkuuta 2012. (määrätön)
- ↑ Tohtori Chris Brown. B-tree-tiedostojärjestelmä // Linux-muoto. - 2011. - Nro LXF140 . — ISSN 1470-4234 .
- ↑ LZ4-pakkaustuki on epätodennäköistä Btrfs-Phoronixille . Haettu 18. elokuuta 2017. Arkistoitu alkuperäisestä 18. elokuuta 2017. (määrätön)
- ↑ Compression-btrfs Wiki . Haettu 18. elokuuta 2017. Arkistoitu alkuperäisestä 12. kesäkuuta 2017. (määrätön)
- ↑ Btrfs-kohokohdat 5.5:ssä: uudet tiivisteet . Haettu 29. elokuuta 2020. Arkistoitu alkuperäisestä 10. syyskuuta 2020. (määrätön)
- ↑ Yhtenäinen etätiedostojärjestelmä . Haettu 31. toukokuuta 2009. Arkistoitu alkuperäisestä 20. helmikuuta 2009. (määrätön)
- ↑ Muunnos Ext3:sta . Haettu 31. toukokuuta 2009. Arkistoitu alkuperäisestä 19. helmikuuta 2009. (määrätön)
- ↑ Linux 5.0 -ytimen julkaisu Arkistoitu 14. toukokuuta 2019 Wayback Machinelle – opennet 03/04/2019 “Lisätty mahdollisuus sijoittaa sivutusosio tiedostoihin Btrfs FS:n sisällä…”
- ↑ Gotchas - btrfs Wiki . Haettu 13. helmikuuta 2017. Arkistoitu alkuperäisestä 14. kesäkuuta 2017. (määrätön)
- ↑ Josef Bacik. Btrfs: The Swiss Army Knife of Storage (linkki ei saatavilla) (1. helmikuuta 2012). Haettu 13. heinäkuuta 2010. Arkistoitu alkuperäisestä 28. kesäkuuta 2012. (määrätön)
Linkit
Englanniksi
venäjäksi