Oracle Solaris ZFS 管理指南

Procedure如何升级或修补 ZFS 上具有区域根的 ZFS 根文件系统 (Solaris 10 10/08)

当您需要升级或修补 ZFS 上具有区域根的 ZFS 根文件系统时,请使用此过程。这些更新可以是对系统进行升级,也可以是应用一些修补程序。

在后面的步骤中,newBE 为升级或修补的引导环境的示例名称。

  1. 创建引导环境以进行升级或修补。


    # lucreate -n newBE
    

    将克隆现有引导环境,包括所有区域。将为原始引导环境中的每个数据集创建一个数据集。将在与当前根池相同的池中创建新数据集。

  2. 选择以下操作之一来升级系统或将修补程序应用到新引导环境:

    • 升级系统。


      # luupgrade -u -n newBE -s /net/install/export/s10u7/latest
      

      其中 -s 选项指定 Solaris 安装介质的位置。

    • 将修补程序应用到新引导环境。


       # luupgrade -t -n newBE -t -s /patchdir 139147-02 157347-14
      
  3. 激活新引导环境。


    # luactivate newBE
    
  4. 从新激活的引导环境引导。


    # init 6
    
  5. 解决任何潜在的挂载点问题。

    由于 Oracle Solaris Live Upgrade 功能中的错误,非活动引导环境可能无法引导,因为引导环境中的 ZFS 数据集或区域的 ZFS 数据集有无效的挂载点。

    1. 查看 zfs list 输出。

      查找不正确的临时挂载点。例如:


      # zfs list -r -o name,mountpoint rpool/ROOT/newBE
      
      NAME                               MOUNTPOINT
      rpool/ROOT/newBE                   /.alt.tmp.b-VP.mnt/
      rpool/ROOT/newBE/zones             /.alt.tmp.b-VP.mnt/zones
      rpool/ROOT/newBE/zones/zonerootA   /.alt.tmp.b-VP.mnt/zones/zonerootA

      根 ZFS BE (rpool/ROOT/newBE) 的挂载点应为 /

    2. 重置 ZFS BE 及其数据集的挂载点。

      例如:


      # zfs inherit -r mountpoint rpool/ROOT/newBE
      # zfs set mountpoint=/ rpool/ROOT/newBE
      
    3. 重新引导系统。

      当提供选项来引导特定的引导环境时(在 GRUB 菜单中或 OpenBoot PROM 提示符下),请选择刚刚更正其挂载点的引导环境。