我目前在 ESXi 上运行 Openindiana,并可通过 RDM 访问 ZFS 池中的 2 个磁盘。我以前在 Linux 上运行带有 ZFS 的 Ubuntu,但由于 ESXi 5.1 支持我的硬件,因此我想从该 ZFS 实现转移到本机 ZFS 系统。
我只是导出了我的 ZFS 池,在 USB 上安装了 ESXi,并在单独的 SSD 上安装了操作系统。将池导入 Openindiana 时没有遇到任何问题,但出于某种原因,Openindiana 想要升级我的池,这有点奇怪,因为它已经是 v28 了,但我还是继续升级了。
现在,几个月后,我想尝试一下 FreeBSD,看看是否存在任何性能差异,但此时我遇到了问题。FreeBSD 不会导入我的池,因为它声明它是一个较新的版本,我觉得这很奇怪,因为 Openindiana 和 FreeBSD 都使用 ZFS v5 和 zpool v28。
这是 FreeBSD 告诉我的:
#zpool import
pool: tank
id: <ID>
state: UNAVAIL
status: The pool is formatted using an incomaptible version.
action: The pool cannot be imported. Access the pool on a system running newer software, or recreate the pool from backup.
see: http://illumos.org/msg/ZFS-8000-A5
config:
tank UNAVAIL newer version
mirror-0 ONLINE
gptid/<ID> ONLINE
gptid/<ID> ONLINE
当然,如果我尝试将 zpool 导入到具有旧版本 ZFS 的系统,这种情况是可以预料到的,但由于 FreeBSD 和 Openindiana 中的版本据称相同,我不明白为什么会发生这种情况。我可以毫无问题地将 zpool 导入 Openindiana。你们认为这里的问题是什么?
谢谢!
答案1
首先,您能展示一下的输出zpool upgrade -v
吗?
然后看看:我可以相信 ZFS 在 Linux 和 FreeBSD 之间是一致的吗?
池版本是28,但是“功能标记” 是为了区分不同平台上 ZFS 变体之间的功能而实现的。
例如,zpool get all vol1
我的 Linux 系统上的一个 ZFS 上的结尾是:
vol1 feature@async_destroy enabled local
vol1 feature@empty_bpobj active local
vol1 feature@lz4_compress active local
我知道你正在尝试,但坚持使用一个平台一段时间还是有好处的。OpenIndiana 可能比你的 FreeBSD 目标更新。下面是完整列表版本和 zpool 兼容性。
答案2
正如 kworr 指出的那样,我正在安装不支持 zpool 5000 的 FreeBSD 9.1-RELEASE,这就是我无法迁移 ZFS 池的原因。