可以使用影子迁移功能迁移文件系统,如下所述:
本地或远程 ZFS 文件系统到目标 ZFS 文件系统
本地或远程 UFS 文件系统到目标 ZFS 文件系统
影子迁移是一个推送要迁移的数据的过程:
创建一个空的 ZFS 文件系统。
在要用作目标(或影子)文件系统的空 ZFS 文件系统上设置 shadow 属性,以指向要迁移的文件系统。
数据从要迁移的文件系统复制到影子文件系统。
可以使用 shadow 属性 URI 按以下两种方式标识要迁移的文件系统:
shadow=file:///path-使用此语法迁移本地文件系统
shadow=nfs://host/path-使用此语法迁移 NFS 文件系统
在迁移文件系统时,请检查以下注意事项:
要迁移的文件系统必须设置为只读的。如果文件系统未设置为只读的,则可能不会迁移正在进行的更改。
目标文件系统必须完全为空。
如果在迁移过程中重新引导了系统,则在引导系统后迁移将继续执行。
在迁移完整个内容之前,会阻止访问未完全迁移的目录内容或未完全迁移的文件内容。
如果希望在 NFS 迁移过程中将 UID、GID 和 ACL 信息迁移到影子文件系统,请确保名称服务信息在本地系统和远程系统之间是可访问的。在通过 NFS 来完成大规模的数据迁移之前,可以考虑复制一部分要迁移的文件系统数据进行测试迁移,以便查看是否正确迁移了所有 ACL 信息。
通过 NFS 迁移文件系统数据,具体取决于您的网络带宽。请耐心等待。
可以使用 shadowstat 命令监视文件系统迁移,它提供以下数据:
BYTES XFRD 列标识已传输到影子文件系统的字节数。
BYTES LEFT 列不断变化,直到迁移几乎完成时为止。ZFS 在迁移开始时不标识需要迁移的数据量,因为此过程所用的时间可能太长。
可考虑使用 BYTES XFRD 和 ELAPSED TIME 信息来估算迁移过程所用时间。