默认的方式下linux会把文件访问的时间atime做记录,文件系统在文件被访问、创建、修改等的时候记录下了文件的一些时间戳,比如:文件创建时间、最近一次修改时间和最近一次访问时间;这在绝大部分的场合都是没有必要的。
因为系统运行的时候要访问大量文件,如果能减少一些动作(比如减少时间戳的记录次数等)将会显著提高磁盘 IO 的效率、提升文件系统的性能。
如果遇到机器IO负载高或是CPU WAIT高的情况,可以尝试使用noatime和nodiratime禁止记录最近一次访问时间戳。
修改方法
1.修改/etc/fstab,如下
/dev/sdb1 /home/disk0 ext4 defaults 0 2
改成
/dev/sdb1 /home/disk0 ext4 noatime 0 2
2.修改/etc/fstab设置后需要重新挂载文件系统、不必重启就可以应用新设置。remount分区,执行:
mount -o remount /home/disk0
如果不想改fstab,直接用mount命令:
mount -o noatime -o nodiratime -o remount /home/disk0
其他
此外,设置 noatime 后,可不必再设置 nodiratime。
给挂在home下的磁盘批量设置noatime
sed -ri 's/(\/home.*\s+.*\s+)\S+(\s+[[:digit:]]+\s+[[:digit:]]+)/\1noatime\2/' /etc/fstab