Tmpfs

Linux.fista
Versio hetkellä 26. syyskuuta 2015 kello 23.53 – tehnyt Oselotti (keskustelu | muokkaukset)
(ero) ← Vanhempi versio | Nykyinen versio (ero) | Uudempi versio → (ero)
Siirry navigaatioon Siirry hakuun

Tmpfs on tiedostojärjestelmä, jossa tiedostot tallennetaan pääasiassa tietokoneen keskusmuistiin eikä lainkaan kiintolevylle. Silti se näkyy käyttöjärjestelmälle normaalina levyosiona. Tällaisen osion käsittely on nopeaa mutta kaikki sinne kirjoitettu data häviää, kun tietokone käynnistetään uudestaan.

Perustietoa

Tmpfs:ää voidaan käyttää esimerkiksi väliaikaistiedostoja varten, jolloin ohjelmien toiminta nopeutuu hieman, kun väliaikaisia tiedostoja ei tarvitse kirjoittaa kiintolevylle, vaan ne tallennetaan pelkästään muistiin. Toinen käyttötarkoitus on tallentaa tmpfs:ään väliaikaisesti tietoturvan kannalta arkaluontoisia tietoja, kuten esimerkiksi gpg:llä avattuja salattuja viestejä lukemista varten, jolloin niistä ei jää mitään mahdollisesti palautettavissa olevaa jälkeä kiintolevylle.

Tmpfs voi kuitenkin käyttää kiintolevyn swap-osiota tai -tiedostoa, mikäli vapaan keskusmuistin määrä laskee hälyttävän alhaiseksi. Tällöin kiintolevylle siirretään vähiten käytettyjä tiedostoja ja kaikki sinne siirretyt tiedostot poistetaan uudelleenkäynnistyksen yhteydessä.

Tmpfs:n lisäksi keskusmuistissa olevan levyosion voi luoda ns. RAM-osiona. Tmpfs:n etuna on kuitenkin se, että sen koko muuttuu dynaamisesti, eikä se varaa keskusmuistia tarpeettomasti. Haittapuolena on, että arkaluontoista tietoa saattaa joissain tilanteissa päätyä kiintolevylle.

Käyttö

Lähes kaikissa jakeluissa on oletuksena käytössä hakemistoon /dev/shm liitetty tmpfs-osio. Tmpfs-osion olemassaolon voi tarkistaa komennolla

mount | grep tmpfs

Jos komennon tulosteessa on seuraavan kaltainen rivi

none on /joku/hakemisto type tmpfs (rw)

niin tmpfs-osio löytyy hakemistosta /joku/hakemisto. Jos näin on, kyseistä osiota voi alkaa käyttää saman tien. Yleensä kaikilla käyttäjillä on sinne kirjoitusoikeudet. Tarvittaessa oikeuksia voi muuttaa artikkelin tiedoston oikeudet ohjeiden mukaan.

Jos tällaista osiota ei ole, se voidaan tarvittaessa luoda suoraan mount-komennolla:

mount -t tmpfs tmpfs /liitoshakemisto

Näin luodun tmpfs:n maksimikooksi asetetaan puolet keskusmuistin määrästä. Maksimikoon voi antaa liittämisen yhteydessä, esimerkiksi maksimikoko 1Gt asetettaisiin komennolla

mount -t tmpfs -o size=1G tmpfs /liitoshakemisto

Maksimikokoa voi muuttaa myös liittämisen jälkeen remount-asetuksella:

mount -o remount,size=2G /liitoshakemisto

Oletuksena tmpfs-osiolle on kaikilla kirjoitusoikeudet. Oikeuksia voidaan muuttaa komennolla chmod. Tmpfs-tiedostojärjestelmiä voi luoda myös useampia.

Fstab

Tmpfs-osio voidaan liittää automaattisesti käynnistyksen yhteydessä lisäämällä /etc/fstab-tiedostoon rivi

tmpfs /liitoshakemisto tmpfs rw 0 0

Katso myös