XFS 版本 4 与 5(RHEL 7 至 8)

XFS 版本 4 与 5(RHEL 7 至 8)

在 RHEL 7.9 中,我/data使用 XFS 4.5 格式化了我的大卷。在 RHEL 8.8 中,XFS 是版本 5.0。

RHEL 8 中的 XFS v5 可以挂载 RHEL 7.9 创建的 XFS v4 文件系统,但 RHEL 7.9 无法挂载 RHEL 8.8 创建的 XFS v5 文件系统。

  • 必须从 RHEL 7.9 迁移到 RHEL 8.8;这样做时我是否会保留/dataRHEL 7.9 使用 XFS 4.5 创建的内容?或者是否值得在 RHEL 8.8 下使用 XFS v5 移动 TB 级的数据并重新格式化我的数据存储?
  • 如果我将数据格式保留为 XFS 4.5,继续使用 RHEL 8.8(未来 4 年内不太可能使用 RHEL 9),可能会出现哪些潜在问题? 到目前为止,我在使用 XFS 时遇到的问题为零。

答案1

我认为您可以通过禁用 Rhel8 提供的功能之一来做到这一点。使用 mkfs.xfs -m reflink=0 /dev/sdN 格式化 Rhel8 上的空间 -m reflink=0 将允许在两个系统上挂载,但 Rhel8 上的重新链接功能将不可用。另请参阅https://access.redhat.com/solutions/4582401(需要 Redhat 登录)了解更多详细信息。

答案2

Linux 内核配置帮助中关于 XFS 版本 4 的说明如下:

选项CONFIG_XFS_SUPPORT_V4“支持已弃用的 V4 (crc=0) 格式”

V4 文件系统格式缺乏 V5 格式支持的某些功能,例如元数据校验和、增强的元数据验证以及存储 2038 年之后时间戳的能力。因此,V4 格式已被弃用。所有用户都应通过备份文件、重新格式化和从备份恢复来进行升级。

如果预计如此大量的数据将长期存在,那么 2038 年就不再那么遥远了。然而,在此之前您可能需要至少升级一次或两次硬件;您应该记住,文件系统版本迁移需要在那一年之前的某个时间完成。如果您有相应的计划,那么将文件系统版本迁移与硬件升级一起进行可能是最方便的。

随着时间的推移,发行版甚至可能会在新的主要版本的截止年之前就取消对 XFS 版本 4 的支持,因此最终操作系统的重大升级可能会迫使您无论如何都要进行迁移。

据我所知,XFS 版本 5 非常稳定,没有出现任何特殊问题。

现在请在您的长期计划中注意这一点。

较新的内核已经开始在适当的时候警告 XFS 文件系统的时间戳限制。有了它们,您将在以下位置看到来自内核的类似消息dmesg

xfs filesystem being mounted at <path> supports timestamps until 2038 

根据用于创建文件系统的工具版本,即使是 XFS V5 文件系统也可能会导致此警告。但在 XFS 版本 5 上,可以通过xfs_admin -O bigtime=1在卸载且无错误的情况下在文件系统上运行来修复此问题,无需备份/恢复周期。我最近在从 Debian 11 升级到 12 后的 Debian 系统上完成了这项工作 - 操作快速且无故障。

相关内容