用noatime调整Ext4是否值得?
使用以前版本的Ubuntu(使用Ext3文件系统),我曾经通过在/etc/fstab
设置noatime
参数来调整它以获得更好的性能和明显的结果。
使用Ext4文件系统是否仍然值得这样做,现在它在Ubuntu中是默认的? 如果是这样,程序是否以某种方式改变了?
可以在此处找到此调整的示例。
在Ubuntu 10.04上,除非在/etc/fstab
重写,否则relatime
是默认挂载选项的一部分。 前几个版本在/etc/fstab
明确地具有relatime
。 relatime
提供与noatime
相同的速度(和闪存写入周期保护)的好处,而不会给老式邮件通知器带来麻烦。
您引用的文章建议使用data=writeback
。 Ubuntu默认为data=ordered
。 在磁盘负载较重的情况下,Ubuntu的设置较慢,但在发生崩溃或电源故障时,数据丢失的风险显着降低。 因此我不建议更改Ubuntu默认值。
将commit=5
更改为commit=100
增加发生崩溃时数据丢失的时间窗口,在大多数情况下几乎没有任何好处。
摘要:保留设置原样,选择它们是有原因的。
补充:除了mount选项之外还有其他一些东西可以有所作为。 从ext3
切换到ext4
本身通常是明显的改进。 以下是笔记本电脑用户的一些提示。
-
如果你的SSD速度很慢,请查看SU的这个post 。 重要的提示是将
tmpfs
用于/tmp
和浏览器缓存(可能还有历史记录)。 -
如果您有一个硬盘,并且希望它停止旋转一段时间,那么请安装noflushd ,它允许磁盘通过延迟所有写入来降速,直到RAM满为止。 (当然,读取会导致磁盘旋转;你需要养成在磁盘旋转之前运行
cat /files/I/m/likely/to/need >/dev/null
的习惯。)在要使noflushd生效,请关闭所有交换并使用commit=3600
类的文件系统挂载。有效地使用noflushd意味着您的数据可以在较长时间内保持不被写入磁盘。 这是一种风险,需要权衡一段时间内没有来自磁盘的噪音或热量的好处。 如果您对这种风险不满意,请不要使用noflushd。
是的,从Ubuntu 12.10开始使用noatime
仍然有意义
relatime
是默认挂载选项。 而且,时间比atime
要好得多。 前者需要在写入后写入第一个读取,后者需要为每次读取写入。 但是对于noatime
每次读取都没有写入。
这基本上意味着相对于其他相同的noatime
mount,用于relatime
mount的磁盘写入次数接近于两倍。 这是闪存设备上分区的一个严重问题。
linux内核社区的详细讨论请访问http://kerneltrap.org/node/14148