Solaris 10 8/07 安装指南:自定义 JumpStart 和高级安装

升级 Solaris 操作系统

升级:错误消息


No upgradable disks(没有可升级磁盘)

原因:

/etc/vfstab 文件中的交换项导致升级失败。

解决方法:

注释掉 /etc/vfstab 文件中的下列行:

  • 不升级磁盘上的所有交换文件和片

  • 不再存在的交换文件

  • 任何未使用的交换片


usr/bin/bzcat not found(未找到 usr/bin/bzcat)

原因:

Solaris Live Upgrade 因需要修补程序簇而失败。

解决方法:

安装 Solaris Live Upgrade 需要修补程序。请访问 http://sunsolve.sun.com,以确保具有最近更新的修补程序列表。在 SunSolve Web 站点上搜索信息文档 72099。


Upgradeable Solaris root devices were found, however, no suitable partitions to hold the Solaris install software were found. Upgrading using the Solaris Installer is not possible. It might be possible to upgrade using the Solaris Software 1 CDROM.(找到可升级的 Solaris 根设备,但没有找到合适的用于保存 Solaris 安装软件的分区。无法使用 Solaris 安装程序升级。可以使用 Solaris Software 1 CDROM 进行升级。)(仅限于基于 x86 的系统)

原因:

由于没有足够空间,因此无法使用 Solaris Software - 1 CD 升级。

解决方法:

要进行升级,可以创建大于或等于 512 MB 的交换片,或者使用另一种升级方法,例如,通过 Solaris Operating System DVD 上的 Solaris 安装程序、网络安装映像或 JumpStart。


ERROR: Could not select locale (错误:无法选择语言环境)(仅限于基于 x86 的系统

原因:

通过使用 pfinstall -D 命令测试 JumpStart 配置文件时,模拟运行测试 (dry run test) 在以下情况下会失败:

  • 该配置文件包含 locale 关键字。

  • 所测试的发行版包含 GRUB 软件。从 Solaris 10 1/06 发行版开始,GRUB 引导装载器通过 GRUB 菜单简化了对安装在系统上的不同操作系统的引导。

引入 GRUB 软件后,会压缩 miniroot。软件无法再从压缩的 miniroot 中找到语言环境列表。miniroot 是可能具有的最小的 Solaris 根 (/) 文件系统,可以在 Solaris 安装介质中找到它。

解决方法:

执行以下步骤。请使用以下值。

  • MEDIA_DIR/cdrom/cdrom0/

  • MINIROOT_DIR$MEDIA_DIR/Solaris_10/Tools/Boot

  • MINIROOT_ARCHIVE$MEDIA_DIR/boot/x86.miniroot

  • TEMP_FILE_NAME/tmp/test

  1. 成为超级用户或承担等效角色。

    角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”

  2. 解压缩 miniroot 归档文件。


    # /usr/bin/gzcat $MINIROOT_ARCHIVE > $TEMP_FILE_NAME
    
  3. 使用 lofiadm 命令创建 miniroot 设备。


    # LOFI_DEVICE=/usr/sbin/lofiadm -a $TEMP_FILE_NAME
    # echo $LOFI_DEVICE
    /dev/lofi/1
  4. 使用 lofi 命令在 Miniroot 目录下挂载 miniroot。


    # /usr/sbin/mount -F ufs  $LOFI_DEVICE  $MINIROOT_DIR
    
  5. 测试配置文件。


    # /usr/sbin/install.d/pfinstall -D -c $MEDIA_DIR $path-to-jumpstart_profile
    
  6. 测试完成后,卸载 lofi 设备。


    # umount  $LOFI_DEVICE
    
  7. 删除 lofi 设备。


    # lofiadm -d $TEMP_FILE_NAME
    

升级:一般问题


即使存在一个可在系统上升级的 Solaris 软件版本,也不显示升级选项。

原因:

原因 1:/var/sadm 目录是符号链接,或是从另一个文件系统挂载的。

解决方法:

原因 1:/var/sadm 目录移动到根 (/) 或 /var 文件系统中。

原因:

原因 2:缺少 /var/sadm/softinfo/INST_RELEASE 文件。

解决方法:

原因 2:使用以下模板创建新的 INST_RELEASE 文件:

OS=Solaris
VERSION=x 
REV=0
x

是系统上的 Solaris 软件的版本

原因:

原因 3:/var/sadm/softinfo 中缺少 SUNWusr。

解决方法:

解决方案 3:需要执行初始安装。Solaris 软件是不可升级的。


无法关闭或初始化 md 驱动程序

解决方法:

请按照以下说明操作:


因 Solaris 安装程序无法挂载文件系统而导致升级失败。

原因:

在升级期间,该脚本会在要升级的根 (/) 文件系统中,尝试挂载系统的 /etc/vfstab 文件中列出的所有文件系统。如果安装脚本无法挂载文件系统,则它将失败并退出。

解决方法:

确保系统的 /etc/vfstab 文件中的所有文件系统都可进行挂载。在 /etc/vfstab 文件中注释掉任何无法挂载或可能引起问题的文件系统,以便 Solaris 安装程序在升级过程中不会尝试挂载它们。不能注释掉那些包含要升级软件的基于系统的文件系统(例如 /usr)。


升级失败

描述:

系统没有足够的升级空间。

原因:

有关空间问题,请参阅《Solaris 10 8/07 安装指南:规划安装和升级》中的“通过重新分配磁盘空间进行升级”,查明是否能在不使用自动布局重新分配空间的情况下修复此问题。


升级 RAID–1 卷根 (/) 文件系统时遇到问题

解决方法:

如果在使用作为根 (/) 文件系统的 Solaris 卷管理器 RAID-1 卷进行升级时遇到问题 ,请参见《Solaris Volume Manager 管理指南》中的第 25  章 “对 Solaris Volume Manager 进行疑难解答(任务)”

Procedure在升级失败后继续进行升级

升级失败,系统无法进行软引导。失败是由于您无法控制的原因(例如断电或网络连接失败)造成的。

  1. 从 Solaris Operating System DVD、Solaris Software - 1 CD 或网络重新引导系统。

  2. 选择安装的升级选项。

    Solaris 安装程序确定系统是否已经部分升级并继续进行升级。

x86: 使用 GRUB 时,Solaris Live Upgrade 出现问题

在基于 x86 的系统上使用 Solaris Live Upgrade 和 GRUB 引导装载器时,可能会发生以下错误。


错误:介质产品工具安装目录 path-to-installation-directory 不存在。


错误:介质目录不包含操作系统升级映像。

描述:

当使用 luupgrade 命令升级新的引导环境时可以看到这些错误消息。

原因:

使用的是旧版本的 Solaris Live Upgrade。您在系统上安装的 Solaris Live Upgrade 软件包与介质以及介质上的软件包发行版不兼容。

解决方法:

确保所使用的 Solaris Live Upgrade 软件包的版本始终为将要升级到的版本。

示例:

在以下示例中,错误消息表示系统上的 Solaris Live Upgrade 软件包与介质上的软件包的版本不同。


# luupgrade -u -n s10u1 -s /mnt
	Validating the contents of the media </mnt>.
	The media is a standard Solaris media.
	ERROR: The media product tools installation directory 
</mnt/Solaris_10/Tools/Boot/usr/sbin/install.d/install_config> does 
not exist.
	ERROR: The media </mnt> does not contain an operating system upgrade 
image.

错误:找不到或不可执行:</sbin/biosdev>。


错误:Solaris Live Upgrade 所需的一个或多个修补程序未安装。

原因:

Solaris Live Upgrade 所需的一个或多个修补程序未安装在系统上。请注意该错误消息没有捕捉到所有缺少的修补程序。

解决方法:

使用 Solaris Live Upgrade 之前,始终安装所有必需的修补程序。请访问 http://sunsolve.sun.com,以确保具有最近更新的修补程序列表。在 SunSolve Web 站点上搜索信息文档 72099。


错误:设备映射命令 </sbin/biosdev> 失败。请重新引导,然后重试。

原因:

原因 1:由于以前的管理任务,Solaris Live Upgrade 无法映射设备。

解决方法:

原因 1:重新引导系统,然后使用 Solaris Live Upgrade 重试

原因:

原因 2:如果重新引导系统后出现相同的错误消息,表明您有两个或多个相同的磁盘。设备映射命令无法区分这些磁盘。

解决方法:

原因 2:在这些磁盘中的某一个磁盘上创建一个新的伪 fdisk 分区。请参见 fdisk(1M) 手册页。然后重新引导系统。


无法删除包含 GRUB 菜单的引导环境

原因:

Solaris Live Upgrade 强加了一条限制,即如果引导环境包含 GRUB 菜单,则无法删除该引导环境。

解决方法:

使用 lumake(1M)luupgrade(1M) 命令重新使用该引导环境。


无意中重新创建了包含 GRUB 菜单的文件系统。但是,磁盘具有和以前相同的片。例如,磁盘没有重新分片。

原因:

包含 GRUB 菜单的文件系统对保持系统的可引导性非常重要。Solaris Live Upgrade 命令不会破坏 GRUB 菜单。但是,如果使用 Solaris Live Upgrade 命令之外的命令无意中重新创建或破坏了包含 GRUB 菜单的文件系统,恢复软件会尝试重新安装 GRUB 菜单。在下一次重新引导时恢复软件会将 GRUB 菜单放回到相同的文件系统中。例如,您可能在文件系统上使用了 newfsmkfs 命令,并无意中破坏了 GRUB 菜单。要正确恢复 GRUB 菜单,片必须符合以下条件:

  • 包含一个可挂载的文件系统

  • 保留片以前所驻留的同一 Solaris Live Upgrade 引导环境的一部分

重新引导系统之前,对片进行一些必要的更正操作。

解决方法:

重新引导系统。会自动安装 GRUB 菜单的副本。


GRUB 菜单的 menu.lst 文件被无意中删除。

解决方法:

重新引导系统。会自动安装 GRUB 菜单的副本。

Procedure在运行 Veritas VxVm 时使用 Solaris Live Upgrade 进行升级,系统将发出警告音

如果在升级并运行 Veritas VxVM 的同时使用 Solaris Live Upgrade,除非您使用以下过程进行升级,否则系统在重新引导时将发出警告音。如果软件包不符合 Solaris 高级打包指南,将出现问题。

  1. 成为超级用户或承担等效角色。

    角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”

  2. 创建非活动的引导环境。请参见《Solaris 10 8/07 安装指南:Solaris Live Upgrade 和升级规划》中的“创建新的引导环境”

  3. 在升级非活动的引导环境之前,必须禁用非活动的引导环境中的现有 Veritas 软件。

    1. 挂载非活动的引导环境。


      # lumount inactive_boot_environment_name mount_point
      

      例如:


      # lumount solaris8 /mnt 
      
    2. 转到包含 vfstab 的目录,例如:


      # cd /mnt/etc
      
    3. 生成非活动引导环境的 vfstab 文件的副本,例如:


      # cp vfstab vfstab.501
      
    4. 在复制的 vfstab 中注释掉所有 Veritas 文件系统项,例如:


      #  sed  '/vx\/dsk/s/^/#/g'  < vfstab >  vfstab.novxfs
      

      将每行的第一个字符更改为 #,这使该行成为注释行。请注意,该注释行不同于系统文件注释行。

    5. 复制更改后的 vfstab 文件,例如:


      # cp vfstab.novxfs vfstab
      
    6. 转到非活动引导环境的系统文件所在的目录,例如:


      # cd /mnt/etc
      
    7. 生成非活动的引导环境的系统文件副本,例如:


      # cp system system.501
      
    8. 注释掉所有包含 drv/vx 的 "forceload:" 项。


      # sed '/forceload:   drv\/vx/s/^/*/' <system> system.novxfs
      

      将每行的第一个字符更改为 *,这使该行成为注释行。请注意,该注释行不同于 vfstab 文件注释行。

    9. 创建 Veritas install-db 文件,例如:


      # touch vx/reconfig.d/state.d/install-db
      
    10. 卸载非活动的引导环境。


      # luumount inactive_boot_environment_name 
      
  4. 升级非活动的引导环境。请参见《Solaris 10 8/07 安装指南:Solaris Live Upgrade 和升级规划》中的第 5  章 “使用 Solaris Live Upgrade 进行升级(任务)”

  5. 激活非活动的引导环境。请参见《Solaris 10 8/07 安装指南:Solaris Live Upgrade 和升级规划》中的“激活引导环境”

  6. 关闭系统。


    # init 0
    
  7. 在单用户模式下引导非活动的引导环境:


    OK boot -s
    

    将显示若干个包含 "vxvm" 或 "VXVM" 的消息和错误消息,可以忽略这些消息。非活动的引导环境成为活动的引导环境。

  8. 升级 Veritas。

    1. 将 Veritas VRTSvmsa 软件包从系统中删除,例如:


      # pkgrm VRTSvmsa
      
    2. 转到 Veritas 软件包所在的目录。


      # cd /location_of_Veritas_software
      
    3. 将最新的 Veritas 软件包添加到系统中:


      #  pkgadd -d `pwd` VRTSvxvm VRTSvmsa VRTSvmdoc VRTSvmman VRTSvmdev
      
  9. 恢复初始的 vfstab 和系统文件:


    # cp /etc/vfstab.original /etc/vfstab
    # cp /etc/system.original /etc/system
    
  10. 重新引导系统。


    # init 6
    

x86: 缺省情况下不会在不包含现有服务分区的系统上创建服务分区

如果在当前不包含服务分区或诊断分区的系统上安装 Solaris 10 8/07 OS,则在缺省情况下,安装程序可能不会创建服务分区。如果要在同一个磁盘上包含服务分区和 Solaris 分区,则必须在安装 Solaris 10 8/07 OS 之前重新创建服务分区。

如果您将 Solaris 8 2/02 OS 安装在具有服务分区的系统上,则安装程序可能不会保留服务分区。如果您没有手动编辑 fdisk 引导分区布局以保留服务分区,安装程序会在安装过程中删除服务分区。


注 –

如果安装 Solaris 8 2/02 OS 时未特别地保留服务分区,则可能不能重新创建服务分区并升级到 Solaris 10 8/07 OS。


如果要使包含 Solaris 分区的磁盘包含服务分区,请选择以下解决方法之一。

Procedure从网络安装映像或 Solaris Operating System DVD 安装软件

要通过网络安装映像安装软件或通过网络从 Solaris Operating System DVD 进行安装,请执行以下步骤。

  1. 删除磁盘中的内容。

  2. 安装前,使用诊断 CD 为系统创建服务分区。

    有关如何创建服务分区的信息,请参见您的硬件文档。

  3. 通过网络引导系统。

    将显示“自定义 fdisk 分区”屏幕。

  4. 要装入缺省引导磁盘分区布局,请单击“缺省”。

    安装程序将保留服务分区并创建 Solaris 分区。

Procedure从 Solaris Software - 1 CD 或从网络安装映像安装

要使用 Solaris 安装程序通过 Solaris Software - 1 CD 进行安装,或通过引导服务器上的网络安装映像进行安装,请执行以下步骤。

  1. 删除磁盘中的内容。

  2. 安装前,使用诊断 CD 为系统创建服务分区。

    有关如何创建服务分区的信息,请参见您的硬件文档。

  3. 安装程序将提示您选择创建 Solaris 分区的方法。

  4. 引导系统。

  5. 选择“将剩余磁盘空间用于 Solaris 分区”选项。

    安装程序将保留服务分区并创建 Solaris 分区。

  6. 完成安装。