Saltar la navegación

Las fechas de un fichero

Cualquier archivo en GNU/Linux posee tres tipos de marcas de tiempo:

  • ctime (change time): Se actualiza cuando se modifican algunos de los campos del i-nodo del fichero (permisos, dueño, grupo y enlaces duros), se mueve el fichero a otro directorio, se le cambia de nombre y también cuando se modifica. Puede consultarse ejecutando el comando ls -lc.
$ ls -lc /etc/passwd
-rw-r--r-- 1 root root 2130 abr  6 12:00 /etc/passwd
$ ls -lc --full-time /etc/passwd
-rw-r--r-- 1 root root 2130 2016-04-06 12:00:58.872756113 +0200 /etc/passwd
  • mtime (modify time): Se actualiza cuando se modifica el fichero, es decir, cuando se escribe sobre los bloques de datos del fichero. La mayoría de las veces ctime y mtime coincidirán. Puede consultarse ejecutando el comando ls -l.
$ ls -l /etc/passwd
-rw-r--r-- 1 root root 2130 abr  6 12:00 /etc/passwd
$ ls -l --full-time /etc/passwd
-rw-r--r-- 1 root root 2130 2016-04-06 12:00:58.836756114 +0200 /etc/passwd
  • atime (access time): Se actualiza cuando se abre el fichero y se leen todos o algunos de sus bloques de datos. Multitud de comandos modifican el atime: cat, grep, head, tail, etc. Puede consultarse ejecutando el comando ls -lu.
$ ls -lu /etc/passwd
-rw-r--r-- 1 root root 2130 may  8 20:41 /etc/passwd
$ ls -lu --full-time /etc/passwd
-rw-r--r-- 1 root root 2130 2016-05-08 20:41:45.791353130 +0200 /etc/passwd

Existen muchas opciones de montaje de los sistemas de ficheros relacionadas con estas fechas, sobre todo con atime (noatime, relatime, etc.), pues la mayoría de los comandos al menos abren los ficheros y los leen, por lo que atime se ve continuamente modificado y esto supone una cierta carga de trabajo para el sistema operativo. Si se monta una partición con la opción noatime, el GNU/Linux no actualizará atime, con la consiguiente mejora del rendimiento. Los kernel Linux 2.6.30 y superiores, por defecto montan las particiones con la opción relatime, que sí actualiza atime, pero la modificación es relativa a mtime y ctime, es decir, solo se actualizará el atime si este es anterior al mtime o al ctime. Esta opción mejora un poco el rendimiento pues lo normal es modificar un fichero algunas veces, y leerlo muchas más, por lo que el tiempo de acceso después de modificar el fichero solo se actualiza una vez hasta que el fichero vuelva a ser modificado (esto no es del todo exacto pues hay que tener en cuenta también al ctime que cambia por otros motivos además de por la modificación).

 

Licencia: licencia de software libre GPL