本章介绍与 Solaris 10 操作系统安装相关的问题。
在后续的 Solaris 10 发行版中修复了本章中的某些问题和错误。如果升级了 Solaris 软件,本章中的某些问题和错误可能不再适用。要查看哪些错误和问题不再适用于您特定的 Solaris 10 软件,请参阅附录 A,Solaris 10 操作系统中的集成错误表。
本节提供 Solaris 10 OS 的常规信息(如行为更改)。
单一 UNIX 规范版本 3 (Single UNIX Specification, Version 3, SUSv3) 提供对下列 POSIX 操作系统接口的更新:
POSIX.1-1990
POSIX.1b-1993
POSIX.1c-1996
POSIX.2-1992
POSIX.2a-1992
更新包括下列更改:
非交互 Korn shell 中不再扩展环境变量 ENV。此更改同时适用于 /bin/ksh 和 /usr/xpg4/bin/sh。
应使用正确的功能测试宏、编译器和选项生成符合 SUSv3 和其他标准的应用程序。请参见 standards(5) 手册页。
在与 -m 选项一起使用时,file 命令对用户定义的 magic 文件执行带符号比较。另外,在 x86 环境中,该命令在比较 magic 值之前不再将多字节整数切换为大尾数法 (SPARC) 顺序。请参见 file(1) 和 magic(4) 手册页。
snprintf() 和 vsnprintf() 现在返回在输入值 n=0 时将被格式化的字节数。请参见 snprintf(3C) 和 vsnprintf(3C) 手册页。
在启动时,编辑器在读取 $HOME 或当前目录中的 .exrc 文件前检查其他条件。请参见 ex(1) 和 vi(1) 手册页。
如果输入 time_t 太大,无法以 tm struct 表示,则下列函数会返回空指针并将 errno 设置为 EOVERFLOW:
gmtime()
gmtime_r()
localtime()
localtime_r()
请参见 gmtime(3C)、gmtime_r(3C)、localtime(3C) 和 localtime_r(3C) 手册页。
仅在路径指定现有路径或要创建的路径时,SUSv3 才允许在路径名中使用结尾斜杠字符 (/)。
/usr/xpg6/bin 和 /usr/xpg4/bin 中的实用程序具有与缺省 Solaris 行为冲突,但符合 SUSv3 或 XPG4 的行为。对于使用符合 SUSv3 的命令行环境的用户,必须正确配置 PATH。有关更多信息,请参见特定实用程序的手册页。
实用程序 sendmail 已添加到支持 TCP 包装的服务列表中。该实用程序增加的这一功能可能导致 sendmail 拒绝 Solaris 10 系统中的某些连接,这些连接以前被配置为使用有很大限制性的服务。使用守护进程名称 sendmail 启用 TCP 包装的使用。有关 TCP 包装支持的信息,请参见《Solaris 10 ????》中的“sendmail 版本 8.12 使用 TCP 包装”。有关配置 TCP 包装的信息,请参阅 SUNWtcpd 中包含的 tcpd(1M) 和 hosts_access(4) 手册页。
在 Solaris 10 发行版中,Solaris fdisk 标识符设置为 0xbf,以便于配置包含 Linux 操作系统的多引导环境。在 Solaris 早期版本中,Solaris fdisk 标识符被设置为 0x82,即与 Linux 交换分区的标识符相同。通过更改标识符,无需修改 Linux 交换分区或重新安装 Linux OS 即可安装 Solaris 10 OS 和 Linux 操作系统。
Solaris OS 继续识别和支持标识符为 0x82 的 Solaris fdisk。可使用 fdisk 命令切换 0x82 标识符和 0xbf 标识符。如果正在使用 Solaris Live Upgrade 且需要使用 0x82 标识符,则使用 luactivate 命令可以将 0xbf 标识符切换为 0x82 标识符。
有关更多信息,请参见 fdisk(1M) 手册页。
Solaris 应用程序使用 malloc()、brk() 或 mmap() 等函数分配内存。应用程序可分配的最大内存量受用户虚拟地址空间大小的限制。用户虚拟地址空间中包含的程序文本、堆栈、数据和库会进一步减小最大内存分配大小。
在 32 位计算环境中,用户与内核共享 32 位虚拟地址空间。因此,用户虚拟地址空间的大小为 4 GB 减去内核虚拟地址空间的大小。内核虚拟地址空间大小的配置取决于物理内存的大小。随着物理内存大小的增加,用户地址空间的大小会减小。对于具有 8 GB 内存的系统,用户地址空间的大小约为 3 GB。
如果内存分配限制对于应用程序不足,则存在两种选择:
减小内核虚拟地址空间的缺省大小,以增加用户虚拟地址空间的大小。可以使用 eeprom 命令将 kernelbase 变量设置为更高值。更改 kernelbase 会发出警告。否则,具有较小内核虚拟地址空间的系统可能挂起或无法有效运行。
作为更佳选择,请在 Solaris x86 64 位计算环境中运行应用程序。
在 64 位计算环境中,32 位应用程序的虚拟地址空间完全用于用户。所以,32 位应用程序可分配的内存为全部 4 GB 减去文本、堆栈和库所需的用户地址空间。
在某些早期 64 位 AMD 处理器上,可以进一步将内存分配限制减少 1 GB。要确定您的处理器是否受影响,请执行以下步骤:
从任何 32 位 shell 运行命令 pmap $$。
在处理器图上,检查是否已列出大于或等于 0xC0000000 的地址。如果这些地址不存在,则 Solaris OS 已将 32 位应用程序限制为最少为 4 GB 虚拟地址范围的 3 GB。
取决于应用程序已在使用的内存,64 位应用程序可分配 250 TB 内存。
x86 上的 Solaris 10 在 32 位和 64 位模式下支持 no execute (NX) 位。使用 NX 位,可通过在 mmap() 函数等各种内存系统调用中不使用 PROT_EXEC 来实现必需的保护。 以前在 x86 上,所有隐含映射的内存都设置 PROT_EXEC。由于 Solaris 支持 NX 位,增强了病毒保护。
在支持 NX 的硬件上,只要未指定 PROT_EXEC,Solaris OS 就会缺省使用 NX 位。不过,堆栈段在缺省情况下使用 PROT_EXEC 而非 NX 位。可通过执行下列操作之一,更改堆栈段的缺省设置:
在 /etc/system 中设置 no_exec_userstack,以便在所有应用程序堆栈中全局设置 no exec。
将单个应用程序链接到 /usr/lib/ld/map.noexstk 映射文件。
系统管理员可通过使用 eeprom 命令将 enforce-prot-exec 设置为 "off" 来禁用所有 NX 位。对于包含缺少 PROT_EXEC 的传统应用程序的任何系统,都提供此变量作为转换解决方法。
本节包含在安装或升级到 Solaris 10 OS 之前,需要了解的严重安装问题。这些问题造成的影响可能导致安装或升级无法成功完成。如果本节中的错误适用于您的系统,您可能需要在进行安装或升级前执行建议的解决方法。
虽然已对 Solaris 10 软件与早期版本的兼容性进行了测试,但某些第三方应用程序可能无法与 ABI 完全兼容。有关兼容性的信息,请直接与这些应用程序的供应商联系。
您的系统既可以运行 Solaris OS,也可以运行不属于 Solaris 软件的其他产品。这些产品可能是 Sun 或另一家公司提供的。如果将此系统升级到 Solaris 10 发行版,请确保 Solaris 10 OS 上也支持这些其他产品。根据这些产品中每个产品的状态,可执行下列可选操作之一:
验证 Solaris 10 软件是否支持该产品的现有版本。
安装 Solaris 10 发行版支持的新版本产品。可能要在升级到 Solaris 软件之前,删除产品的早期版本。有关更多详细信息,请参见产品文档。
升级到 Solaris 10 软件之前删除产品。
Solaris 10 3/05 HWx 发行版是临时的限制版本,将被 Solaris 10 1/06 软件所替代。本节中的信息仅适用于其平台最初需要 HW1 或 HW2,但尚未更新到 Solaris 10 1/06 OS 的用户。
Solaris 10 3/05 HW1 操作系统基于 Solaris 10 3/05 OS,但添加了对特定的新增 Sun 硬件的支持。仅应在一些特定的系统或域上安装 Solaris 10 3/05 HW1 OS,这些系统或域使用的硬件产品需要该操作系统。对于所有其他的系统或域,仍应使用原有的 Solaris 10 3/05 软件。
要确定您的硬件是否需要 Solaris 10 3/05 HW1 OS,请参见该硬件的文档。如果您的系统包含 UltraSPARC IV+ 板,则可能需要其他信息才能在该硬件上使用 Solaris 10 3/05 HW1 OS。这些信息包含在 http://www.sun.com/products-n-solutions/hardware/docs/Software/Solaris_on_SunHardware/Solaris_10/index.html 上的《Solaris 10 Sun 硬件平台指南》中。
以下信息仅适用于仍在运行临时的 Solaris 10 3/05 HW1 发行版的平台。该信息不适用于运行 Solaris 10 3/05、Solaris 10 3/05 HW2 或 Solaris 10 1/06 OS 的系统。
在某些情况下,如果 Solaris 安装启动程序找不到 find_device.out,则会导致 Solaris 10 3/05 HW1 安装失败,从而导致重新引导,然后到达相同点并提示再次重新引导。
解决方法:请在引导时指定 -text 选项:
boot net -text |
此问题可能会出现在刚刚安装的系统或在引导期间导入大量新的服务管理工具 (Service Management Facility, SMF) 清单的系统上。出现这些引导情况后,IPsec(svc:/network/initial:default 的一部分)可能会在加密框架(svc:/system/cryptosvc:default 的一部分)之前进行初始化。由于验证或加密算法不可用,可能无法创建 IPsec 安全关联,并将显示如下所示的错误消息:
PF_KEY error: type=ADD, errno=22: Invalid argument, diagnostic code=40: Unsupported authentication algorithm |
例如,在 Sun Fire E25K 系统上使用 DR 时可能会出现此错误,因为该操作涉及 IPsec 服务。
解决方法:在执行使用 IPsec 服务的操作前,如果在引导期间导入大量新 SMF 清单,请在引导后执行以下步骤:
在引导后发出此命令:
ipsecalgs -s |
如果系统中存在 /etc/inet/secret/ipseckeys,则还需要发出此命令:
ipseckey -f /etc/inet/secret/ipseckeys |
现在您可以执行需要创建 IPsec 安全关联的操作,如在 Sun Fire E25K 系统上使用 DR。
仅当在引导期间导入大量新 SMF 清单的情况下需要重复本过程。
该Solaris 10 3/05 HW2 操作系统是带有附加修补程序的Solaris 10 3/05 OS,以支持成为新 Sun UltraSPARC T1 处理器的特色的 Sun FireTM T2000 系统。HW2 OS 为 T2000 系统所需,不应安装在任何其他系统上。有关更多信息请参见 Sun Fire T2000 产品说明和《Solaris 10 Sun 硬件平台指南》。
该 HW2 OS 不是Solaris 10 3/05 操作系统或 Solaris 10 3/05 HW1 操作系统的替代品。基于 Sun UltraSPARC IV+ 和 T1 处理器的系统除外,所有的 Sun 系统都应运行Solaris 10 3/05 OS。
有关从 Solaris 10 1/06 发行版开始的升级支持的最新信息,请参见Solaris 发行版在升级支持方面的变化。
仅在从以下发行版之一升级时,才支持升级到 Solaris 10 OS:
Solaris 9 9/04
Solaris 8 2/04 (SPARC Platform Edition)
Solaris 8 2/02 (Intel Platform Edition)
Solaris 7 11/99
无论是使用标准升级还是 Live Upgrade,都不支持从任何 Solaris Express 或 Solaris 10 Beta 发行版升级。要从这些发行版升级,必须安装 Solaris 10 OS。
Solaris 10 中的大多数可执行文件包含可用于验证文件真实性的数字签名。有关此功能的信息,请参见《Solaris 10 ????》中的“为 ELF 对象签名”。
在从 Solaris Express 或 Solaris 10 Beta 发行版升级期间,可能无法使用带有数字签名的版本替换某些文件。缺少签名不影响运行程序的功能,但无法验证文件的真实性。为避免此问题,请执行 Solaris 10 OS 的完全安装而不要执行升级。请参见不支持从 Solaris Express 或 Solaris 10 Beta 发行版升级。
在 Sun Fire V250 服务器上必须安装 SUNWCXall 软件元簇 (metacluster)。
Solaris 10 OS 使用 NFS 版本 4 (NFSv4) 作为缺省的分布式文件系统机制。在 NFSv4 中,文件用户和组属性分别作为 "user@domain" 和 "group@domain" 形式的字符串交换。
该字符串的域部分在客户机和服务器之间应是公用的。此信息自动从系统的名称服务域名派生。不过,在某些情况下,派生域可能在客户机与服务器之间不匹配。一般,在下列条件之一成立的情况下发生此不匹配:
DNS TXT 记录未使用。
跨越多个管理域边界。
如果客户机与服务器之间的域信息不匹配,则访问 NFSv4 的文件可能显示为由 "nobody" 所有。
要确保正确配置,在第一次系统引导时,系统会提示您输入用于 NFSv4 的域。如果您的部署为下列配置之一,则对此提示回答 "no":
您的部署利用 DNS TXT 记录配置 NFSv4 域。
您的部署包含单个(平面)管理域。
使用自定义 JumpStartTM 方法执行无人值守系统安装的环境只需要最少调优即可抑制第一次引导提示。
Solaris 10 分发介质中提供样例脚本 set_nfs4_domain,该脚本位于 ${CDrom_mnt_pt}/Solaris_10/Misc/jumpstart_sample 目录中。应修改此脚本的副本以便将 NFS4_DOMAIN 变量设置为符合站点的特定需要,并应从 JumpStart 的完成脚本中调用该副本。因此,目标系统的 NFSv4 域预配置为 JumpStart 完成阶段的一部分,从而抑制所有第一次引导提示。
按照以下步骤执行无人值守安装:
在 JumpStart 的 finish.sh 脚本所在的相同目录中创建 set_nfs4_domain 脚本的副本。
编辑该脚本,根据您的特定需要设置 NFS4_DOMAIN 变量。
编辑 finish.sh 脚本,并附加对 set_nfs4_domain 的调用。
照常执行 JumpStart 安装。
有关进一步的详细信息,请参阅 sysidconfig(1M)、sysidtool(1M)、nfsmapid(1M) 和 nfs(4) 手册页。另请参见《System Administration Guide: Network Services》。
无法安装具有 elx 或 pcelx 网络接口卡 (NIC) 的系统。在配置 NIC 期间,可能会显示下列错误消息:
WARNING: elx: transmit or jabber underrun: d0<UNDER, INTR, CPLT> |
有关更多信息,请参见 elxl(7D) 或 pcelx(7D) 手册页。
解决方法:安装并运行不具有 elx 或 pcelx NICs 的系统。
在下列情况下,/var 文件系统的缺省大小可能不足以支持 Extra Value 产品:
如果安装 Solaris 10 DVD 或 CD 上提供的任何 Extra Value 产品
如果 /var 文件系统位于单独片上
必须为 /var 文件系统手动指定更大的片大小。
如果 /var 文件系统不位于单独片或分区上,则不会发生此问题。
解决方法:请选择以下解决方法之一。
如果正在使用 Solaris 安装程序 GUI,请执行以下步骤。
开始安装。
在“选择安装类型”中,选择“自定义安装”。
Solaris 安装程序会显示多个屏幕,用于自定义要安装的软件本地化、产品和磁盘布局。
在“分布文件系统”中,选择“修改”。
会显示磁盘布局屏幕。
在特定片的“文件系统”列中键入 /var,然后单击“应用”。
安装程序会为 /var 文件系统推荐一个缺省大小。
编辑 /var 文件系统的“大小”列项,将磁盘空间大小增大一倍。
例如,如果安装程序分配 40 MB 的空间,则将“大小”值更改为 80。
完成安装。
如果正在使用 Solaris 安装程序的文本安装程序,请执行以下步骤。
开始安装。
在“选择安装类型”中,选择“自定义安装”。
Solaris 安装程序会显示多个屏幕,用于自定义要安装的软件本地化、产品和磁盘布局。
在“分布文件系统”中,选择“自动布局”。
会显示磁盘布局屏幕。
在特定片的“文件系统”列中键入 /var。
安装程序会为 /var 文件系统推荐一个缺省大小。
按 F4_Customize 以自定义 /var 文件系统的大小。
编辑 /var 文件系统的“大小”列项,将磁盘空间大小增大一倍。
例如,如果安装程序分配 40 MB 的空间,则将“大小”值更改为 80。
完成安装。
如果要使用自定义 JumpStart 程序,则使用 filesys 配置文件关键字设置 /var 文件系统的大小。下例将片 5 上的 /var 文件系统的大小设置为 256 MB。
filesys c0t0d0s5 256 /var |
Solaris 10 软件提供了使您能够安装大分区的新功能。系统 BIOS 必须支持逻辑块寻址 (LBA)。BIOS GG.06.13 版不支持 LBA 存取。Solaris 引导程序不能管理此类冲突。此问题还可能影响其他 HP Vectra 系统。
如果执行这种升级,HP 系统将无法启动,而只显示带有不断闪烁的下划线光标的黑色空屏。
解决方法:不要将具有最新 BIOS GG.06.13 版的 HP Vectra XU 系列系统升级到Solaris 10 发行版。此版本不再支持这些系统。
因为引导路径不使用硬盘代码,所以仍可以使用引导软盘或引导 CD 来引导系统。然后选择将硬盘(而不是网络或 CD-ROM 驱动器)作为您的可引导设备。
在基于 SPARC 的系统上,Solaris 10 OS 仅在 64 位模式下运行。对于某些 Sun4UTM 系统,可能需要将快擦写存储器中的 OpenBootTM 固件更新为更高的级别,这样才能在 64 位模式下运行该操作系统。下列系统可能需要快擦写存储器更新:
UltraTM 2
Ultra 450 和 Sun EnterpriseTM 450
Sun Enterprise 3000、4000、5000 和 6000 系统
下表列出 UltraSPARC 系统和运行 64 位 Solaris 10 OS 所需的最低固件版本。其中 System type 为 uname -i 命令的输出。使用 prtconf -V 命令,可以确定正在运行的固件版本。
表 2–1 在 UltraSPARC 系统上运行 64 位 Solaris 软件所需的最低固件版本
来自 uname -i 的系统类型 |
来自 prtconf -V 的最低固件版本 |
---|---|
SUNW,Ultra-2 |
3.11.2 |
SUNW,Ultra-4 |
3.7.107 |
SUNW,Ultra-Enterprise |
3.2.16 |
如果某一系统未在上表中列出,则该系统并不需要进行快擦写存储器更新。
有关执行快擦写存储器更新的说明,请参见 http://docs.sun.com 上《Solaris 8 Sun Hardware Platform Guide》的任何版本。
要使 Solaris Live Upgrade 正常运行,必须为给定 OS 版本安装一组有限的修补程序版本。通过访问 http://sunsolve.sun.com 确保您拥有最新的修补程序列表。有关其他信息,请在 SunSolveSM Web 站点上搜索信息文档 72099。
如果运行 Solaris 7 或 Solaris 8 发行版,您可能无法运行 Solaris Live Upgrade 安装程序。这些发行版未提供运行 Java 2 运行时环境所需的修补程序集。
由此导致的常见故障是 Java 异常错误。系统可能会显示以下信息:
InvocationTargetException in ArchiveReader constructornull java.lang.reflect.InvocationTargetException at install.instantiateArchiveReader(Compiled Code) at install.<init>(Compiled Code) at install.main(Compiled Code) |
要运行 Solaris Live Upgrade 安装程序并安装软件包,必须装有 Java 2 运行时推荐的修补程序簇。
解决方法:完成以下解决方法:
使用 pkgadd 命令安装 Solaris Live Upgrade 软件包。
有关逐步说明,请参阅《Solaris 10 安装指南:Solaris Live Upgrade 和升级规划》中的第 8 章 “使用 Solaris Live Upgrade 创建引导环境(任务)”。
安装 Java 2 运行时环境推荐的修补程序簇。修补程序簇可以从 http://sunsolve.sun.com 获得。然后,可以使用 Solaris Live Upgrade 安装程序安装软件包。
Solaris 管理控制台 2.1 软件与 Solaris 管理控制台 1.0、1.0.1 或 1.0.2 软件不兼容。如果要升级到 Solaris 10 发行版,并且系统已安装 Solaris 管理控制台 1.0、1.0.1 或 1.0.2 软件,则在升级之前必须先卸载 Solaris 管理控制台软件。如果您安装了 SEAS 2.0 overbox、SEAS 3.0 overbox 或 Solaris 8 Admin Pack,则系统中已经存在 Solaris 管理控制台。
解决方法:请选择以下解决方法之一:
在升级之前,使用 /usr/bin/prodreg 命令完全卸载 Solaris 管理控制台软件。
如果在升级到 Solaris 10 发行版之前未卸载 Solaris 管理控制台 1.0、1.0.1 或 1.0.2 软件,则必须首先删除所有 Solaris 管理控制台 1.0、1.0.1 或 1.0.2 软件包。请使用 pkgrm 命令而不是 prodreg 命令删除软件包。请小心按照软件包删除顺序执行操作。执行以下步骤:
成为超级用户。
键入以下命令:
# pkginfo | grep “Solaris Management Console“ |
如果说明不是以“Solaris 管理控制台 2.1”开始,那么输出中的软件包名称将代表 Solaris 管理控制台 1.0 软件包。
使用 pkgrm 命令按照以下顺序删除 Solaris 管理控制台 1.0 软件包的所有实例:
不要删除说明中带有“Solaris 管理控制台 2.1”字样的任何软件包。例如,SUNWmc.2 可能表示 Solaris 管理控制台 2.1 软件。
如果 pkginfo 输出显示 Solaris 管理控制台 1.0 软件包的多个版本,请使用 pkgrm 命令删除这些软件包。先删除原始软件包,然后删除带数字后缀的软件包。例如,如果 SUNWmcman 和 SUNWmcman.2 软件包都出现在 pkginfo 的输出中,请先删除 SUNWmcman 软件包,然后删除 SUNWmcman.2 软件包。不要使用 prodreg 命令。
# pkgrm SUNWmcman # pkgrm SUNWmcapp # pkgrm SUNWmcsvr # pkgrm SUNWmcsvu # pkgrm SUNWmc # pkgrm SUNWmcc # pkgrm SUNWmcsws |
在终端窗口中,键入以下命令:
# rm -rf /var/sadm/pkg/SUNWmcapp |
Solaris 管理控制台 2.1 软件现在应该可以正常运行。在以后进行维护或 Solaris 管理控制台 2.1 软件不能正常运行时,删除 Solaris 管理控制台 2.1 软件。执行以下步骤可以重新安装该软件:
使用 pkgrm 命令按照以下顺序删除所有 Solaris 管理控制台 2.1 软件包和相关的软件包:
如果系统中安装了 Solaris 管理控制台 2.1 软件包的多个实例,如 SUNWmc 和 SUNWmc.2,请先删除 SUNWmc,再删除 SUNWmc.2。不要使用 prodreg 命令。
# pkgrm SUNWpmgr # pkgrm SUNWrmui # pkgrm SUNWlvmg # pkgrm SUNWlvma # pkgrm SUNWlvmr # pkgrm SUNWdclnt # pkgrm SUNWmga # pkgrm SUNWmgapp # pkgrm SUNWmcdev # pkgrm SUNWmcex # pkgrm SUNWwbmc # pkgrm SUNWmc # pkgrm SUNWmcc # pkgrm SUNWmccom |
将 Solaris 10 Software - 4 CD 插入 CD-ROM 驱动器。在终端窗口中,键入以下内容:
# # cd /cdrom/cdrom0/Solaris_10/Product # pkgadd -d . SUNWmccom SUNWmcc SUNWmc SUNWwbmc SUNWmcex SUNWmcdev \ SUNWmgapp SUNWmga SUNWdclnt SUNWlvmr SUNWlvma SUNWlvmg SUNWpmgr \ SUNWrmui |
所有以前的 Solaris 管理控制台版本都将被删除。Solaris 管理控制台 2.1 软件现在可以正常运行。
如果使用 Solaris Live Upgrade 在空的备用引导环境中安装 Solaris Flash 归档文件,安装会失败。此时将显示与以下错误类似的消息。
sh: /path_to_install_image/Solaris_10/Tools/Boot/usr/sbin/install.d /mergescripts/merge_name_service: not found ERROR: Transfer list entry (/a/var/svc/profile/name_service.xml): mergescript failed (/path_to_install_image/Solaris_10/Tools/Boot/usr /sbin/install.d/mergescripts/merge_name_service) ERROR: Unable to copy a temporary file to it's final location ERROR: Flash installation failed Extracting Flash Archive: 100% completed (of 4361.24 megabytes) The Solaris flash install of the BE S10B74L2 failed. |
在上例中,path_to_install_image 是用于安装的网络安装映像的目录路径。
解决方法:执行以下步骤。
将目录转至用于安装的网络安装映像中的 mergescripts 目录。
# cd path_to_install_image/Solaris_10/Tools /Boot/usr/sbin/install.d/mergescripts |
创建 merge_name_service 文件。
# touch merge_name_service |
使 merge_name_service 文件可执行。
# chmod a+x merge_name_service |
在要进行安装的系统上,使用 Solaris Live Upgrade 在备用引导环境中安装 Solaris Flash 归档文件。
有关如何使用 Solaris Live Upgrade 安装 Solaris Flash 归档文件的说明,请参见《Solaris 10 安装指南:Solaris Live Upgrade 和升级规划》中的“在引导环境中安装 Solaris Flash 归档文件”。
在步骤 4 中安装的备用引导环境中安装文件系统。
# lumount alt_boot_env mount-point |
在前一个命令中,alt_boot_env 是步骤 4 中安装的引导环境。mount-point 是备用引导环境的挂载点。
将目录转至备用引导环境中的 /var/svc/profile 目录。
# cd mount-point/var/svc/profile |
删除 name_service.xml 配置文件。
# rm name_service.xml |
为名称服务配置文件创建指向 name_service.xml 文件的符号链接。
# ln -s ns_name-service.xml name_service.xml |
在上例中,name-service 是要用于系统的名称服务。为该值使用下列字符串之一。
nis
nisplus
dns
ldap
files
如果试图在安装 Solaris 10 期间配置非主板接口,则在下列情况下,安装会失败。
使用 Solaris GUI 安装程序。
试图配置 PCMCIA 接口卡等非主接口。
使系统使用动态主机配置协议 (DHCP)。
将显示以下错误消息:
An error has occurred in configuring the system. Please go back and check your settings. |
解决方法 1:使用 Solaris 交互式文本(桌面会话)安装程序。
对于基于 SPARC 的系统,在 OK 提示符下键入以下命令。
ok boot cdrom -text |
对于基于 x86 的系统,当系统提示您选择安装类型时,键入以下命令。
b -text |
解决方法 2:使用 Solaris 安装 GUI 程序。
当安装程序提示您输入网络连接信息时,选择“非联网”。
完成安装。
完成安装后,使用 sys-unconfig 命令,将系统重新配置为启用 DHCP 支持的联网系统。
有关使用 sys-unconfig 命令重新配置系统的更多信息,请参见 sys-unconfig(1M) 手册页。
Sun Java Workstation 2100Z 中的 DVD 组合驱动器固件可能导致系统出现紧急情况。从 Solaris 10 Operating System DVD 引导工作站时发生紧急情况。显示内核标题后,以下消息会快速闪出:
panic[cpu0]/thread=fec1be20: mod_hold_stub: Couldn't load stub module sched/TS_DTBL fec25cb0 genunix:mod_hold_stub+139 (fec04088, 63, fea11) fec25cc4 unix:stubs_common_code+9 (1, 8, fec026e4) fec25ce4 unix:disp_add+3d (fec026dc) fec25d00 genunix:mod_installsched+a4 (fef01530, fef01518) fec25d20 genunix:mod_install+2f (fef01518, fec25d3c,) fec25d2c TS:_init+d (0, d6d89c88, fec25d) fec25d3c genunix:modinstall+d9 (d6d89c88) fec25d50 genunix:mod_hold_installed_mod+2e (d6d77640, 1, fec25d) fec25d7c genunix:modload+ac (fec026c4, fec26c4) fec25d98 genunix:scheduler_load+3d (fec026c4, fec026dc) fec25db4 genunix:getcid+50 (fec026c4, fec28514) fec25dcc unix:dispinit+df (fec25ddc, fe814ba9) fec25dd4 unix:startup_modules+d5 (fec25dec, fe8cac37) fec25ddc unix:startup+19 (fe800000, 166130, 7) fec25dec genunix:main+16 () |
然后,系统自动复位。
解决方法:选择下列选项之一:
解决方法 1:修改部分 BIOS 配置设置。通过此临时解决方法,可以完成 Solaris 10 安装。不过,此方法可能导致读取 DVD 的性能较差。执行以下步骤:
在系统引导期间,在提示时按 F2 以进入设置过程。
屏幕显示与下例类似的附着类型选项:
Primary Master [ ] Primary Slave [ ] Secondary Master [CD-ROM] Secondary Slave [ ] |
通过为 CD-ROM 选择附着类型来选择 DVD 驱动器的附着类型。
屏幕可能显示多种 CD-ROM 附着类型,例如,在系统具有多个光学驱动器的情况下。在上述情况下,可能需要打开系统机箱以确定 DVD 驱动器的附着点。确保选择适用于 DVD 驱动器的正确附着类型。
选择正确的 CD-ROM 附着类型后,按 Enter 键。
会显示下一个屏幕,且已自动选中 Type:[Auto]。
按两次空格键,将选中项更改为 Type:[CD-ROM]。
使用箭头键选择 Transfer Mode。
按 Enter 键以显示其他“传输模式”选项列表。
使用箭头键选择 "Standard",然后按 Enter 键接受选择。
按 F10 键保存配置更改并退出 BIOS 设置过程。
系统重新启动。
解决方法 2:将 DVD 组合驱动器的固件更新为 v1.12。此选项要求 DVD 组合驱动器连接到运行 Microsoft Windows 的系统。执行以下步骤。
从 Sun Java Workstation 2100z 卸下 DVD 组合驱动器。有关正确卸下驱动器的步骤,请参见工作站的用户指南。
将驱动器连接到运行 Microsoft Windows 的系统。确保在需要时更改驱动器的主/从跳线设置。
访问位于 http://download.aopen.com.tw/default.aspx 的 AOpen 下载中心。
使用以下信息,搜索 DVD 驱动器的固件:
产品:组合驱动器
型号:COM5232/AAH
类别:固件
下载和安装固件版本 R1.12。
在工作站上重新安装驱动器。如果需要,恢复原始主/从跳线设置。
在站点上,较新的固件版本可能已可用。Sun 的测试确认了 v1.12 发行版解决了紧急情况问题。Sun 无法确认 v1.12 之后的更新固件版本是否同样能解决问题。
如果使用 Solaris 安装图形用户界面 (GUI) 在基于 x86 的系统上安装 Solaris FlashTM 归档文件,安装可能会失败。在开始安装前,在没有运行 Solaris OS 或 Linux 操作系统的系统上会发生此故障。
将显示以下错误消息:
Unexpected error found with media or archive selected |
解决方法:当 Solaris 安装程序提示您选择安装类型时,不要选择 Solaris 交互式选项。选择选项 3 或 4 ,然后执行 Solaris 交互式文本安装。系统提示您指定安装期间要使用的介质时,键入 Solaris Flash 归档文件的路径。
下列 Sun Fire 系统上的串行控制台 (ttya) 在缺省情况下不工作:
Sun Fire V20z
Sun Fire V40z
Sun Fire V60x
Sun Fire V65x
要使用串行控制台,必须手动配置系统的 BIOS。
解决方法:此解决方法要求您的系统使用 Sun 键盘和显示器。执行以下步骤:
引导计算机。
在系统引导期间,在提示时按 F2 键以访问 Phoenix BIOS。
在 "Peripherals" 下,将 comm 端口从禁用更改为启用。
保存配置,然后引导系统。
使用 eeprom 命令,将输入设备和输出设备更改为 ttya。
在这些系统上,在系统引导时按 Stop 和 N 键无法复位低级固件为缺省设置。
在具有现有 x86 引导分区的系统上 Solaris 安装 GUI 程序可能失败。如果使用基于文本的 Solaris 安装程序创建现有 x86 引导分区,则会发生此故障。将显示以下错误消息:
Default layout will not work on this system. Error: Error: ERROR: Could not create explicit fdisk partition on c0t0d0, requested cylinders 14581 - 14597 in use by fdisk partition 1 Error: Error: ERROR: System installation failed Pfinstall failed. Exit stat= java.lang.UNIXProcess@a89ce3 2 artition on c0t0d0, requested cylinders 14581 - 14597 in use by fdisk partition 1 ERROR: System installation failed |
解决方法:请选择以下解决方法之一。
解决方法 1:当安装程序提示您选择安装类型时,选择 3 Solaris 交互式文本(桌面会话)。
解决方法 2:如果使用 Solaris 安装 GUI 程序,请执行以下步骤。
开始安装。
在系统提示选择安装类型时,选择“自定义安装”。
自定义安装面板会提示您输入有关要安装的语言环境、软件和磁盘的信息。
根据您的系统,回答屏幕上的问题。
在“Fdisk 选择”屏幕上,选择包含 x86boot 分区的磁盘。
在下拉菜单中将 x86boot 分区更改为 UNUSED 以删除该分区。
通过将 UNUSED 重新更改为 x86boot,可重新添加 x86boot 分区。
继续安装。
在基于 x86 的系统上,当磁盘设备超过 65,535 柱面时,Solaris OS 仅使用柱面计数的后 16 位。因此,可用于 Solaris OS 的实际磁盘空间大小已减小。例如,磁盘的报告柱面数为 70,000。70,000 与 65,535 之差等于可用于 Solaris OS 的柱面数,即 4,464。
要验证磁盘是否已超过 65,535 个柱面,请使用以下公式计算磁盘的大约容量:
磁盘容量 = 柱面数 * 头数 * 扇区数 * 512
然后,将结果与磁盘的标示容量比较。如果两个值之差较大,说明您的磁盘超过 65,535 个柱面。
解决方法:以下是可供选择的两种方案:
保持 RAID 卷足够小以避免超出柱面限制。
几何体使用的柱面数小于 65,535 时,创建 Solaris 标签。可通过增加扇区或头的值(两个值都不应超过 16 位)实现此第二个选项。
第二个选项适用于已镜像 72 GB 磁盘的 Sun Fire V20z 或 Sun Fire V40z 系统。与单个 72 GB 磁盘相比,BIOS RAID 功能将报告较小的头和扇区数。因此,柱面数超过 65,535 的限制。
不过,可以使用 Solaris 10 OS 格式化第一个磁盘并为其创建标签,然后使 BIOS 将第一个磁盘镜像到另一个磁盘。通过此步骤,可保留第一个磁盘的标签。Solaris 使用第一个磁盘的几何学以避免超出限制。
通过使用磁盘编辑器以使用有效几何学值手动修改磁盘上的标签,也可以实现第二个选项。
在 Sun LX50 系统中,X 服务器可能无法打开 PS/2 鼠标设备。该错误可能在安装过程中发生,也可能在系统重新引导时发生。如果发生问题,会显示以下错误消息:
ddxSUNWmouse: Error opening mouse device '/dev/kdmouse; /dev/kdmouse: No such device or address |
因此,Solaris 安装程序将只能在命令行界面模式下继续执行。完成安装后,该问题可能将在 Solaris 运行时仍然存在。
解决方法:在连接到服务器 PS/2 接口的 Y 形电缆上,切换 PS/2 键盘连接和鼠标连接。
如果系统重新引导后仍不能识别 PS/2 鼠标,请按 LX50 服务器上的 "Reset" 按钮。也可以在出现以下引导提示时,使用重新配置选项 (b -r):
Select (b)oot or (i)nterpreter: |
如果您的系统正在运行 Solaris 7 软件,卷管理器会错误地装载 Solaris 10 Operating System DVD。能够装载 DVD,但不能访问数据。结果是无法设置安装服务器、执行 Live Upgrade 或访问介质上的任何数据。
解决方法:请选择以下解决方法之一:
应用下列修补程序:
107259–03
107260–03
手动装载 Solaris 10 Operating System DVD。不要使用卷管理来装载 DVD。执行以下步骤:
成为超级用户。
停止卷管理。
# /etc/init.d/volmgt stop |
手动装载 Solaris 10 Operating System DVD。
# mkdir /mnt1 # mount -F hsfs -o ro /dev/dsk/c0t6d0s0 /mnt1 |
验证是否已装载了 DVD。然后验证数据是否可以访问。
# cd /mnt1 # ls |
如果已正确装载 DVD,系统将返回以下信息。
Copyright Solaris_10 |
在安装 Solaris 10 OS 期间或之后可能发生以下错误。
当完成 Solaris 10 OS 安装后系统重新引导时,可能生成与下例相似的 Java 错误消息。这些消息可能显示在控制台上或记录在 /var/adm/messages 文件中。
java[16552]: [ID 874347 user.error] libpkcs11: open /var/run/kcfd_door: No such file or directory java[16552]: [ID 523743 user.error] libpkcs11: /usr/lib/security/pkcs11_softtoken.so unexpected failure in ELF signature verification. System may have been tampered with. Cannot continue parsing /etc/crypto/pkcs11.conf java[16580]: [ID 874347 user.error] libpkcs11: open /var/run/kcfd_door: No such file or directory java[16580]: [ID 523743 user.error] libpkcs11: /usr/lib/security/pkcs11_softtoken.so unexpected failure in ELF signature verification. System may have been tampered with. Cannot continue parsing /etc/crypto/pkcs11.conf |
解决方法:无。忽略错误消息。
在安装期间,系统可能弹出磁盘且安装可能失败。如果从 Solaris 10 安装磁盘引导,则可能发生此错误。安装磁盘可以是 Solaris 10 Operating System DVD 或 Solaris 10 Software - 1 CD。引导系统后,您尝试从网络安装 Solaris Flash 归档文件。
在下列两组情况下出现该错误。
在从 DVD 或 CD 安装磁盘运行 Solaris GUI 安装程序时,为系统指定有效的 Solaris Flash 存档文件。例如,在基于 SPARC 的系统上安装时指定 x86 归档文件的路径会导致该错误。磁盘弹出后,控制台窗口中可能显示与以下错误相似的消息。
/sbin/install-solaris: rm: cannot execute /sbin/install-solaris: date: cannot execute /sbin/install-solaris: gettext: cannot execute. |
从 Solaris 10 安装磁盘通过控制台会话运行 Solaris 文本安装程序,并成功地从网络安装 Solaris Flash 归档文件。磁盘弹出后,控制台窗口中可能显示与以下错误相似的消息。
/sbin/setup-launcher[310]: 1356 Killed /sbin/setup-launcher[315]: 1357 Killed |
解决方法 1:如果错误是由无效归档文件引起的,则根据错误触发器完成下列步骤之一。
使用 GUI 安装程序重新开始安装。然后,指定有效归档文件的路径。
在桌面窗口会话中使用基于文本的安装程序安装归档文件:
对于基于 SPARC 的系统,在 ok 提示符下键入 boot cdrom -text。
对于基于 x86 的系统,在系统提示选择安装类型时,选择 3 Solaris 交互式文本(桌面会话)。
解决方法 2:如果在控制台会话中使用基于文本的安装程序后发生错误,请选择下列选项之一:
改为在桌面窗口会话中使用安装程序:
对于基于 SPARC 的系统,在 ok 提示符下键入 boot cdrom -text。
对于基于 x86 的系统,在系统提示选择安装类型时,选择 3 Solaris 交互式文本(桌面会话)。
系统弹出安装磁盘后,执行以下步骤。
在初始 Solaris 10 OS 安装后第一次系统重新引导时,kdmconfig 程序可能运行两次。在此初始启动期间,每次程序启动时,系统会提示您选择 X 服务器。在尚未配置为使用 X 服务器的基于 x86 的系统上可能发生此情况。这类系统的示例是未使用图形显示的“无显示”系统。
解决方法:每次程序启动和提示选择 X 服务器时,按 F3 键退出。启动进程恢复之前会出现短暂延迟。此初始启动完成后,如果随后重新引导系统,则该问题不再发生。
如果使用自定义 JumpStart 安装方法在基于 x86 的系统上进行安装,并在配置文件中将片 2 显式配置为重叠片,则会出现错误。系统在安装完成后未成功重新引导。将显示以下错误消息:
Cannot find Solaris partition |
发生故障的原因是重叠片 2(例如,c0t0d0s2)设置为从柱面 1 而不是柱面 0 开始。
解决方法:在自定义 JumpStart 配置文件中,删除将片 2 配置为重叠片的 filesys 关键字项。例如,应删除与以下项相似的关键字项。
filesys c0t0d0s2 all overlap |
删除该项后,执行自定义 JumpStart 安装。
如果安装 Solaris 10 软件,/var/sadm/system/logs 和 /var/sadm/install/logs 中的 install_log 文件可能不完整。这些日志可能不包含有关已成功添加到系统的软件包的信息,并且可能不会记录添加软件包时遇到的错误。所以,不能将 install_log 文件用作解决安装或应用程序问题的资源。
解决方法:如果应用程序无法正常运行,不要通过检查 install_log 文件确定是否已安装应用程序软件包,执行以下步骤。
检查 Solaris 产品注册表以确定应用程序使用哪个软件包。
# prodreg |
使用 pkginfo 命令以确定是否这些软件包中的任何软件包为部分安装。
# pkginfo -p package-name |
删除前一个命令的输出中报告的每个软件包。
# pkgrm options package-name |
重新安装每个软件包。
# pkgadd options package-name |
如果从 Solaris 10 Operating System DVD 安装 Solaris,则交互式 GUI 安装可能失败。如果系统上未设置 boot-device 配置变量,则发生此故障。
要确定是否已设置 boot-device 配置变量,请键入以下命令。
# prtconf -pv | grep boot-device |
如果此命令的输出为 boot-device且没有关联的设备,则不能使用交互式 GUI 安装程序从 Solaris 10 Operating System DVD 安装。
解决方法:使用交互式文本安装程序安装 Solaris 10 软件。当安装程序要求您选择安装类型时,选择选项 3 Solaris 交互式文本(桌面会话)。
有关从 Solaris 10 Operating System DVD 安装的更多信息,请参见《Solaris 10 安装指南:基本安装》。
如果使用 Solaris 安装程序来安装 Solaris 10 软件,则 SunSM Remote Services (SRS) Net Connect 软件的某些信息和退出面板将无法正确显示。
将显示安装面板框和“取消”按钮,但缺少安装面板的内容。
在采用 Solaris 方式安装此 Solaris OS 发行版中包含的其他软件产品时,也可能会出现此问题。
解决方法:执行以下步骤:
显示空白的安装面板时,通过单击“取消”按钮绕过 SRS Net Connect 的安装。
完成 Solaris 10 软件的安装后,从 Solaris 10 Operating System DVD 或 Solaris 10 Software - 2 CD 中手动安装 SRS Net Connect 软件。
请在初始 Solaris 10 软件安装完成后再安装 SRS Net Connect 软件,这样可以确保所有的面板都正确显示。
安装期间,某些 Dell Precision 工作站上的 USB 键盘可能冻结或变为部分不可运行,从而影响安装。
解决方法:执行下列解决方法之一:
切换固件中的 USB 仿真模式。
切换到 PS/2 键盘。
重新引导,然后重试。
也可以更新系统的 BIOS 以解决问题。
安装 Solaris 10 OS 时,/devices/pseudo 名称空间的权限设置可能不正确。系统可能无法访问某些系统设备。如果在具有 Solaris Flash 归档文件的克隆系统上安装 Solaris 10 OS,会发生类似名称空间权限错误。
如果安装后在 SUNWcsd 软件包上运行 pkgchk -n 命令,会显示类似以下输出的消息。
# pkgchk -n SUNWcsd ERROR: /devices/pseudo/cvc@0:cvc pathname does not exist unable to create character-special device ERROR: /devices/pseudo/cvcredir@0:cvcredir pathname does not exist unable to create character-special device |
如果在具有 Solaris Flash 归档文件的克隆系统上安装 Solaris 10 OS,则以前的命令会生成类似以下输出的错误。
# pkgchk -n SUNWcsd ERROR: /dev group name sys expected <(null)> actual ERROR: /devices/pseudo/clone@0:eri permissions <0666> expected <0600> actual ERROR: /devices/pseudo/clone@0:ibd permissions <0666> expected <0600> actual ERROR: /devices/pseudo/cvc@0:cvc pathname does not exist ERROR: /devices/pseudo/cvcredir@0:cvcredir pathname does not exist |
对于 Solaris Flash 安装,也会为 SUNWcsr 软件包显示类似前一个输出的错误。
解决方法:请选择以下解决方法之一。
解决方法 1:在 SUNWcsd Core Solaris 设备软件包中运行 pkgchk -nf 命令。如果从 CD 或 DVD 介质安装 Solaris 10 OS,或从网络安装映像进行安装,则此解决方法适用。
# pkgchk -nf SUNWcsd |
解决方法 2:此解决方法适用于要使用 Solaris Flash 归档文件安装 Solaris 10 OS 的克隆系统。安装归档文件前,执行以下步骤:
在主系统上,创建 /etc/flash/reboot 目录:
# mkdir -p /etc/flash/reboot # |
在主系统上,在文本编辑器中创建以下脚本。
#! /usr/bin/sh # echo " Doing pkgchk -nf SUNWcsd" pkgchk -nf SUNWcsd echo " Doing pkgchk -nf SUNWcsr" pkgchk -nf SUNWcsr exit 0 |
使用文件名 pkgchk.cleanup 将该脚本保存在 /etc/flash/reboot 目录中。
确保 pkgchk.cleanup 脚本可执行。
# cd /etc/flash/reboot # chmod a+x pkgchk.cleanup |
创建 Solaris Flash 归档文件。
在克隆系统上安装归档文件。
不过,如果已使用 Solaris Flash 归档文件安装 Solaris 10 OS,则执行以下步骤以解决该错误。
在 SUNWcsd Core Solaris 设备软件包上运行 pkgchk -nf 命令。
# pkgchk -nf SUNWcsd |
在克隆系统上,在 SUNWcsd Core Solaris 设备软件包上运行 pkgchk -nf 命令。
# pkgchk -nf SUNWcsr |
可使用网络图像安装 Solaris。如果该图像是通过组合 Solaris 10 Software CD 创建的,则可能会显示下列错误消息:
Error message: Jun 18 10:51:53 b26b statd[149]: [ID 514559 daemon.error] svc_tp_create: Could not register prog 100024 vers 1 on udp Jun 18 10:51:53 b26b statd[149]: [ID 514559 daemon.error] svc_tp_create: Could not register prog 100024 vers 1 on tcp Jun 18 10:51:53 b26b statd[149]: [ID 514559 daemon.error] svc_tp_create: Could not register prog 100024 vers 1 on ticlts Jun 18 10:51:53 b26b statd[149]: [ID 514559 daemon.error] svc_tp_create: Could not register prog 100024 vers 1 on ticotsord Jun 18 10:51:53 b26b statd[149]: [ID 514559 daemon.error] svc_tp_create: Could not register prog 100024 vers 1 on ticots Jun 18 10:51:53 b26b statd[149]: [ID 447212 daemon.error] statd: unable to create (SM_PROG, SM_VERS) for netpath. |
解决方法:无。忽略此消息。系统引导后,网络文件系统 (NFS) 正常运行。
如果在带有多个网络接口的系统上安装或升级到 Solaris 10 发行版,系统会把所有系统接口都标识为可用。未与网络连接的接口或不需要使用的接口也会显示在 ifconfig -a 命令的输出中。另外,具有相同以太网地址的接口可能被指定相同的 IP 地址。将显示以下错误消息:
ifconfig: setifflags: SIOCSLIFFLAGS: qfe3: 无法指定所需地址 |
如果将 local-mac-address
PROM 变量设为 false,系统也会出现此问题。这是因为所有的接口都配置了相同的 IP 地址。
解决方法:请选择以下解决方法之一:
要仅探测已配置的接口,请在初始引导后重新引导系统。
要为每个网络接口指定不同的 IP 地址,请使用以下方法之一将 local-mac-address
PROM 变量设置为 true:
在 ok 提示符处,键入以下命令:
ok setenv local-mac-address? true |
在终端窗口中以超级用户身份键入以下命令:
# eeprom local-mac-address?=true |
在安装过程中创建文件系统时,可能会显示以下警告消息之一:
警告: inode 块/cyl 组 (87) >= 上一个柱面组中的数据块 (63)。 这意味着 1008 个扇区无法分配。 |
或:
警告: 上一个柱面中的 1 个扇区没有分配 |
如果您创建的文件系统的大小与正在使用的磁盘上的空间不相等时会出现该警告。这种差别可能导致磁盘上有未包含在所示文件系统中的未使用空间。这些未使用的空间不能被其他文件系统使用。
解决方法:忽略此警告消息。
有关从 Solaris 10 1/06 发行版开始的升级支持的最新信息,请参见Solaris 发行版在升级支持方面的变化。
本节介绍升级错误。在升级到 Solaris 10 OS 时可能发生某些升级错误。完成升级后可能发生其他升级错误。
在此 Solaris 10 发行版中,Solaris 卷管理器使用新格式显示设备 ID 输出。在磁盘集中引入设备 ID 支持的 Solaris 9 9/04 OS 不识别新格式。在从 Solaris 9 9/04 升级到 Solaris 10 OS 发行版时,在 Solaris 卷管理器配置中未更新与现有磁盘集关联的设备 ID。如果需要返回到 Solaris 9 9/04 OS,则升级后对磁盘集进行的配置更改可能对 Solaris 9 9/04 OS 不可用。有关更多信息,请参见《Solaris Volume Manager Administration Guide》中的第 25 章 “Troubleshooting Solaris Volume Manager (Tasks)”。
对于运行 Solaris 9 发行版并已安装建议的修补程序簇的系统,升级到 Solaris 10 OS 仅能获得部分成功。此问题会影响运行下列发行版并已安装 Solaris 9 的建议修补程序簇的系统。
Solaris 9 发行版
Solaris 9 9/02 发行版
Solaris 9 12/02 发行版
Solaris 9 4/03 发行版
Solaris 9 8/03 发行版
Solaris 9 12/03 发行版
Solaris 9 4/04 发行版
在升级到 Solaris 10 发行版时,未能从系统成功删除 SUNWcti2x 软件包。
解决方法:请选择以下解决方法之一。
要避免此问题,请在升级到 Solaris 10 OS 之前对系统应用修补程序 ID 117426-03 或更高版本。
要下载此修补程序,请访问 http://sunsolve.sun.com。
如果在升级期间遇到此问题,请执行以下步骤。
在文本编辑器中,注释掉 /var/sadm/pkg/SUNWcti2x/install/preremove 文件中的以下行。
rem_drv -b ${BASEDIR} sc_nct || EXIT=1 |
删除 SUNWcti2x 软件包。
# pkgrm SUNWcti2x |
如果使用 Solaris Live Upgrade 从 Solaris 8 或 Solaris 9 发行版升级到 Solaris 10 OS,不会删除过时的卸载程序。来自早期 OS 的这些卸载程序仍然位于系统的 /var/sadm/prod 目录中。
不删除下列过时的卸载程序。
uninstall_Alternate_Pathing_2_3_1.class uninstall_CDRW_1_1.class o uninstall_CDRW_1_0.class uninstall_Bonus_Localization_-_Catalan_CDE_Desktop.class uninstall_Bonus_Localization_-_Polish_CDE_Desktop.class uninstall_Bonus_Localizations_-_Russian_CDE_Desktop.class uninstall_Capacity_on_Demand_1_0.class uninstall_Java3D_1_3_1.class uninstall_Java3D_1_3.class uninstall_Java3D_1_2_1_04.class uninstall_Java3D_1_2_1_03.class uninstall_Lights_Out_Management_2_0.class uninstall_Man_Page_Supplement.class uninstall_OpenGL_1_3.class uninstall_OpenGL_1_2_3.class uninstall_Netra_ct_Platform_1_0.class uninstall_Netra_t11xx_Alarms_2_0.class uninstall_Netscape_6_2_3.class uninstall_Netscape_6_2_1_Beta.class uninstall_PC_launcher_1_0_2.class uninstall_PC_launcher_1_0_1_PCfileviewer_1_0_1.class uninstall_RSC_2_2_2.class uninstall_RSC_2_2_1.class uninstall_RSC_2_2.class uninstall_ShowMeTV_1_3.class uninstall_Solaris_9_French_Localization.class uninstall_Solaris_9_German_Localization.class uninstall_Solaris_9_Hong_Kong_Traditional_Chinese_Localization.class uninstall_Solaris_9_Italian_Localization.class uninstall_Solaris_9_Japanese_Localization.class uninstall_Solaris_9_Korean_Localization.class uninstall_Solaris_9_Simplified_Chinese_Localization.class uninstall_Solaris_9_Spanish_Localization.class uninstall_Solaris_9_Swedish_Localization.class uninstall_Solaris_9_Traditional_Chinese_Localization.class uninstall_Solaris_On_Sun_Hardware_Documentation.class uninstall_Sun_Hardware_AnswerBook.class uninstall_SunATM_5_0.class uninstall_SunATM_5_1.class uninstall_SunFDDI_PCI_3_0.class uninstall_SunFDDI_SBus_7_0.class uninstall_Sun_Fire_880_FC-AL_Backplane_Firmware_1_0.class uninstall_Sun_Fire_B10n_Load_Balancing_Blade_1_1.class uninstall_SunForum_3_1.class uninstall_SunForum_3_2.class uninstall_SunHSI_PCI_3_0.class uninstall_SunHSI_SBus_3_0.class uninstall_SunScreen_3_2.class uninstall_SunVTS_5_1_PS6.class uninstall_SunVTS_5_1_PS5.class uninstall_SunVTS_5_1_PS4.class uninstall_SunVTS_5_1_PS3.class uninstall_SunVTS_5_1_PS2.class uninstall_SunVTS_5_1_PS1.class uninstall_SunVTS_5_0.class uninstall_System_Management_Services_1_4.class uninstall_System_Management_Services_1_3.class uninstall_System_Management_Services_1_2.class uninstall_System_Service_Processor_3_5.class uninstall_WBEM_DR_1_0.class uninstall_Web_Start_Wizards_SDK_3_0_2.class uninstall_Web_Start_Wizards_SDK_3_0_1.class uninstall_Web_Start_Wizards_SDK.class uninstall_XML_Libraries_2_4_12.class |
解决方法:升级系统后,手动删除 /var/sadm/prod 目录中过时的卸载程序。
此 Solaris 10 发行版引入对 pam_ldap 功能的更改。在升级到当前发行版时,现有 pam.conf 配置文件中的 pam_ldap 配置并未更新以反映这些更改。如果检测到 pam_ldap 配置,则升级结束时生成的 CLEANUP 文件包含下列通知:
/etc/pam.conf please examine/update the pam_ldap configuration because its functionality has changed, refer to pam_ldap(5) documentation for more information |
解决方法:升级后,检查 /etc/pam.conf。如果需要,手动修改此文件以便与 pam_ldap 的新功能兼容。这些修改涉及口令提示,如 use_first_pass 和 try_first_pass 选项以及口令更新。有关更新 pam.conf 的更多信息,请参阅 pam_ldap(5) 手册页和文档。
如果使用 Solaris Live Upgrade 从 Solaris 8 发行版升级到 Solaris 10 发行版,则可能发生错误。Solstice DiskSuite TM 4.2.1 配置可能无法转换为 Solaris 卷管理器配置。所有 RAID-0、RAID-1 和诸如镜像、条带及子镜像等其他卷可能丢失。
如果在升级前已按特定顺序对 Solaris 8 系统应用修补程序,则发生该问题。要确定系统是否会遇到问题,请检查 Solaris 8 系统上的 SUNWmdr 软件包的版本信息。键入以下命令:
# grep VERSION /var/sadm/pkg/SUNWmdr/pkginfo |
如果上述命令生成以下输出,则系统可能受该问题影响:
PKG_CLIENT_VERSION=8 VERSION=4.2.1,REV=1999.12.03.10.00 |
解决方法:执行以下步骤。
使用 Solaris Live Upgrade 升级替换引导环境。
有关更多信息,请参见《Solaris 10 安装指南:Solaris Live Upgrade 和升级规划》。
装入已升级的引导环境磁盘,但不激活已升级的引导环境。
# mnt -F ufs /mnt/c0t0d0slice_number /mnt |
在前一个示例中,slice_number 引用包含已升级引导环境的片。
检查 /etc/system 文件中是否存在类似以下文本的 MDD 数据库信息项:
* Begin MDD database info (do not edit) set md:mddb_bootlist1="sd:7:16 sd:7:1050 sd:7:2084" * End MDD database info (do not edit) |
在文本编辑器中,为已升级引导环境打开 /kernel/drv/md.conf 文件。
# cd /kernel/drv # vi md.conf |
如下所示修改 md.conf:
从您在步骤 3 中检查的 /etc/system 文件添加 mddb_bootlist 信息。确保还包含出现在该信息之前和之后的、带注释的 "Begin" 和 "End" 行。
对于 mddb_bootlist 行上的每个 sd 磁盘项,在磁盘项末尾添加文本字符串 :id0。
在 mddb_bootlist 项下,插入以下新行:
md_devid_destroy=1; |
下例显示如何修改 md.conf 文件:
# Begin MDD database info (do not edit) mddb_bootlist1="sd:7:16:id0 sd:7:1050:id0 sd:7:2084:id0"; md_devid_destroy=1; # End MDD database info (do not edit) |
保存 md.conf 文件。
从 /etc/system 文件中删除 mddb_bootlist 项。
卸载已升级的引导环境磁盘。
激活已升级的引导环境。
如果使用 Solaris Live Upgrade 从 Solaris 7 发行版升级到 Solaris 10 OS,会显示与以下消息类似的错误消息。
Removal of package was successful. /a//var/sadm/system/admin/upgrade_script: /bin/prodreg: not found /a//var/sadm/system/admin/upgrade_script: /bin/prodreg: not found /a//var/sadm/system/admin/upgrade_script: /bin/prodreg: not found |
发生此错误的原因是 Solaris 7 发行版中未包含 Solaris 产品注册表 (prodreg) 软件。
解决方法:忽略错误消息。这些错误并不影响安装。
当使用带有 -i 选项的 Solaris Live Upgrade luupgrade(1M) 命令升级非启用的引导环境时,安装程序显示的某些语言的文本可能无法阅读。这是由于安装程序所要求的字体在当前引导环境上的旧版本中不存在而导致文本被破坏。
解决方法:请选择以下解决方法之一:
从 Solaris 8 软件升级到 Solaris 10 发行版时,删除 SUNWjxcft 软件包时会遇到问题。upgrade_log 文件中会记录以下错误消息:
正在删除软件包 SUNWjxcft: 无法打开 /a/usr/openwin/lib/locale/ja/X11/fonts/TTbitmaps/fonts.upr 无法打开 /a/usr/openwin/lib/locale/ja/X11/fonts/TTbitmaps/fonts.scale Can't open /a/usr/openwin/lib/locale/ja/X11/fonts/TTbitmaps/fonts.alias Can't open /a/usr/openwin/lib/locale/ja/X11/fonts/TT/fonts.upr 无法打开 /a/usr/openwin/lib/locale/ja/X11/fonts/TT/fonts.scale 无法打开 /a/usr/openwin/lib/locale/ja/X11/fonts/TT/fonts.alias <SUNWjxcft> 删除成功 |
解决方法:忽略错误消息。
如果在从 /etc/init.d/sshd 守护进程中运行第三方安全 shell(例如 OpenSSH)的系统上升级到 Solaris 10 发行版,升级会禁用现有的安全 shell 守护进程。升级期间,Solaris 10 软件将覆写 /etc/init.d/sshd 的内容。
解决方法:请选择以下解决方法之一:
如果不希望在系统上安装安全 shell 协议服务器程序,则在升级过程中请不要安装 SUNWsshdr 和 SUNWsshdu 软件包。
如果不希望系统上有安全 Shell 协议服务器或客户机程序,升级时不要安装安全 Shell 簇 (SUNWCssh)。
如果升级到 Solaris 10 发行版时 /export 目录接近其容量极限,则 /export 的空间要求将会出现计算错误。升级过程将失败。如果安装了无盘客户机,或者在 /export 目录中安装了第三方软件,通常会发生这一问题。将显示以下消息:
警告: 没有足够的空间用于升级。 |
解决方法:在升级之前,选择以下解决方法之一:
在完成升级之前临时重命名 /export 目录。
在完成升级前临时注释掉 /etc/vfstab 文件中的 /export 行。
如果 /export 是一个单独的文件系统,则在执行升级之前先卸载 /export。
如果您的系统当前支持使用 Solstice AdminSuiteTM 2.3 无盘客户机工具安装的无盘客户机,则需要执行以下两个步骤:
删除所有与服务器具有相同 Solaris 版本和体系结构的现有无盘客户机。
安装或升级到 Solaris 10 发行版。
有关具体说明,请参见《System Administration Guide: Basic Administration》。
如果您试图在现有无盘客户机上安装 Solaris 10 软件,可能会显示以下错误消息:
不能升级片 <xxxxxxxx> 上的 Solaris 版本 (Solaris version-number)。 此磁盘上安装的软件配置具有未知问题。 |
在此错误消息中,version-number 指系统上当前运行的 Solaris 版本。<xxxxxxxx> 指运行此版本 Solaris 软件的片。
本节介绍与 Solaris OS 的安装相关的问题。
在安装 Solaris 10 OS 时,还会自动安装 StarOffice(非亚洲市场版)或 StarSuiteTM 软件,这取决于您选择的语言。各种语言以及这些语言支持的对应软件列出如下:
选定的语言 |
支持的软件 |
---|---|
中文、日文、韩文 |
StarSuite |
其他语言 |
StarOffice(非亚洲市场版) |
StarOffice(非亚洲市场版)和 StarSuite 不能共存在同一系统上。如果希望替换无意中安装的软件,请执行以下步骤。
将 Solaris 10 Software - 3 CD 或 Solaris 10 Operating System DVD 插入驱动器。
成为超级用户。
转至 Product 目录,例如,/cdrom/cdrom0/Solaris_10/Product。
替换该软件。
要使用 StarSuite 替换 StarOffice(非亚洲市场版),请使用以下命令:
# pkgrm SUNWsogm SUNWsom # pkgadd -d . SUNWsoagm SUNWsoam |
要使用 StarOffice(非亚洲市场版)替换 StarSuite,请使用以下命令:
# pkgrm SUNWsoagm SUNWsoam # pkgadd -d . SUNWsogm SUNWsom |
一些 PDF 格式的本地化文档集具有长度超过九个字符的软件包名称。要在运行 Solaris 7 或 8 软件的服务器上安装这些 PDF 文档集,必须先安装两个修补程序。
解决方法:有关如何安装这些修补程序的说明,请参见 Solaris 10 OS Documentation DVD 中的“Solaris 文档重要信息”文件。此文件位于以下目录中:
mount-point/README/locale/install_locale.html |
当为安装选择语言环境时,可能还会安装附加的相关语言环境。此行为变化发生在 Solaris 10 发行版中,因为所有的完整语言环境(带有已翻译的消息)、亚洲和日文部分语言环境以及语言环境启用程序已经根据语言环境的语言支持重新打包了。其他部分语言环境还是根据地理区域进行打包并安装的,例如中欧。
如果您使用具有多张 CD 的 Solaris Live Upgrade 安装 Solaris 10 发行版,则缺省情况下,Languages CD 将安装所有语言。
安装完成之后,如果您在与安装期间选择的语言环境不同的语言环境中登录系统,系统可能会显示乱码。在登录到任何一种这些语言环境之后,系统都将显示英文语言环境。
解决方法:在安装期间选择自定义安装选项。在 Languages CD 安装期间,取消选中所有不需要安装的语言。