Ero sivun ”Atime” versioiden välillä
Pb (keskustelu | muokkaukset) p (→Tehonkulutus: typo) |
Pb (keskustelu | muokkaukset) p (Luokka:Ohjeet) |
||
Rivi 28: | Rivi 28: | ||
[[Luokka:Tiedostojärjestelmät]] | [[Luokka:Tiedostojärjestelmät]] | ||
[[Luokka:Vinkit]] | [[Luokka:Vinkit]] | ||
[[Luokka:Ohjeet]] |
Versio 21. marraskuuta 2008 kello 14.14
atime on Unixin tiedostojärjestelmien ylläpitämä tietue, joka kertoo tiedoston edellisen avausajankohdan. Muita vastaavia tietueita ovat mtime, joka kertoo edellisen muokkausajankohdan, sekä ctime, joka kertoo edellisen statusmuutoksen, kuten sisällön muokkauksen tai tiedoston oikeuksien ja tiedostoattribuuttien muuttamisen ajankohdan.
Tiedoston atime-leiman näkee komennolla
ls -lu
mtimen komennolla
ls -a
ja ctimen komennolla
ls -lc
Tehonkulutus
Atimen ongelmana on, että tiedostojen lukemisia tapahtuu todella usein, mikä aiheuttaa järjestelmälle jatkuvan tarpeen muuttaa atime-leimoja. Tämä taas johtaa siihen, että huomattavan suuri osa järjestelmän tehosta (tietyissä tapauksissa jopa kymmeniä prosentteja) kuluu atime-leimojen muuttamiseen.
Ratkaisuna tähän on poistaa atime käytöstä joko osittain tai kokonaan. Tiedostojärjestelmää liitettäessä on käytössä neljä erilaista atime-asetusta:
- atime - muutetaan aina atime-leimoja (oletus)
- nodiratime - ei muuteta hakemistojen atime-leimoja
- relatime - muutetaan atimea vain silloin, kun se on vanhempi kuin mtime tai ctime
- noatime - ei koskaan muuteta atimea
Yleensä on suositeltavinta käyttää noatime-asetusta. On kuitenkin olemassa joitakin ohjelmia (esimerkiksi mutt-sähköpostiohjelma), jotka tarvitsevat tietoa siitä, milloin tiedostoa on viimeksi luettu sen muokkaamisen jälkeen. Tällaisia ohjelmia käytettäessä riittää yleensä relatime-asetuksen käyttö. Tavallinen työpöytäkäyttäjä ei käytännöllisesti katsoen koskaan törmää atimea hyödyntäviin ohjelmiin.
Jo liitetyn tiedostojärjestelmän voi muuttaa käyttämään noatimea komennolla
mount -o remount,noatime liitospiste
Pysyvämmin asetuksen saa käyttöön lisäämällä sen fstabiin (neljäs sarake) esimerkiksi seuraavasti:
/dev/hdc1 /home ext3 defaults,noatime 0 2