1.5. XFS 和 ext4 的比较
XFS 是 RHEL 中的默认文件系统。本节比较 XFS 和 ext4 的用法和功能。
- 元数据错误行为
- 
							在 ext4 中,当文件系统遇到元数据错误时您可以配置行为。默认的行为是继续操作。当 XFS 遇到不可恢复的元数据错误时,它会关闭文件系统,并返回 EFSCORRUPTED错误。XFS 还支持可配置的错误处理。如需更多信息,请参阅 XFS 中的可配置错误处理。
- 配额
- 在 ext4 中,您可以在创建文件系统时启用配额,或稍后在现有文件系统上启用配额。然后您可以使用挂载选项配置配额强制执行。 - XFS 配额不是一个可重新挂载的选项。您必须在初始挂载中激活配额。 - 在 XFS 文件系统上运行 - quotacheck命令没有效果。当您第一次打开配额记帐时,XFS 会自动检查配额。
- 文件系统重新定义大小
- XFS 没有工具来缩小文件系统的大小。您只能增大 XFS 文件系统的大小。相比之下,ext4 支持扩展和缩小文件系统的大小,但缩小只是一种离线操作。
- inode 号
- ext4 文件系统不支持超过 232 内节点。 - XFS 支持动态 inode 分配。inode 在 XFS 文件系统上可以消耗的空间量被计算为总文件系统空间的百分比。要防止系统耗尽 inode,管理员可以在文件系统创建后调整这个百分比,假设文件系统上有剩余的可用空间。 - 某些应用程序无法正确处理 XFS 文件系统上大于232 的 inode 数。这些应用程序可能会导致 32 位 stat 调用失败,返回值为 - EOVERFLOW。在以下情况下,inode 数超过 232:- 文件系统大于 1 TiB,其 inode 为 256 字节。
- 文件系统大于 2 TiB,其 inode 为 512 字节。
 - 如果您的应用程序由于 inode 数太大而失败,请使用 - -o inode32选项挂载 XFS 文件系统,来强制inode 数低于 232。请注意,使用- inode32不会影响已分配了 64 位数的 inode。重要- 除非特定环境需要,否则 请勿 使用 - inode32选项。- inode32选项可改变分配行为。因此,如果没有可用空间在较低磁盘块中分配 inode ,则可能会出现- ENOSPC错误。