文件访问时间未在 ubuntu 12.04 中更新

Cod*_*ody 4 linux files atime

使用该cat命令读取文件后,我使用该stat命令查看它更改的访问时间,但它没有得到更新。

我检查了/etc/fstab文件,但noatime我的任何驱动器上都没有文件,那么为什么访问时间没有更新?

我正在使用 Ubuntu 12.04 Precise Pangolin。

Bra*_*iam 6

而不是cat您必须使用touch(或强制写入的东西),或atime在您的挂载选项中明确声明。


Ubunturelatime默认使用。事实上,Linux 内核从 2.6.30 版本开始使用relatime作为默认值。这仅在访问文件而不是全部时更新某些值。这会修改行为,因此它不会更新访问时间。这是 Ubuntu 挂载选项中的默认设置。修改访问时间的唯一方法是触摸文件(也就是强制写入)而不是简单的读取。cat

这背后的原因是性能。如果像 POSIX 要求的那样每次读取都需要写入,那么基于磁盘和闪存的设备的效率会更差。这在只读文件系统中似乎也适得其反。

在 Ask Ubuntu and Super User 中有很多关于这个话题的讨论: