跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 10 1/13 安装指南:Live Upgrade 和升级规划 Oracle Solaris 10 1/13 Information Library (简体中文) |
1. 在何处查找 Oracle Solaris 安装规划信息
8. 在安装了非全局区域的系统中升级 Oracle Solaris OS
第 2 部分使用 Live Upgrade 升级和迁移到 ZFS 根池
如果您已经有一个 ZFS 根池,此时要在新的根池中创建新的 ZFS 引导环境,可以按照以下过程中的步骤进行操作。创建非活动引导环境后,可在方便的时候升级并激活新的引导环境。需要使用 -p 选项来指明放置新引导环境的位置。现有 ZFS 根池必须存在且位于一个单独的分片上才能引导和升级。
最新的软件包以及修补程序可确保您具有该发行版的所有最新错误修复和新增功能。在继续创建新的引导环境之前,请确保安装了所有与您的系统相关的修补程序。
以下子步骤描述了 My Oracle Support 上的知识文档 1004881.1-Live Upgrade Software Patch Requirements(以前为 206844)中的步骤。
注 - 使用 Live Upgrade 创建新的 ZFS 引导环境至少需要安装 Solaris 10 10/08 发行版。以前的发行版中的 ZFS 和 Live Upgrade 软件不能执行这些任务。
注 - 角色包含授权和具有特权的命令。有关角色的更多信息,请参见《System Administration Guide: Security Services》中的"Configuring RBAC (Task Map)"。
三个 Live Upgrade 软件包(SUNWluu、SUNWlur 和 SUNWlucfg)组成了使用 Live Upgrade 进行升级所需的软件。这些软件包包含现有的软件、新增功能和错误修复。如果在使用 Live Upgrade 前未删除现有软件包并在系统上安装新的软件包,则升级到目标发行版时将失败。从 Solaris 10 8/07 发行版开始,新增了 SUMWlucfg 软件包。如果您要从 Solaris 10 8/07 之前的发行版使用 Live Upgrade 软件包,则不需要删除此软件包。
注 - 从 Solaris 10 8/07 发行版开始,新增了 SUMWlucfg 软件包。如果您使用的是以前发行版的 Live Upgrade 软件包,则不需要删除此软件包。
# pkgrm SUNWlucfg SUNWluu SUNWlur
通过访问 My Oracle Support 确保您具有最近更新的修补程序列表。在 My Oracle Support 上搜索知识文档 1004881.1-Live Upgrade Software Patch Requirements(以前为 206844)。
如果您要将修补程序存储在本地磁盘上,请创建一个目录(如 /var/tmp/lupatches)并将这些修补程序下载到该目录中。
从 My Oracle Support Web 站点获取修补程序列表。
转至修补程序目录,如本示例中所示。
# cd /var/tmp/lupatches
使用 patchadd 命令安装修补程序。
# patchadd -M path-to-patches patch_id patch_id
path-to-patches 是修补程序目录的路径,例如 /var/tmp/lupatches。patch_id 是修补程序号。用空格分隔多个修补程序名称。
注 - 需要按 My Oracle Support 上的知识文档 1004881.1-Live Upgrade Software Patch Requirements(以前为 206844)中指定的顺序应用修补程序。
根据需要重新引导系统。某些修补程序需要重新引导后才能生效。
仅适用于 x86: 需要重新引导系统,否则 Live Upgrade 将会失败。
# init 6
您现在有了成功迁移所需的软件包和修补程序。
ZFS 根池必须位于单个分片上才能引导和升级。
# zpool create rpool2 c0t1d0s5
新 ZFS 根池的名称。
指定将 rpool2 置于可引导的分片 c0t1d0s5 上。
有关创建新的根池的信息,请参见《Oracle Solaris ZFS 管理指南》。
# lucreate [-c zfsBE] -n new-zfsBE -p rpool2
当前 ZFS 引导环境的名称。
要创建的引导环境的名称。名称在系统中必须是唯一的。
将新创建的 ZFS 根引导环境置于在 rpool2 中定义的 ZFS 根池中。
创建新的 ZFS 引导环境可能需要一段时间。文件系统数据将被复制到新的 ZFS 根池中。创建非活动引导环境后,可以使用 luupgrade 或 luactivate 命令升级或激活新的 ZFS 引导环境。
lustatus 命令会报告引导环境的创建是否已完成以及引导环境是否可以引导。
# lustatus boot environment Is Active Active Can Copy Name Complete Now OnReboot Delete Status ------------------------------------------------------------------------ zfsBE yes yes yes no - new-zfsBE yes no no yes -
以下示例显示系统上所有数据集的名称。针对新引导环境列出的挂载点是临时的,直到执行 luactivate 命令为止。新引导环境与 rpool2 ZFS 引导环境共享卷 rpool2/dump 和 rpool2/swap。
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 11.4G 2.95G 31K /rpool rpool/ROOT 4.34G 2.95G 31K legacy rpool/ROOT/new-zfsBE 4.34G 2.95G 4.34G / rpool/dump 2.06G 5.02G 16K - rpool/swap 5.04G 7.99G 16K -
现在可以升级并激活新的引导环境了。
示例 12-3 在新的根池上创建引导环境
在本示例中,在单独的分片 c0t1s0s5 上创建了新的 ZFS 根池 newPool。lucreate 命令将创建新的 ZFS 引导环境 new-zfsbe。-p 选项是必需的,因为要在不同的根池中创建引导环境。
# zpool create newPool C0t2d0s5 # zfs list NAME USED AVAIL REFER MOUNTPOINT newPool 92.5K 18.7G 31K /newPool rpool 11.4G 2.95G 31K /rpool rpool/ROOT 4.34G 2.95G 31K legacy rpool/ROOT/zfsBE 4.34G 2.95G 4.34G / rpool/dump 2.06G 5.02G 16K - rpool/swap 5.04G 7.99G 16K - # lucreate -c c0t1d0s5 -n new-zfsbe -p newPool Checking GRUB menu... Analyzing system configuration. Updating boot environment description database on all BEs. Updating system configuration files. The device </dev/dsk/c1t1d0s0> is not a root device for any boot environment; cannot get BE ID. Creating configuration for boot environment <new-zfsbe>. Source boot environment is <c0t1d0s5>. Creating file systems on boot environment <new-zfsbe>. Creating <zfs> file system for </> in zone <global> on <newPool/ROOT/new-zfsbe>. Populating file systems on boot environment <new-zfsbe>. Analyzing zones. Mounting ABE <new-zfsbe>. Generating file list. Copying data from PBE <c0t1d0s5> to ABE <new-zfsbe>. 100% of filenames transferred Finalizing ABE. Fixing zonepaths in ABE. Unmounting ABE <new-zfsbe>. Fixing properties on ZFS datasets in ABE. Reverting state of zones in PBE <c0t1d0s5>. Making boot environment <new-zfsbe> bootable. Updating bootenv.rc on ABE <new-zfsbe>. Saving existing file </boot/grub/menu.lst> in top level dataset for BE <new-zfsBE> as <mount-point>//boot/grub/menu.lst.prev. File </boot/grub/menu.lst> propagation successful Copied GRUB menu from PBE to ABE No entry for BE <new-zfsbe> in GRUB menu Population of boot environment <new-zfsbe> successful. Creation of boot environment <new-zfsbe> successful. # lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- c0t0d0 yes yes yes no - zfsBE yes no no yes - new-zfsbe yes no no yes - # zfs list NAME USED AVAIL REFER MOUNTPOINT newPool 7.15G 11.6G 36K /newPool newPool/ROOT 4.05G 11.6G 31K legacy newPool/ROOT/new-zfsbe 4.05G 11.6G 4.05G / newPool/dump 1.03G 12.6G 16K - newPool/swap 2.06G 13.6G 16K - rpool 11.4G 2.95G 31K /rpool rpool/ROOT 4.34G 2.95G 31K legacy rpool/ROOT/zfsBE 4.34G 2.95G 4.34G / rpool/dump 2.06G 5.02G 16K - rpool/swap 5.04G 7.99G 16K -