Traté de usar el comando
ls --time=atime
estaba funcionando en un directorio pero no estaba funcionando en otro directorio. Abrí ciertos archivos en vim, evince y otras aplicaciones, pero después de los tiempos de acceso al archivo de comandos no cambiaron.
Cuando escribo, touch file.txt
el tiempo de acceso cambia, pero cuando escribo, vim file.txt
el tiempo de acceso no cambia.
¿Que esta mal aquí?
filesystems
files
ls
atime
xralf
fuente
fuente
vim file.txt
? ¿Dejas vim por:q
o:wq
? Si no escribe,vim
no modifica el tiempo de acceso del archivo, esto es por diseño..jpg
extensión no cambia. Cuando lo abro en el visor de imágenes, tampoco cambia. Necesito cambiar el tiempo de acceso cada vez que alguna aplicación lee el archivo.Respuestas:
Con las opciones de montaje predeterminadas, los tiempos de acceso se manejan de manera especial en Linux:
La
relatime
opción de montaje se convirtió en la opción predeterminada desde Linux kernel 2.6.30. Esa es la razón parals --time=atime
no enumerar lo que espera.Solución: para utilizar un comportamiento estricto (heredado) para atime, utilice la
strictatime
opción de montaje (por ejemplo, en/etc/fstab
).Nota: Para deshabilitar completamente las actualizaciones de atime, se puede usar
noatime
.fuente
strictatime
?relatime
conserva la compatibilidad para esos programas. De hecho, muy pocos programas aún confían en esto, y a menudo es seguro de usarnoatime
.strictatime
característica como la pruebo hoy, pero si hará que el sistema sea lento, me gustaría configurarlostrictatime
solo en ciertos directorios, si es posible.strictatime
que usaría este directorio como punto de montaje.Puede desactivar la grabación del tiempo de acceso para algunos sistemas de archivos (buscar
noatime
en/etc/fstab
). Para probar esto, puede intentarlo ytouch -a file; ls -l --time=atime file
luego repetirtouch -a file; ls -l --time=atime file
para ver si cambia.El
ls
comportamiento se explica porman ls
:ls -l --time=atime
muestra la hora de acceso en la columna de fecha / hora. Para ordenar por esta clave, también debe usarla--sort=time
.Si por "el tiempo no ha cambiado" quiere decir que muestra el mismo resultado, ya sea porque atime está deshabilitado para el sistema de archivos (ver
/etc/fstab
) o porque el tiempo de acceso es realmente el mismo que el tiempo de modificación (bastante común).Tenga en cuenta que la lista de archivos no cambia su tiempo de acceso: no solo se accede a los archivos
ls
, solo el caché de inodo .fuente
ls -l --time=atime
la hora no cambia (supongo que la columna con la hora es atime) y el orden de clasificación no cambia, los archivos con la última hora deben estar al principio o al final de la lista (si se accedió por última vez) )touch
yls
? Edité la respuesta para hacerlo más evidente.También puede ser útil cuando se realiza una prueba como esta para agregar el
--full-time
indicador als
fin de que pueda ver segundos y segundos secundarios para que pueda ver el efecto sin estar limitado por límites de minutos.fuente