背景
我有一个系统,我在一个系统上生成 XFS 文件系统映像,然后在另一个系统中使用该映像。目前两者都使用 CentOS7(分别为 7.9 和 7.8)。这工作可靠。
然而,为了一劳永逸地摆脱 CentOS,我逐渐转向 RHEL(和/或 Alma Linux)。
在过渡期间,“生成器”系统将迁移到 RHEL,但我还无法更改“消费者”。
问题
如果我天真地尝试在 CentOS7 系统上挂载 XFS 文件系统(由 RHEL9 生成),我会收到一条错误消息:
root@localhost updateFs]# mount -o loop ./fs.img /tmp/fs2/
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so.
[root@localhost updateFs]# dmesg -H | tail -4
[May 5 14:25] XFS (loop0): Superblock has unknown read-only compatible features (0x4) enabled.
[ +0.010671] XFS (loop0): Attempted to mount read-only compatible filesystem read-write.
[ +0.000006] XFS (loop0): Filesystem can only be safely mounted read only.
[ +0.000580] XFS (loop0): SB validate failed with error -22.
如果我尝试以只读方式安装它,看起来没问题。但我需要能够写信给它。
我可以在任何一方做一些事情,将文件系统“降级”到更兼容的版本吗?
版本
系统 | 分发 | 核心 | xfsprogs |
---|---|---|---|
发电机 | RHEL9.1 | 5.14.0-162.2.1-el9 | 5.14.2-1.el9.x86_64 |
消费者 | CentOS7.8 | 3.10.0-1127.el7 | 4.5.0-20.el7.x86_64 |
答案1
这似乎是重新链接功能标志,并且这样的文件系统只能以只读方式安装在早于此(恕我直言,非常有用)文件系统功能的内核上,这是有意义的。
在创建文件系统时使用该功能后,没有工具可以禁用该功能。您将必须创建一个新文件系统并复制旧文件系统的内容。
mkfs.xfs -m reflink=0 -f yourfilesystemimage