跳过导航链接 | |
退出打印视图 | |
![]() |
Oracle Solaris 10 8/11 安装指南:Solaris Live Upgrade 和升级规划 Oracle Solaris 10 8/11 Information Library (简体中文) |
第 1 部分使用 Solaris Live Upgrade 进行升级
4. 使用 Solaris Live Upgrade 创建引导环境(任务)
5. 使用 Solaris Live Upgrade 进行升级(任务)
7. 维护 Solaris Live Upgrade 引导环境(任务)
8. 在安装了非全局区域的系统中升级 Oracle Solaris OS
10. Solaris Live Upgrade(命令参考)
第 2 部分使用 Solaris Live Upgrade 升级和迁移到 ZFS 根池
11. Solaris Live Upgrade 和 ZFS(概述)
12. 针对 ZFS 的 Solaris Live Upgrade(规划)
如果您已经有一个 ZFS 根池,此时要在新的根池中创建新的 ZFS 引导环境,可以按照以下过程中的步骤进行操作。创建非活动引导环境后,可在方便的时候升级并激活新的引导环境。需要使用 -p 选项来指明放置新引导环境的位置。现有 ZFS 根池必须存在且位于一个单独的片上才能引导和升级。
最新的软件包以及修补程序可确保您具有该发行版的所有最新错误修复和新增功能。在继续创建新的引导环境之前,请确保安装了所有与您的系统相关的修补程序。
以下子步骤描述了 My Oracle Support 上的知识文档 1004881.1-Solaris Live Upgrade Software Patch Requirements(以前为 206844)中的步骤。
注 - 使用 Solaris Live Upgrade 创建新的 ZFS 引导环境至少需要安装 Solaris 10 10/08 发行版。以前的发行版中的 ZFS 和 Solaris Live Upgrade 软件不能执行这些任务。
三个 Solaris Live Upgrade 软件包(SUNWluu、SUNWlur 和 SUNWlucfg)组成了使用 Solaris Live Upgrade 进行升级所需的软件。这些软件包包含现有的软件、新增功能和错误修复。如果在使用 Solaris Live Upgrade 前未删除现有软件包并在系统上安装新的软件包,则升级到目标发行版时将失败。从 Solaris 10 8/07 发行版开始,新增了 SUMWlucfg 软件包。如果您要从 Solaris 10 8/07 之前的发行版使用 Solaris Live Upgrade 软件包,则不需要删除此软件包。
注 - 从 Solaris 10 8/07 发行版开始,新增了 SUMWlucfg 软件包。如果您使用的是以前发行版的 Solaris Live Upgrade 软件包,则不需要删除此软件包。
# pkgrm SUNWlucfg SUNWluu SUNWlur
通过访问 My Oracle Support 确保您具有最近更新的修补程序列表。在 My Oracle Support 上搜索知识文档 1004881.1-Solaris 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-Solaris Live Upgrade Software Patch Requirements(以前为 206844)中指定的顺序应用修补程序。
根据需要重新引导系统。某些修补程序需要重新引导后才能生效。
仅适用于 x86: 需要重新引导系统,否则 Solaris Live Upgrade 将会失败。
# init 6
您现在有了成功迁移所需的软件包和修补程序。
ZFS 根池必须位于单个片上才能引导和升级。
# zpool create rpool2 c0t1d0s5
新 ZFS 根池的名称。
指定将 rpool2 置于可引导的片 c0t1d0s5 上。
有关创建新的根池的信息,请参见《Oracle Solaris ZFS 管理指南》。
# lucreate [-c zfsBE] -n new-zfsBE -p rpool2
为当前 ZFS 引导环境指定名称 zfsBE。
为要创建的引导环境指定名称。名称在系统中必须是唯一的。
将新创建的 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 rpool2 9.29G 57.6G 20K /rpool2 rpool2/ROOT/ 5.38G 57.6G 18K /rpool2/ROOT rpool2/ROOT/new-zfsBE 5.38G 57.6G 551M /tmp/.new.luupdall.109859 rpool2/dump 3.99G - 3.99G - rpool2/swap 3.99G - 3.99G - rpool 9.29G 57.6G 20K /.new.lulib.rs.109262 rpool/ROOT 5.46G 57.6G 18K legacy rpool/ROOT/zfsBE 5.46G 57.6G 551M rpool/dump 3.99G - 3.99G - rpool/swap 3.99G - 3.99G -
现在可以升级并激活新的引导环境了。请参见示例 13-3。
示例 13-3 在新的根池上创建引导环境
在本示例中,在单独的片 c0t2s0s5 上创建了新的 ZFS 根池 rpool。lucreate 命令将创建新的 ZFS 引导环境 new-zfsBE。-p 选择是必需的,因为要在不同的根池中创建引导环境。
# zpool create rpool C0t1d0s5 # zfs list NAME USED AVAIL REFER MOUNTPOINT rpool2 9.29G 57.6G 20K /rpool2 rpool 9.29G 57.6G 20K /.new.lulib.rs.109262 rpool/ROOT 5.46G 57.6G 18K legacy rpool/ROOT/zfsBE 5.46G 57.6G 551M rpool/dump 3.99G - 3.99G - rpool/swap 3.99G - 3.99G - # lucreate -c rpool -n new-zfsBE -p rpool2 Analyzing system configuration. Current boot environment is named <rpool>. Creating initial configuration for primary boot environment <rpool>. The device </dev/dsk/c0t0d0> is not a root device for any boot environment; cannot get BE ID. PBE configuration successful: PBE name <rpool> PBE Boot Device </dev/dsk/rpool>. Comparing source boot environment <rpool> file systems with the file system(s) you specified for the new boot environment. Determining which file systems should be in the new boot environment. Updating boot environment description database on all BEs. Updating system configuration files. The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID. Creating configuration for boot environment <new-zfsBE>. Source boot environment is <rpool>. Creating boot environment <new-zfsBE>. Creating file systems on boot environment <new-zfsBE>. Creating <zfs> file system for </> in zone <global> on <rpool2/ROOT/new-zfsBE>. Populating file systems on boot environment <new-zfsBE>. Checking selection integrity. Integrity check OK. Populating contents of mount point </>. Copying. Creating shared file system mount points. Creating compare databases for boot environment <zfsBE>. Creating compare database for file system </>. Making boot environment <new-zfsBE> bootable. Creating boot_archive for /.alt.tmp.b-cBc.mnt updating /.alt.tmp.b-cBc.mnt/platform/sun4u/boot_archive 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 OnReboot Delete Status ------------------------------------------------------------------------ zfsBE yes yes yes no - new-zfsBE yes no no yes - # zfs list NAME USED AVAIL REFER MOUNTPOINT rpool2 9.29G 57.6G 20K /rpool2 rpool2/ROOT/ 5.38G 57.6G 18K /rpool2/ROOT rpool2/ROOT/new-zfsBE 5.38G 57.6G 551M /tmp/.new.luupdall.109859 rpool2/dump 3.99G - 3.99G - rpool2/swap 3.99G - 3.99G - rpool 9.29G 57.6G 20K /.new.lulib.rs.109262 rpool/ROOT 5.46G 57.6G 18K legacy rpool/ROOT/zfsBE 5.46G 57.6G 551M rpool/dump 3.99G - 3.99G - rpool/swap 3.99G - 3.99G -