系统崩溃故障排除
如果正在运行 Oracle Solaris 的系统崩溃,请为您的服务提供商提供尽可能多的信息,包括故障转储文件。
系统崩溃时应执行的操作
以下列表介绍了在系统崩溃时需要注意的最重要信息:
-
记录系统控制台消息。
-
如果系统崩溃,则使其再次运行可能会看起来像是您最紧迫的问题。但是,在重新引导系统之前,请先检查控制台屏幕上的消息。这些消息可能有助于了解导致崩溃的原因。即使系统自动重新引导且控制台消息已从屏幕中消失,您也可能能够通过查看系统错误日志(/var/adm/messages 文件)来检查这些消息。有关查看系统错误日志文件的更多信息,请参见如何查看系统消息。
-
如果您频繁遇到崩溃且无法确定原因,请从系统控制台或 /var/adm/messages 文件中收集可以收集的任何信息,并将其准备就绪以供客户服务代表检查。有关要为服务提供商收集的故障排除信息的完整列表,请参见系统崩溃故障排除。
-
查看系统崩溃后是否生成了系统故障转储。缺省情况下,会保存系统故障转储。有关故障转储的信息,请参见第 1 章。
-
如果系统在崩溃后无法引导,请参见《引导和关闭 Oracle Solaris 11.1 系统》中的"为进行恢复而关闭和引导系统"了解进一步的说明。
收集故障排除数据
请回答以下问题,以帮助查出系统问题。有关收集崩溃系统的故障排除数据的信息,请参见系统崩溃故障排除核对表。
表 3-1 确定系统崩溃数据
|
|
是否可以重现问题? |
这一点很重要,因为在调试很难的问题时,可重现的测试案例是必不可少的。通过重现问题,服务提供商可以使用特殊设备构造内核,以触发、诊断和更正错误。 |
是否使用了任何第三方驱动程序? |
具有相同特权的多个驱动程序在内核所在的同一地址空间中运行,如果这些驱动程序存在已知问题,则会导致系统崩溃。 |
系统在崩溃之前正在执行什么操作? |
如果系统在执行异常的操作,例如运行新的负荷测试或遇到特别高的负荷,则可能导致系统崩溃。 |
在系统崩溃之前,是否有任何异常的控制台消息? |
有时,系统会在实际崩溃前显示故障信号,此信息通常很有用。 |
是否向 /etc/system 文件中添加了任何调优参数? |
有时,调优参数(如增大共享内存段,以使系统尝试分配比实际拥有内存更多的内存)会导致系统崩溃。 |
问题是在最近开始的吗? |
如果是这样,问题是否与对系统的更改同时出现?例如新的驱动程序、新软件、不同工作负荷、CPU 升级或内存升级。 |
|
系统崩溃故障排除核对表
可在为崩溃的系统收集系统数据时使用此核对表。
|
|
系统故障转储是否可用? |
|
确定操作系统发行版以及相应软件应用程序的发行版级别。 |
|
确定系统硬件。 |
|
包括 SPARC 系统的 prtdiag 输出。包括其他系统的资源管理器输出。 |
|
是否安装了修补程序?如果已安装,请包括 showrev -p 输出。 |
|
问题是否可重现? |
|
系统中是否有任何第三方驱动程序? |
|
系统在崩溃前正在执行什么操作? |
|
在系统崩溃前是否有任何异常的控制台消息? |
|
是否向 /etc/system 文件中添加了任何参数? |
|
问题是在最近开始的吗? |
|
|