附录 B


错误诊断

本章讨论常见的故障:

以下是 cfgadm 诊断消息实例。(此处不含语法错误消息。)


cfgadm: Configuration administration not supported on this machine
cfgadm: hardware component is busy, try again
cfgadm: operation: configuration operation not supported on this machine
cfgadm: operation: Data error: 错误文本
cfgadm: operation: Hardware specific failure: 错误文本
cfgadm: operation: Insufficient privileges
cfgadm: operation: Operation requires a service interruption
cfgadm: System is busy, try again
WARNING: Processor number failed to offline. 

 

有关其他错误消息的详细信息,请参阅以下手册页:cfgadm(1M)、cfgadm_sbd(1M)、cfgadm_pci(1M) 和 config_admin(3CFGADM)。


取消配置操作失败

如果在开始取消配置操作时系统状态错误,取消系统板或 I/O 板配置的操作可能会失败。

取消配置系统板故障

对于内存交错地分布在不同板上的板,无法取消其配置

对于其内存交错地分布在不同系统板上的系统板,试图取消其配置时,系统会显示如下的错误消息:


cfgadm: Hardware specific failure: unconfigure N0.SB2::memory: Memory is
interleaved across boards: /ssm@0,0/memory-controller@b,400000 

 

无法取消配置绑定了进程的 CPU

如果试图取消配置一个绑定了进程的 CPU,系统显示如下的错误消息:


cfgadm: Hardware specific failure: unconfigure N0.SB2::cpu3: Failed to off-line:
/ssm@0,0/SUNW,UltraSPARC-III 

 

single-step bullet取消进程对 CPU 的绑定,重试取消配置操作。

必须取消配置所有内存后,才能取消配置 CPU(仅适用于中型系统)

在尝试取消配置 CPU 前,必须取消配置系统板上的所有内存。如果在对板上所有内存取消配置前,试图取消配置 CPU,系统会显示如下错误消息:


cfgadm: Hardware specific failure: unconfigure N0.SB2::cpu0: Can't unconfig cpu 
if mem online: /ssm@0,0/memory-controller 

 

single-step bullet先取消配置板上所有内存,然后再取消配置 CPU。

无法取消配置具有永久内存的板上的内存

要取消配置具有永久内存的板上的内存,请将永久内存页移到另一块板上,该板应具有足够的可用内存以容纳这些永久内存。在取消配置开始之前,如上所述的附加的板必须是可用的。

无法重新配置内存

如果取消配置操作失败并显示如下消息,则不能取消配置板上的内存:


cfgadm: Hardware specific failure: unconfigure N0.SB0: No available memory 
target: /ssm@0,0/memory-controller@3,400000 

 

为另一块板添加足够的内存以便容纳永久内存页,然后重试取消配置操作。

single-step bullet确认内存页是否无法移动。

请在列表中查找单词 "Permanent"。


# cfgadm -av -s "select=type(memory)"

 
可用内存不足

如果取消配置失败并显示如下一种消息,则拆除板后将导致系统中的可用内存不足。


cfgadm: Hardware specific failure: unconfigure N0.SB0: Insufficient memory

cfgadm: Hardware specific failure: unconfigure N0.SB0: Memory operation failed

  

single-step bullet减轻系统上的内存负载并重试;如果可行,请在另一板插槽上安装更多内存。

内存需求增加

如果取消配置失败并显示如下消息,则在取消配置操作进行过程中内存需求增加:


cfgadm: Hardware specific failure: unconfigure N0.SB0: Memory operation refused

 

single-step bullet减轻系统上的内存负载并重试。

无法取消配置 CPU

取消配置 CPU 的操作是取消配置系统板操作的一部分。如果此操作未能将 CPU 脱机,控制台上会记录以下消息:


WARNING: Processor 编号 failed to offline. 

 

失败的原因:

无法断开板的连接

有可能发生这样的情况:在取消配置板后发现无法断开其连接。cfgadm 状态显示将此板列为无法分离。当板实际上提供的上是不能重新定位到其他板上的硬件服务时,便会发生这种问题。

取消配置 I/O 板失败

设备正被使用时,无法取消其配置或断开其连接。许多取消配置 I/O 板的失败是由于板上的活动尚未停止,或者 I/O 设备在停止后又处于活动状态。

设备忙碌

在尝试对板取消配置或断开连接前,连接到 I/O 板的磁盘必须处于空闲状态。如果板的设备仍处于使用状态,则禁止任何对该板取消配置/断开连接的尝试。

如果由于 I/O 板上有忙碌或打开的设备而导致取消配置的操作失败,则只对板进行了部分取消配置。此操作序列在遇到忙碌的设备时中止。

为重新获得对未取消配置的设备的访问,必须彻底取消配置,然后重新配置板。

如果板上的设备忙碌,系统在试图取消配置后会记录如下消息:


cfgadm: Hardware specific failure: unconfigure N0.IB6: Device busy: /ssm@0,0/pci@18,700000/pci@1/SUNW,isptwo@4/sd@6,0

 

要继续取消配置操作,请在卸载该设备后重试取消配置操作。在试图重新配置板前,板必须处于取消配置状态。

I/O 设备的问题

1. 使用 fuser(1M) 命令识别使设备处于打开状态的进程。

2. 正常中止 vold 守护进程。


 # /etc/init.d/volmgt stop

 

3. 断开与要取消配置的卡相关联的所有 SCSI 控制器的连接。

使用以下命令获取所有相连接的 SCSI 控制器列表。


 # cfgadm -l -s "select=class(scsi)"

 

4. 如果使用了 Solaris 卷管理器镜像的冗余特性来访问板所连接的设备,请重新配置这些子系统,以便通过其他系统板上的控制器访问该设备或网络。

5. 卸载文件系统,包括具有板驻留分区的卷管理器元设备。


# umount/分区

 

6. 从板驻留的分区中删除卷管理器数据库。

用户可以明确地选择卷管理器数据库的位置,您可以对其进行更改。

7. 删除所有 Solaris 卷管理器或 Veritas 卷管理器使用的专用区域。

默认情况下,Solaris 卷管理器在其控制的每个设备上都使用一个专用区域,因此在分离这些设备之前,必须使其脱离 Solaris 卷管理器的控制。

8. 从交换配置中删除磁盘分区。

9. 终止所有直接打开设备或原始分区的进程,或指示进程关闭板上打开的设备。



注 - 卸载文件系统可能会影响 NFS 客户机系统。



RPC 或 TCP 超时或连接丢失

默认情况下,两分钟后即超时。系统管理员可能需要增加超时值,以免在由 DR 导致的操作系统静止过程中超时,该过程有可能超过两分钟。静止系统可能会使系统及其有关的网络服务在超过两分钟的一段时间内不可用。这些变化既影响客户机也影响服务器。


配置操作失败

内存配置故障(仅适用于中型系统)

配置内存之前,必须先配置系统板上的所有 CPU。如果试图在一个或多个 CPU 未配置的情况下配置内存,系统会显示如下错误消息:


cfgadm: Hardware specific failure: configure N0.SB2::memory: Can't config memory if not all cpus are online: /ssm@0,0/memory-controller

 

I/O 板配置失败

配置操作可能因带有设备的 I/O 板当前不支持热插拔而失败。这种情况下,只对板进行了部分配置。此操作在遇到不支持热插拔的设备时停止。在这种情况下,必须先将板返回到未配置状态,然后再尝试配置操作。系统会记录如下所示消息:


cfgadm: Hardware specific failure: configure N0.IB6: Unsafe driver present: <device path>

 

single-step bullet要继续执行配置操作,请删除不支持的设备驱动程序,或将其替换为新版的支持热插拔的驱动程序。