btrfs
A fáljrendszer tipikusan az a dolog, amivel kapcsolatban nem várunk el különösebb innovációt, vagy izgalmas szolgáltatásokat. Éppen ellenkezőleg, az izgalomnak minden formáját szeretnénk kerülni vele kapcsolatban, és egyetlen dolog fontos: hogy biztonságosan tárolja az adatainkat. Persze az sem árt, ha viszonylag gyorsan végzi a fájlműveleteket, de ezzel tényleg fel is soroltuk mindazon elvárásokat, amik felmerülhetnek ezzel a témával kapcsolatban. Ennek ellenére, az elmúlt években viszonylagos állandóságot jelentő ext3 korszak után láthatóan élénkülni kezdett ez a terület: az ext3 utódja, az ext4 az Ubuntu 9.04-es kiadásában vált opcióként elérhetővé a telepítőből, az Ubuntu 9.10 óta pedig ez az alapértelmezett fájlrendszer.
A Fedora még korábban, az idén júniusban megjelent Fedora 11 kiadásában tette alapértelmezetté, igaz, némi megkötéssel: mivel ekkor még a Fedorában található GRUB nem támogatta az ext4-et, ezért szükség volt egy külön /boot partícióra is ext3 fájlrendszerrel. A másfél hónappal korábban megjelent Ubuntu 9.04, bár nem alapértelmezett lehetőségként kínálta az ext4 formátumot, de tudott róla bootolni, így ott nem volt szükség ilyen kerülőmegoldásra. Az ext4 legfőbb előnye az ext3-hoz képest a jobb teljesítmény bizonyos fájlműveleteknél, valamint a korábbinál jóval gyorsabb fsck folyamat. Az ext4 ugyanakkor továbbra is a régi, jól bevált, de nem túl modern alapokra épül. A nem túl távoli jövőben azonban egy új fájlrendszer veheti át a helyet a GNU/Linux világban, ami teljesen új alapokra építkezik: ez a btrfs.
A btrfs története 2007-ben kezdődött, amikor Chris Mason, a fájlrendszer kitalálója és a fejlesztés elindítója az Oracle alkalmazásába került. Köszönhetően a gyors fejlődésének, valamint annak, hogy a projekt számára az Oracle stabil hátteret biztosít, a fájlrendszer rendkívül gyorsan a mainline kernel része lett: a 2.6.29rc1 kiadás óta elérhető tesztelésre. Ennek eredményeként mára a btrfs egy valóban nyílt projektté vált, és a fejlesztésében olyan vállalatok is részt vesznek, mint például a Red Hat, SUSE, Intel, IBM, HP vagy a Fujitsu. A btrfs-t gyakran hasonlítják össze a Sun ZFS elnevezésű fájlrendszerével, amit például az OpenSolarisban is találhatunk. Ez pedig már csak azért is érdekes kérdés, mert idén áprilisban bejelentették, hogy a két vállalat megállapodott arról, hogy az Oracle felvásárolja a Sun-t, így a két hasonló képességekkel rendelkező fájlrendszer egy tulajdonoshoz kerülhet. Ugyanakkor, mint az az LWN kiváló cikkéből kiderül, bár a ZFS és a btrfs tudását tekintve hasonlóak, belső felépítésüket tekintve jelentősen eltérnek.
Ezek után persze jogosan merül fel a kérdés, hogy mégis, milyen különleges képességei lesznek a btrfs-nek: egyáltalán, mit tudhat egy fájlrendszer. Nos, a btrfs a fájlok egyszerű tárolásán túl sok olyan szolgáltatással rendelkezik, amit a ma Linuxon elterjedt fájlrendszerek még nem nyújtanak. Ha pedig már most szeretnénk egy kicsit bepillantást nyerni ezekbe, tulajdonképpen nincs különösebb akadálya, ugyanis a btrfs már most is elérhető tesztelésre például Ubuntu 9.10 vagy Fedora 12 alatt. Ubuntu alatt, ha btrfs-t szeretnénk használni, a btrfs-tools csomagot kell telepítenünk, míg Fedora 12 alatt a btrfs-progs csomagra lesz szükségünk.
Ha szeretnénk létrehozni egy btrfs partíciót, azt az mkfs.btrfs segítségével tehetjük meg, a sudo mkfs.btrfs /dev/sdXX (például sudo mkfs.btrfs /dev/sdb1) parancs kiadásával: gondolom, mondanom sem kell, hogy nagyon nem mindegy, itt milyen elérési útvonalat adunk meg, hiszen az adott partícióról ilyenkor minden adatot eleveszítünk. Vagyis vagy egy külön, csak erre szánt partíciót használjunk a kísérletezésre, vagy valamilyen külső adattároló eszközt. A btrfs jelen pillanatban kizárólag tesztelésre való, ezért semmilyen fontos vagy kritikus adatot ne tároljuk rajta anélkül, hogy lenne egy másolat róla egy biztonságos helyen. Miután létrehoztuk a btrfs partíciónkat, a btrfsctl nevű eszköz segítségével tudunk rajta különféle műveleteket végezni. A btrfsctl -s név /elérési/útvonal parancs segítségével egy snapshotot hozhatunk létre, vagyis rögzíthetjük a aktuális állapotot, és ehhez a ponthoz később bármikor visszatérhetünk. Ha például a snapshotnak a neve snap, és a btrfs partíciónk a /mnt/btrfs alatt található, akkor a következő parancsot kell kiadnunk: btrfsctl -s snap /mnt/btrfs. Ez copy-on-write módon történik, vagyis nem igényel extra tárhelyet addig, amíg nem módosítunk valamit: és ezt követően is csak a változások foglalnak helyet. Természetesen arra is lehetőségünk van, hogy egy ilyen snapshotot mountoljunk: mount -t btrfs -o subvol=név /dev/sdXX /elérési/útvonal. Az előbbi példánál maradva: mount -t btrfs -o subvol=snap /dev/sdb1 /mnt/btrfs
A másik érdekes szolgáltatása a btrfs-nek, hogy a partíciókat akár menet közben is átméretezhetjük: növelhetjük, vagy akár csökkenthetjük is a méretüket. Ehhez a sudo btrfsctl -r méret /elérési/útvonal parancsot használhatjuk: vagyis, ha mondjuk 2 GByte-ra szeretnénk a /mnt/btrfs csatolási ponton lévő partíciót méretezni, akkor a sudo btrfsctl -r 2g /mnt/btrfs parancsot kell kiadnunk. Ha szeretnénk 100 MByte-tal csökkenteni a méretét, akkor azt a sudo btrfsctl -r -100m /mnt/btrfs utasítás segítségével tehetjük meg. Ha pedig szeretnénk a maximális méretre növelni, egyszerűen a sudo btrfsctl -r max /mnt/btrfs sort kell begépelnünk a terminálba. A btrfs arra is lehetőséget biztosít, hogy akár menet közben töredezettség-mentesítsünk egy fájlt vagy egy könyvtárat. Erre a btrfsctl -d utasítás szolgál. Természetesen mielőtt bármit is csinálnánk a btrfsctl nevű eszközzel, mindenképpen érdemes alaposan átolvasni és értelmezni a hozzá tartozó útmutatót a man btrfsctl parancs kiadásával.
A tervek szerint a btrfs akár már a Fedora következő kiadásában, a várhatóan jövő májusban megjelenő Fedora 13-ban (fejlesztői kódnevén Goddard) elérhető lehet a telepítőből, és bizonyos képességeit aktívan használni is fogják, bár továbbra sem lesz alapértelmezett. A Wiki oldalon található specifikáció szerint a cél az, hogy egy yum plugin segítségével minden frissítés előtt készüljön egy pillanatfelvétel a root partícióról, így probléma esetén bármikor egyszerűen vissza lehet térni egy korábbi, jól működő állapothoz. Ez egyben azt is jelenti, hogy amennyiben a felhasználónak nincs külön partíciója a /home számára, úgy az is visszakerül egy korábbi állapotába. Természetesen ez nem egy visszafordíthatatlan dolog, hiszen bármikor, bármelyik pillanatfelvételt mountolhatjuk, vagyis az adatok ettől még nem vesznek el, bár nyilván egy kezdő felhasználót összezavarhat. Ennek ellenére, ha btrfs-t szeretnénk használni a root számára, úgy érdemes lesz majd a /home-ot külön partícióra tenni.
Azt egyelőre még nem lehet tudni, hogy a fenti fejlesztés végül bekerül-e a Fedora 13-ba, vagy csak egy későbbi kiadásban látjuk majd viszont. Mint ahogy jelen pillanatban még arról sincsenek információink, hogy az Ubuntu mikor kezdi el majd használni ezt az új fájlrendszert. Mivel az Ubuntu 10.04 egy LTS, vagyis hosszú távon támogatott kiadás lesz, és a fejlesztők elsődlegesen a stabilitásra és kiforrottságra helyezik a hangsúlyt, így nem valószínű, hogy ebben hivatalosan támogatott opcióként megjelenhet a btrfs. Legkorábban tehát jövő ősszel, az Ubuntu 10.10-ben találkozhatunk vele. Valószínűbb azonban, hogy csak a 11.04-es kiadásban lesz elérhető a telepítőből opcióként, és legkorábban a 11.10-es kiadástól lehet alapértelmezett. Persze mindez csak spekuláció, hiszen ezzel kapcsolatban egyelőre semmilyen hivatalos állásfoglalás nem jelent meg, és minden attól függ, hogy milyen ütemben fejlődik majd a btrfs. Az elmúlt 2 év eredményei azonban mindenképpen bizakodásra adnak okot.
ez piszok jó poénnak tűnik:)
Kedves Toros!
Az eredeti cikk, tartalmában -mire hivatkoztál is- (bár beleőszültem kissé míg fordítottam) számomra sokkal nagyobb horderejűnek, és igen jelentős változások alapjául szolgálónak tűnik, mint elsőre cikkedből gondolnánk.
….bár meg kell jegyezzem, én távolról sem vagyok számítástechnikai szakember, de az eredeti cikkben írt, részletezett metodika zseniális.
Úgy vélem érdemes lenne ez a “témát” nyomon követve még egyszer visszatérned rá és a gyakorlati lehetőségeit, következményeit bővebben kifejteni.
…tán a várható “adatelérési sebesség” növekedést mindenki érti, és így sokakat érdekelne …. (bár számomra a “visszaállítás” lehetőségei és módjai tetszettek a legjobban).