7.3. 文件系统

7.3.1. Ext4 文件系统

ext4 文件系统是红帽企业版 Linux 5 中默认的 ext3 文件系统的扩展。现在最红帽企业版 Linux 6 中默认黑色用 Ext4,同时支持到最大文件系统为 16TB,单一文件最大值为 16TB。它还去除了 ext3 中最多只能有 32000 个子系统的限制。

注意

对于超过 16TB 到文件系统,我们建议您使用弹性高容量文件系统,比如 XFS。详情请查看 第 7.3.2 节 “XFS 文件系统”
ext4 文件系统默认是大多数负载的最佳系统,但如果性能分析显示文件系统行为影响到性能,则可以使用以下几个调节选项:
内节点表初始化

对于超大文件系统,mkfs.ext4 进程要花很长时间初始化文件系统中到所有内节点表。可使用 -E lazy_itable_init=1 选项延迟这个进程。如果使用这个选项,内核进程将在挂载文件系统后继续初始化该文件它。可使用 mount 命令的 -o init_itable=n 选项控制发生初始化到比例,其中执行这个后台初始化的时间约为 1/n。n 的默认值为 10

Auto-fsync 行为

因为在重命名、截取或者重新写入某个现有文件后,有些应用程序不总是可以正确执行 fsync(),在重命名和截取操作后,ext4 默认自动同步文件。这个行为与原有到 ext3 文件系统行为大致相同。但 fsync() 操作可能会很耗时,因此如果不需要这个自动行为,请在 mount 命令后使用 -o noauto_da_alloc 选项禁用它。这意味着该程序必须明确使用 fsync() 以保证数据一致。

日志 I/O 优先权

默认情况下,日志注释 I/O 比普通 I/O 的优先权稍高。这个优先权可使用 mount 命令的 journal_ioprio=n 选项控制。默认值为 3。有效值范围为 0-7,其中 0 时最高优先权 I/O。

其他 mkfs 和调节选项详情请参考 mkfs.ext4(8)mount(8) man page,同时 kernel-doc 软件包的 Documentation/filesystems/ext4.txt 文件也有它到信息。

为了尽快向用户提供最新的信息,本文档可能会包括由机器自动从英文原文翻译的内容。如需更多信息,请参阅此说明。