Tengo un volumen en mi Macbook Pro 12.3.1 M1, /System/Volumes/Data
que tiene atributos apfs, local, journaled, nobrowse, protect
pero no noatime
. Supongo, entonces, que cualquier acceso a un archivo en este volumen actualizará el tiempo de acceso del archivo (que obtengo con stat -f '%Sa' /path/to/file
). Sin embargo, cuando ejecuto cat /path/to/file
No veo que se actualice, ni tampoco cuando hago una simple open
/ read
/ close
en C. ¿Qué está pasando aquí?
Respuesta
¿Demasiados anuncios?APFS tiene una semántica por defecto sobre las marcas de tiempo de acceso ligeramente diferente a la que cabría esperar. En particular, por defecto la marca de tiempo de acceso de un archivo sólo se actualiza al leerlo si la marca de tiempo de acceso almacenada actualmente es anterior a la marca de tiempo de modificación del archivo.
Puedes cambiar esto para obtener el comportamiento tradicional configurando el indicador de función APFS_FEATURE_STRICTATIME
en el volumen. Esto no es algo que un usuario ordinario deba hacer, por lo que recomendaría no optar por esa opción a menos que tenga requisitos muy específicos.