El filesystem ext3 guarda la información respecto de 3 fechas diferentes de un archivo cualquiera. Para verificar esta información pueden usar el comando “stat nombredearchivo”.
La fecha de acceso o “Access Time” (atime) guarda la información de la última vez que se accedió al archivo. Es decir, cuando se lea un archivo con el comando “cat” por ejemplo, esta fecha se actualizará. Esto significa que por cada lectura del contenido del archivo se tendrá una escritura.
Este trabajo adicional para el disco, además de que lo desgasta más rápidamente, genera lentitud en los tiempos de acceso. Imagínense tener que escribir la fecha del último acceso cada vez que tengan que leer un archivo. Puede ser que para un servidor tenga sentido tener este tipo de pista de auditoria, pero para un desktop es demasiado.
La solución es sencilla, simplemente deshabilitar esta funcionalidad agregando en las opciones de montaje del archivo /etc/fstab la palabra “noatime”. Esta opción hace que no se guarde la información de la fecha de último acceso.
En mi portatil si se siente la diferencia entre tener y no tener habilitado el atime. Hagan la prueba y verán.
Sin embargo, tener el atime puede resultar necesario para ciertas utilidades del sistema operativo. Es por eso que un día navegando me tope con esta interesante discusión entre varios desarrolladores del Kernel de Linux:
http://kerneltrap.org/node/14148
Ingo Molnar propone un parche al Kernel para soportar un nuevo modo de guardar la fecha de acceso, llamado relatime. Usando esta opcion de montaje se guarda el atime solamente una vez al dia:
http://people.redhat.com/mingo/relatime-patches/improve-relatime.patch
El Kernel incluído en Fedora 9 llevaba este parche incluido, pero en la versión de Fedora 10 este parche fue eliminado del source RPM.
Aqui el parche para Rawhide:
http://cvs.fedoraproject.org/viewvc/devel/kernel/linux-2.6-relatime-by-default.patch?revision=1.1&view=markup
Como creo que este parche podría hacer mucho más rapido el acceso al disco, levante un Bug:
Add improve-relatime.patch to F10 and rawhide
https://bugzilla.redhat.com/show_bug.cgi?id=479052
La buena noticia, y la intención de este post, es comunicarles que este parche va a ser incluido en el Kernel 2.6.30!
El Kernel de Fedora 10 ha hecho un backport del parche, que estará disponible proximamente. El Kernel del próximo Fedora 11 tendra el parche incluido. La opcion relatime estará habilitada por defecto en Fedora 11, en Fedora 10 no.
Que significa esto para el común de los mortales?
Que su computadora va a tener tiempos de respuesta muchisimo mejores, debido a que el disco no tendrá que escribir la fecha de acceso (atime) por cada vez que se lee un archivo.