本节介绍 Oracle Solaris 10 OS 中的系统管理错误。
在本发行版本中,sdbc 模块无法在引导时加载,并且会出现下列错误消息:
[ID 819705 kern.notice]/usr/kernel/drv/sparcv9/sdbc: undefined symbol WARNING: mod_load: cannot load module 'sdbc' |
解决方法:安装针对 SPARC 系统的修补程序 123246–07,以及针对 x86 系统的修补程序 123247–07。
运行 Oracle Solaris 10 9/10 访客的虚拟机 (VM) 可能出现以下问题:
一天时间时钟可能停止运行。
睡眠时可能挂起。
访客 VM 可能完全挂起。
解决方法: 解决方法是要求 Oracle Solaris 访客装入物理 CPU。按如下方式将域的虚拟 CPU 装入主机的物理 CPU:
# xm vcpu-pin domain vcpu cpus |
有关更多信息,请参见 xm(1) 手册页。
FKU 137137-xx 修补程序不支持第三方卷管理器软件,不过有一些例外的情况。缺少这种支持是由于 prepatch、postpatch 和 postbackout 实现导致的。如果您使用不受支持的第三方卷管理器软件,则无法应用 FKU 修补程序。在安装修补程序期间将显示以下错误消息:
unsupported root slice type xxxxx |
但是,支持 Fujitsu 和 Veritas 卷管理器软件。
解决方法: 无。
如果您在运行 Oracle Solaris 早期发行版的系统上挂载 Solaris 10 10/09 或更新发行版 DVD 介质,则会出现该错误。要在运行 Oracle Solaris 早期版本的系统上挂载 DVD 介质,请使用以下 vold 修补程序:
138130–01 for Oracle Solaris 10(SPARC 系统)
138131–01 for Oracle Solaris 10(x86 系统)
112966–07 for Solaris 9(SPARC 系统)
115021–05 for Solaris 9(x86 系统)
108968–12 for Solaris 8(SPARC 系统)
108969–12 for Solaris 8(x86 系统)
在缺省情况下,Solaris 10 10/09 DVD 不会在运行时挂载。不会显示任何错误消息。
解决方法: 请执行以下步骤:
成为超级用户。
禁用 vold:
在 Oracle Solaris 10 系统上:
# svcadm disable -t volfs |
在 Solaris 8 和 Solaris 9 系统上:
/etc/init.d/volmgt stop |
使用 # mount -F hsfs 块设备的路径 挂载点的路径命令手动挂载介质。例如:
# mount -F hsfs /dev/rdsk/c0t2d0s2 /mnt |
在具有 AHCI 兼容 SATA 控制器的系统中,BIOS 设置通常允许在 AHCI、传统或 RAID 模式中设置控制器。Oracle Solaris OS 支持 AHCI 和传统模式。
在 Oracle Solaris 初始安装之后,不得更改 BIOS 中的 SATA 模式设置。在 Oracle Solaris 升级之前或之后,也不得更改 SATA 模式设置。如果在安装 Oracle Solaris 10 后修改 SATA 模式 BIOS 设置,则系统将会重置并无法引导,且不会指出导致失败的原因。
解决方法: 如果由于更改 BIOS 设置而导致引导失败,请恢复回原始设置以引导 Oracle Solaris OS。
在大型文件系统(例如 ZFS)上运行时,使用 statvfs(2) 或 statfs(2) 获取有关文件系统状态的信息的应用程序会显示错误。将显示以下错误消息:
Value too large for defined data type |
解决方法: 应用程序应改为使用 statvfs64()。
在运行不识别区域的 Solaris 发行版的系统上,无法使用 patchadd -R 或接受 -R 选项的任何命令为安装了非全局区域的全局区域指定备用根路径。
与使用 luupgrade [-t、-T、-p、-P] 命令时显示错误消息不同,在这种情况下,不会显示与使用相应命令级限制有关的错误消息。
没有关于 -R 选项无效的提示。由于该命令执行失败,因此 Oracle Solaris 10 软件包或修补程序不会安装在任何已安装的非全局区域上。
安装和卸载软件包或修补程序时会发生此问题。
如果备用引导环境配置了非全局区域(而不是安装了非全局区域),则 -R 选项有效。但是,为了避免可能的问题,或者如果不确定是否有安装的非全局区域用作备用根路径,请在所有情况下限制使用 -R 选项。
有关更多信息,请参见以下手册页:
解决方法 1: 将 OS 至少升级到 Solaris 10 1/06 发行版。
如果运行的是 Solaris 10 3/05 发行版,请安装以下修补程序以便能够使用接受 -R 选项的命令来创建备用根路径:
Patch ID 119254-19(适用于基于 SPARC 的系统)
Patch ID 119255-19(适用于基于 x86 的系统)
解决方法 2:限制使用 patchadd -R 命令或任何接受 -R 选项的命令来创建备用根路径。
而是引导备用根(例如,Oracle Solaris 10 发行版)作为活动 OS。然后在不使用 -R 选项的情况下安装和卸载 Oracle Solaris 10 软件包和修补程序。
运行 Sun Patch Manager Tool 2.0 的系统可以管理运行包括 Sun Patch Manager Tool 1.0 的修补程序管理器工具的远程系统。
不过,使用早期版本的修补程序管理器工具的系统无法管理运行 Patch Manager Tool 2.0 的远程系统。早期版本包括:
Sun Patch Manager Base Software 1.x
Sun Patch Manager Tool 1.0
Solaris 8 OS 中不存在对修补程序管理器工具的“通用信息模型/基于 Web 的企业管理 (CIM/WBEM)”支持。因此,使用修补程序管理器进行远程管理不适用于 Solaris 8 系统。
如果使用 smdiskless 命令删除无盘客户机,该命令失败。无盘客户机未从系统数据库中删除。将显示以下错误消息:
Failing with error EXM_BMS. |
解决方法: 添加客户机前取消共享 /export 分区。
如果使用 smosservice delete 命令删除无盘客户机服务,该命令不能成功删除所有服务目录。
解决方法: 执行以下步骤。
确保不存在使用该服务的客户机。
# unshare /export/exec/Solaris_10_sparc.all # rm -rf /export/exec/Solaris_10_sparc.all # rm -rf /export/exec/.copyofSolaris_10_sparc.all # rm -rf /export/.copyofSolaris_10 # rm -rf /export/Solaris_10 # rm -rf /export/share # rm -rf /export/root/templates/Solaris_10 # rm -rf /export/root/clone/Solaris_10 # rm -rf /tftpboot/inetboot.sun4u.Solaris_10 |
从 /etc/bootparams 文件中删除以下项。
fs1-24 boottype=:os |
仅在此文件服务器不为任何其他服务提供功能或资源时删除此项。
从 /etc/dfs/dfstab 文件中删除以下项。
share -F nfs -o ro /export/exec/Solaris_8_sparc.all/usr |
修改 /var/sadm/system/admin/services/Solaris_10 文件。
如果文件服务器不是 Oracle Solaris 10,则删除该文件。
如果文件服务器是 Oracle Solaris 10,则删除前三行后的所有项。所删除的行表示 /export/root/templates/Solaris_10 中的服务 USR_PATH 和 SPOOLED ROOT 软件包和支持的平台。