Atime
atime on Unixin tiedostojärjestelmien ylläpitämä tietue, joka kertoo tiedoston edellisen avausajankohdan. Muita aikaleimatietueita 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 -l
ja ctimen komennolla
ls -lc
Vastaavasti tiedostot voi järjestää kyseisen aikaleiman mukaan valitsimella -t
ls -lut ls -ut
Tehonkulutus
atimen ongelmana on, että tiedostojen lukemisia tapahtuu joissakin järjestelmissä todella usein, mikä aiheuttaa järjestelmälle jatkuvan tarpeen muuttaa atime-leimoja. Tämä taas johtaa joissakin erikoistilanteissa siihen, että huomattavan suuri osa järjestelmän tehosta kuluu atime-leimojen muuttamiseen. Ratkaisuna tähän on poistaa atime käytöstä joko osittain tai kokonaan niiden osioiden osalta, jossa sen ylläpito aiheuttaa ongelmia.
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ä ongelmallisilla osioilla voi käyttää asetusta noatime. On kuitenkin olemassa joitakin ohjelmia (esimerkiksi mutt-sähköpostiohjelma), jotka tarvitsevat tietoa siitä, milloin tiedostoa on viimeksi luettu sen muokkaamisen jälkeen (eli onko tiedostossa uusia viestejä). Tällaisia ohjelmia käytettäessä riittää yleensä relatime-asetuksen käyttö. Työpöytäympäristöjen ohjelmat valvovat yleensä näitä tiedostoja eri tekniikalla.
atimen päivittämättä jättäminen tarkoittaa, että käyttämättömiä ja siten luultavasti hyödyttömiä tiedostoja on vaikeampi löytää. atimen käyttö tähän tarkoitukseen edellyttää, ettei atime päivity varmuuskopioimisen, tiedostojen indeksoinnin tms. yhteydessä. nodiratime on tässä turvallisempi.
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
Vastaavasti atimen saa väliaikaisesti käyttöön, esimerkiksi kun haluaa tarkistaa lukeeko ohjelma sitä tiedostoa mitä sen luulee lukevan:
mount -o remount,atime liitospiste