![如何将数据从 Linux 传输到 Solaris(OpenIndiana)?](https://linux22.com/image/548155/%E5%A6%82%E4%BD%95%E5%B0%86%E6%95%B0%E6%8D%AE%E4%BB%8E%20Linux%20%E4%BC%A0%E8%BE%93%E5%88%B0%20Solaris%EF%BC%88OpenIndiana%EF%BC%89%EF%BC%9F.png)
我目前已使用 Linux 软件 RAID5 (mdamd) 设置服务器。我在其上安装了 LVM,并在逻辑卷上安装了 ext3 文件系统。此设置在外部多驱动器机箱上进行了镜像。
我正在考虑切换到 Solaris(OpenIndiana)以使用 ZFS。
我知道我必须删除服务器上的信息,但是当我完成 OpenIndiana 的安装后,我应该以什么格式将其保存在外部机箱中以便将其传输回来?我考虑过将机箱上的驱动器格式化为 FAT32,但我想知道是否有更好的方法。
答案1
只是一个想法 - 如果整个系统当前已镜像到机箱上,您可以考虑不对其进行任何更改 - 在本地安装 Solaris 后,使用 Xen(Solaris 上的“xVM”)或某种其他类型的虚拟机主机(可能是 VirtualBox)将机箱数据作为 Linux VM 启动。然后 rsync 到新主机。
如果您重新格式化后丢失了 LVM,则无需使用 FAT32,因为 FAT32 不支持许多 EXT3 功能,因此可能会丢失宝贵的文件系统元数据。您只需做一点工作即可在 Solaris 上读取 EXT3 分区:
http://watters.ws/mediawiki/index.php/Mount_ext3_drives_in_Solaris
如果您最终使用 FAT32,那么创建 tarball 可能比直接复制数据更好。当然,这取决于数据。
答案2
我认为 ext3 是你的最佳选择。扩展支持在 OpenIndiana 中。
答案3
我不想再回来回答我自己的问题,特别是在我已经接受了别人的答案之后,但我希望处于我这种情况的其他人能够从我最终采取的路线(在我看来,更简单)中受益。
我只是安装了熔断器,并使用我的外部驱动器外壳创建了一个 zpool:
zpool create tankz raidz /dev/sd{f,g,h,i}
我将所有文件 rsync 到其中并使用 导出池zpool export tankz
。启动 OpenIndiana 后,我能够简单地zpool import tankz
。
我还没有完成安装,但所有文件都在那里。zpool status
提到池使用的是旧格式,某些功能可能被禁用,这完全有道理。我计划使用内部驱动器创建一个新池,然后使用 zfs send/receive 复制数据。