Kolumni: ReiserFS ja sen vaihtoehdot

Maanantaina 28.4.2008 tuomittiin kalifornialaisessa oikeusistuimessa muuan Hans Reiser vankeuteen murhasta. Murhaoikeudenkäynnistään muidenkin tietoisuuteen noussut Reiser tunnettiin alkujaan Linux-käyttäjien piirissä hänen kehittelemästään tiedostojärjestelmästä, ReiserFS:stä.

Minäkin olen ReiserFS:n käyttäjä. Olen alustanut sillä kolme osiota kiintolevyltäni: /homen, /varin ja /mnt/Arkisto -osion. Koska ReiserFS:n kehittäjää odottaa näillä näkymin vähintään 25 vuoden vankilatuomio, tiedostojärjestelmän tulevaisuus näyttää tällä hetkellä hyvin epävarmalta. Näin siitäkin huolimatta, että jotkut arvelevat Reiserin vankilatuomion vain parantavan hänen tiedostojärjestelmänsä kehitystä joko ilman häntä tai hänen avullaan vankilasta käsin.

Kuitenkin esimerkiksi aiemmin ReiserFS:ää oletustiedostojärjestelmänä SuSE Linux -käyttöjärjestelmässään käyttänyt Novellkin on jo ReiserFS:n pääkehittäjän juridisten vaikeuksien pelottamana siirtynyt käyttämään ext3-tiedostojärjestelmää. ReiserFS:n tilanteen takia päätin hiukan tutkia mitä vaihtoehtoja sille olisi tarjolla. Ext3:n ohella varteenotettavimpia, eli juuri tällä hetkellä realistisia vaihtoehtoja ovat JFS, XFS ja ZFS. Käyn nämä seuraavassa läpi käänteisessä järjestyksessä, lopusta alkuun.

ZFS:ää pidetään ehkäpä lupaavimpana tämänhetkisistä tiedostojärjestelmistä. ZFS:n ongelmana on kuitenkin sen käyttöä säätelevä lisenssi, CDDL. Vaikka CDDL luetaankin vapaiden lisenssien joukkoon, se ei ole GPL-yhteensopiva. Niinpä ZFS:ää ei löydy Linux-ytimestä, eikä tule löytymäänkään niin kauan kuin lisenssiä ei muuteta — eikä välttämättä sittenkään, riippuen siitä minkä version GPL:stä ZFS:n kehityksestä vastaava Sun Microsystems valitsee.

Linuxin kanssa ZFS:ää voi kyllä käyttää, mutta se toimii silloin niinsanottuna userland-sovelluksena, eli ytimen ulkopuolella. /homen kaltaisen, ei-kriittisen osion kohdalla tällainen menettely tiedostojärjestelmän kanssa ehkä vielä joten kuten menettelisi. /var-osion olisi kuitenkin syytä toimia kaikissa olosuhteissa, joten sen liittämisen olisi parasta nojata suoraan ytimessä olevaan koodiin.

XFS on SGI:n kehittämä tiedostojärjestelmä, jonka etu on suorituskyky, joka on suhteessa muihin sitä parempi, mitä isommista tiedostoista on kyse. XFS:n ohella myös IBM:n kehittämä JFS pärjää hyvin juuri isojen tiedostojen käsittelyssä, kuitenkin sillä erotuksella, että JFS käyttää vähemmän suoritintehoja.

Kaikki ei kuitenkaan ole ruusuisaa, mitä näihin vaihtoehtoihin tulee.

XFS:llä huhutaan olevan vakausongelmia. Asteen varteenotettavampia ovat kuitenkin puheet siitä, että XFS käyttäytyy huonosti silloin, kun koneesta saattaa katketa virta, tai se kaatuu, tai sammutus tapahtuu muuten vain ennakoimattomasti. Tämä johtuu siitä, että XFS on suunniteltu palvelinkäyttöön. Palvelimet pyörivät yleensä varsin luotettavasti (esimerkiksi sähkönsaanti on turvattu UPS:llä), joten tiedostojärjestelmää suunniteltaessa ei kotikoneita koskevista epävakausongelmista selviytymiseen ole tarvinnut panostaa.

JFS:n osalta tällaiset huhut eivät ole yhtä laajalle levinneitä, mutta se saattaa ihan hyvin johtua vain siitä, että itse tiedostojärjestelmän käyttökään ei ole kovin laajalle levinnyttä. Ongelmista ei siis ehkä ole raportoitu siksi, ettei raportoijiakaan ole, enkä pidäkään JFS:n vakautta kotikäytössä riittävän hyvin testattuna voidakseni luottaa siihen. Yksi tunnettu ja tunnustettu ongelma JFS:llä on, ja se on Windows-ympäristöistä tuttu tiedostojen pirstaloituminen.

Kaiken huipuksi JFS:n ja XFS:n tulevaisuus näyttää juuri nyt yhtä epävarmalta kuin ReiserFS:n tulevaisuus, joskin vähän erilaisista syistä. XFS:n kehitys kärsii SGI:n taloudellisista vaikeuksista. IBM on puolestaan menettänyt kiinnostuksensa JFS:n kehittämiseen, koska Linux-maailman isot yritysnimet, Novell ja Red Hat ovat lopettaneet tukensa sille.

Jäljelle jää näin ollen ext3. Sen etu on iän, ja Linuxin levinneisyyden myötä laajalti tehdyn testauksen tuoma vakaus ja luotettavuus. Löytyy tietysti niitäkin, jotka pitävät tätä mainetta ansaitsemattomana, ja ext3:a kaikkein epäluotettavimpana, mutta ext3:n tuki on kuitenkin kiistatta Linuxissa ja eri Linux-jakeluversioiden kesken kaikkein paras. Ext3:n kiistaton haittapuoli taas perustuu samaan asiaan kuin sen edutkin, eli ikään. Koska ext3 on rakennettu aiempien versioiden (ext ja ext2) pohjalta yhteensopivuus huomioiden, se on jäänyt vauhdissa auttamatta jälkeen yllä mainituista, uudemmista tulokkaista.

Juuri tällä hetkellä tilanne näyttää siis kaikin puolin heikolta. Tässä luetelluista tiedostojärjestelmistä ext3 on oikeastaan ainoa, jota voisin edes harkita, jos nyt ryhtyisin vaihtamaan ReiserFS:llä alustettujen /var- ja /home-osioitteni tiedostojärjestelmää. Siitäkin maksaisin sitten todennäköisesti käytännössä hinnan kiintolevytoimintojen hidastumisena. Valitsisin kuitenkin ext3:n kaikille osioille siinä tapauksessa, että olisin nyt vasta asentamassa käyttöjärjestelmää, ja kiintolevy täytyisi joka tapauksessa alustaa johonkin muotoon.

Arkisto-osiolle voisin kyllä ottaa käyttöön JFS:n tai XFS:n niiden mahdollisesta epäluotettavuudesta välittämättä, koska sille osiolle en pitkiksi ajoiksi varastoi muuta kuin sellaista tavaraa, jonka olen jo kertaalleen polttanut rompulle. Näiden etu olisi jo mainittu suurten tiedostojen käsittelyn nopeus, joka pääsisi oikeuksiinsa, koska osio sisältää lähes yksinomaan vähintään useiden megatavujen kokoisia tiedostoja (musiikkia ja videota). Tuen jatkuvuudessa en tällä muutoksella edellä kerrotun perusteella siis kuitenkaan voittaisi mitään.

/var on täynnä pikkutiedostoja, joten ReiserFS sopii sille kuin nyrkki silmään, sillä ReiserFS:n valtti on nimenomaan nopeus pienten tiedostojen kanssa. /home sisältää sekalaista tavaraa, mutta paljon pieniä (asetus-) tiedostoja sekin, joten ei ReiserFS siihenkään väärä valinta alunalkujaan ollut.

ReiserFS:n tukikaan ei tietenkään ole loppumassa ihan seinään, sillä olen kaikkea muuta kuin yksi harvoista sitä käyttäessäni. Koska vaihtoehtojen suhteen tilanne on tällä hetkellä melko kehno, olenkin päättänyt pitää pääni kylmänä, ja katsella mihin suuntaan asiat kehkeytyvät. Jos optimistiset ennusteet pettävät, ReiserFS:n kehitys tyssää Hans Reiserin vankilatuomioon. Jos tiedostojärjestelmä alkaa sen jälkeen osoittaa ikääntymisen merkkejä, täytyy tutkia, onko tilanne vaihtoehtojen suhteen silloin yhtään parempi.

Comments

5 responses to “Kolumni: ReiserFS ja sen vaihtoehdot”

  1. Timo Taskinen Avatar

    Itse olen käyttänyt XFS:ää jo pitkään kaikissa muissa paitsi /boot osiossa (GRUB ei taida osata buutata XFS:ltä). En ole huomannut mitään ongelmia vakaudessa.

  2. Vuorovaikuttaja Avatar

    Tämä on nyt tietysti luotettavuudessaan samaa tasoa noiden Internet-huhujen kanssa, mutta itsekin muistelen joskus vuosia sitten käyttäneeni XFS:ää jonkin aikaa (silloin käytin muistaakseni Debiania), ja huomanneeni sen silloin hitusen epäluotettavaksi. Ihan tarkkaa ongelmien luonnetta en enää muista, mutta sieltä tuo epäluottamukseni XFS:ään juontaa juurensa alunalkujaan. Mitä ongelmia minulla silloin sen kanssa silloin olikaan, ne lienee koodissa sittemmin korjattu, sillä sen verran kauan aikaa siitä on.

  3. Jussi Toivola Avatar
    Jussi Toivola

    Omalle kohdalle sattui mukavaa Kubuntua asentaessani. Laitoin rootin JFS:ksi ja homen XFS:ksi ihan vain kokeillakseni. Kubuntu asentui kiltisti, mutta heti ensimmäisessä loginissa kieltäytyi hyväksymästä salasanaa, joten painelin alt+ctrl+f1 uuteen konsoliin, jossa salasana hyväksyttiin. Muutin salasanan toiseksi mutta kirjautumisnäkymään ei päässyt enää vaan tuli pelkkä musta ruutu ja kone jumi täysin. Käynnistin koneen uudestaan, mutta enää ei tullut edes login näkymää vaan pelkkä konsoliversio. Xserver ja KDE eivät enää suostuneet käynnistymään.

    Herjausta tuli ainakin: cannot stat /tmp/.x11-unix permission denied. Ei edes roottina ollut lupia tehdä mitään. jfs_fsck valitti korruptiosta, jota ei voi korjata… Olisiko se korruptoitunut tuossa uudelleenkäynnistyksessä tai sit levy on mäsä… Eikun asentamaan kubuntu uusiksi ja ext3 tilalle. Toimii toistaiseksi.

  4. Vuorovaikuttaja Avatar

    Kuulostaa juuri sellaisilta vaikeuksilta joihin olisi ikävä törmätä, jollei kyse olisi vain kokeiluasennuksesta.