此过程解释如何将安装了区域的 UFS 根文件系统迁移到 ZFS 根文件系统,以及如何升级或修补的 ZFS 区域根配置。
在后面的步骤中,示例池名称为 rpool,活动引导环境的示例名称为 s10BE*。
如果系统正在运行先前的 Solaris 10 发行版,请将其升级到 Solaris 10 10/08 发行版。
有关对运行 Solaris 10 发行版的系统进行升级的更多信息,请参见《Oracle Solaris 10 9/10 安装指南:Solaris Live 升级和升级规划》。
创建根池。
# zpool create rpool mirror c0t1d0 c1t1d0 |
有关根池要求的信息,请参见ZFS 支持对于 Oracle Solaris 安装和 Oracle Solaris Live Upgrade 的要求。
确认已引导 UFS 环境中的区域。
创建新 ZFS 引导环境。
# lucreate -n s10BE2 -p rpool |
此命令将为新引导环境在根池中建立数据集并将当前引导环境(包括区域)复制到这些数据集。
激活新 ZFS 引导环境。
# luactivate s10BE2 |
现在,系统正在运行 ZFS 根文件系统,但 UFS 上的区域根仍在 UFS 根文件系统中。需要执行后续步骤将 UFS 区域完全迁移到支持的 ZFS 配置。
重新引导系统。
# init 6 |
将区域迁移到 ZFS BE。
解决任何潜在的挂载点问题。
由于 Oracle Solaris Live Upgrade 中的错误,非活动引导环境可能无法引导,因为引导环境中的 ZFS 数据集或区域的 ZFS 数据集有无效的挂载点。
查看 zfs list 输出。
查找不正确的临时挂载点。例如:
# zfs list -r -o name,mountpoint rpool/ROOT/s10u6 NAME MOUNTPOINT rpool/ROOT/s10u6 /.alt.tmp.b-VP.mnt/ rpool/ROOT/s10u6/zones /.alt.tmp.b-VP.mnt//zones rpool/ROOT/s10u6/zones/zonerootA /.alt.tmp.b-VP.mnt/zones/zonerootA |
根 ZFS BE (rpool/ROOT/s10u6) 的挂载点应为 /。
重置 ZFS BE 及其数据集的挂载点。
例如:
# zfs inherit -r mountpoint rpool/ROOT/s10u6 # zfs set mountpoint=/ rpool/ROOT/s10u6 |
重新引导系统。
当提供选项来引导特定的引导环境时(在 GRUB 菜单中或 OpenBoot PROM 提示符下),请选择刚刚更正其挂载点的引导环境。