在访问文件时更新每个文件听起来很浪费。

使用noatime选项挂载文件系统有什么好处。哪种应用程序/服务器取决于访问时间?

#1 楼

考虑relatime:

如果您是全新安装(〜2008),则可以使用relatime挂载选项。我认为这是一个很好的折衷方案。在关于执行此新选项的kerneltrap讨论中:


“相对atime仅在前一个atime早于mtime或ctime时才更新atime
。 noatime,但是
对于像mutt这样的应用程序很有用,
自上次修改文件以来就需要知道何时读取文件。
这样一来,大多数需要一段时间的应用程序仍然可以工作,但减轻了磁盘负载-因此这是一个折衷方案。这是最近的Ubuntu桌面发行版的默认设置。

关于noatime和nodiratime:

如果要对文件进行noatime,我想知道是否有理由不使用nodiratime除了noatime之外,您也不会更新目录的访问时间。

未提及的启用atime的另一个原因是出于审计目的。但是由于不保留访问者,只有在何时访问它,它对于审计跟踪可能没有太大用处。

评论


+1 relatime具有noatime的优点,而没有缺点。

– David Pashley
09年7月29日在11:49

阅读有关此内容的更多信息,似乎noatime也包括nodiratime(虽然很多年前没有)

–否
09年7月29日在23:59

注意,由于Linux 2.6.30 relatime是默认设置。但是此外,如果文件的旧访问时间超过1天,则该文件的最后访问时间将始终更新。这意味着每日备份过程或在大型maildir中进行搜索可能仍然会对I / O产生不必要的高影响。

– rudimeier
17年5月18日下午5:37

#2 楼

如果某个时间段内未访问文件,则存在一些应用程序会将文件移至辅助存储。显然,他们需要时间。

除此之外,我对此没有多大用处,尤其是由于当今文件管理器倾向于打开文件来生成预览,因此在浏览目录时修改时间。

这些天我总是和noatime一起坐骑。

#3 楼

很少有应用程序依赖此文件,例如Mutt无法确定自上次访问以来该文件夹是否已收到新邮件。

通常,我和其他人认为挂载noatime是个好主意。 br />

评论


即使这样,它也仅适用于mbox存储。有人可能会说您得到了应得的。

–丹·卡利
09年7月29日在11:06

不要使用noatime;使用relatime代替。请参阅凯尔的答案。

– David Pashley
09年7月29日在11:50

请注意,相对时间是相对较新的选项。如果您使用的是较旧的内核(即,如果您仍在运行任何基于Debian / Sarge的计算机),则可能没有。

– David Spillett
09年7月29日在12:43

#4 楼

尚未提及的主要缺点是,如果您有一个tmpreaper进程(即删除/ tmp中一段时间​​未访问的文件的程序),它将删除仍在使用的tmp文件。

reatime比noatime更好。如果文件自上次一次更新以来已被修改,它只会一次更新。这对邮件客户端有明显的好处。它仍然无法解决tmpreaper问题(可能会从/ tmp读取文件一段时间,而未写入文件)。 ),并且性能优势显着。