Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.9. 配置 atime 更新

每个文件内节点和目录内节点都有三个与之相关的时间戳:
  • ctime — 最后一次修改内节点状态的时间
  • mtime — 最后一次修改文件(或者目录)数据的时间
  • atime — 最后一次访问文件(或者目录)数据的时间
如果启用了 atime 更新,因为在 GFS2 和其他 Linux 文件系统中这是默认设置,那么每次在读取文件时都需要更新其内节点。
因为有些应用程序使用 atime 提供的信息,那些更新可能会需要大量不必要的写入流量和文件锁定流量。那个流量可能会降低性能,因此请尽量关闭或降低 atime 更新频率。
有两个可用来降低 atime 更新效果的方法:
  • 使用 relatime(relative atime)挂载,可在前一个 atime 更新比 mtime 或者 ctime 更新旧时更新 atime
  • 使用 noatime 挂载,可在那个文件系统中禁用 atime 更新。

4.9.1. 使用 relatime 挂载

当挂载文件系统时,可指定 relatime(relative atime)Linux 挂载选项。如果前一个 atime 更新比 mtime 或者 ctime 更新旧,这就可指定更新 atime

用法

mount  BlockDevice MountPoint -o relatime
BlockDevice
指定 GFS2 文件系统所在的块设备。
MountPoint
指定要挂载 GFS2 文件系统的目录。

示例

在这个示例中,GFS2 文件系统位于 /dev/vg01/lvol0,并挂载到目录 /mygfs2。只有在前一个 atime 更新比 mtime 或者 ctime 更新旧时才会进行 atime 更新。
mount /dev/vg01/lvol0 /mygfs2 -o relatime