AIX 部分故障判断及解决方法

简介:

AIX 部分故障判断及解决方法
(分享自http://www.talkwithtrend.com/Topic/117/blog)
一. 故障的定义

弄清楚系统发生了什么问题?

系统现在能做什么?不能做什么?

故障什么时候发生的?

有没有做平时不同的操作?

故障有没有规律?定时还是不定时?发生的频率有多高?

是一台机器出现故障还是多台机器故障?故障现象是否相同?

最近有没有做改动?如安装了新的硬件、软件,改变了系统的一些设置。

检查机器是否存在故障

一般情况下,可以通过以下几种方法来收集错误信息

1、查看机器各种指示灯状态

机器上有许多指示灯即时说明机器运行的状态,这些指示灯的状态可以作为判断机器是否有故障的一个依据。当指示灯的状态不正常时,需要引起注意。比如,当机器警告灯亮的时候,一般都是机器的硬件出现问题,需要查看系统报错日志来查看具体的错误信息。

2、查看系统故障记录收集信息

errdemon 进程在系统启动时自动运行,记录包括硬件、软件及其他操作信息。故障记录文件为/var/adm/ras/errlog,可备份下来或拷贝到别的机器上分析。

也可以使用errpt 命令来查看(普通用户权限也可使用)

#errpt |more 列出简短出错信息

ERROR_ID TIMESTAMP T C RESOURCE_NAME ERROR_DESCRIPTION 
192AC071 0723100300 T 0 errdemon Error logging turned off 
0E017ED1 0720131000 P H mem2 Memory failure 
9DBCFDEE 0701000000 T 0 errdemon Error logging turned on 
038F2580 0624131000 U H scdisk0 UNDETERMINED ERROR 
AA8AB241 0405130900 T O OPERATOR OPERATOR NOTIFICATION

TIMESTAMP: MMDDHHMMYY (月日时分年) 
T(类型): P 永久;T 临时; U 未知(永久性的错误应引起重视) 
P:Permanent;T:Temporary;U:Unknow。
C(分类):H 硬件;S 软件;O 用户; U未知 
H:Hardware;S:Software;O:;U:Unknow。

#errpt -d H 列出所有硬件出错信息

#errpt -d S 列出所有软件出错信息

#errpt -aj ERROR_ID 列出详细出错信息

errpt -aj 0502f666 <--- ERROR_ID用大小写均可

例: 
LABEL: SCSI_ERR1 
ID: 0502F666 
Date/Time: Jun 19 22:29:51 
Sequence Number: 95 
Machine ID: 123456789012 
Node ID: host1 
Class: H 
Type: PERM 
Resource Name: scsi0 
Resource Class: adapter 
Resource Type: hscsi 
Location: 00-08 
VPD: <--- Virtal Product Data 
Device Driver Level.........00 
Diagnostic Level............00 
Displayable Message.........SCSI 
EC Level....................C25928 
FRU Number..................30F8834 
Manufacturer................IBM97F 
Part Number.................59F4566 
Serial Number...............00002849 
ROS Level and ID............24 
Read/Write Register Ptr.....0120 
Description 
ADAPTER ERROR 
Probable Causes 
ADAPTER HARDWARE CABLE 
CABLE TERMINATOR DEVICE 
Failure Causes 
ADAPTER 
CABLE LOOSE OR DEFECTIVE 
Recommended Actions 
PERFORM PROBLEM DETERMINATION PROCEDURES 
CHECK CABLE AND ITS CONNECTIONS 
Detail Data 
SENSE DATA 
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000

3、控制面板上的LED 代码

一般为8 位代码,通常系统故障灯会同时亮起。某些机型还会同时显示故障设备位置代码。

4 位代码,通常是Exxx。

3 位代码,通常为0yyy,只看后3位。

8 位和4位代码可查看系统服务手册 (Service Guide)。

3 位代码可查看系统诊断手册(Diagnostic Information for Multiple Bus System)。

闪动的 888, 系统崩溃,硬件或软件原因造成。按reset 键会显示更多内容。

888-102 一般为软件故障(888-102-207 例外) 。系统会产生一个dump。

888-102-xxx-0C9 系统正在做dump, 请等待。

888-102-xxx-0C0 系统dump完成,可关电重启。

888-103 或 105 硬件故障,一般有 SRN 代码及位置代码。

4.SMS (SystemManagement Service) 故障记录

当主控台出现键盘图标后(LED 显示E1F1时)按1键。进入SMS 菜单

选择"Utilities"

选择"Error Log", 抄下8位故障代码(在SMS 中还可以更改系统启动顺序表)

5.MAIL

#mail

系统会向root用户发mail报告出错信息。通常系统出现故障后没有进行检查修复,系统会定时提醒root。

6.运行故障诊断程序(Diagnostic),对系统硬件进行检查和诊断。

当发现有硬件故障时应立即使用diag

#diag

选高级诊断(Advance Diagnostic)

选问题诊断(Problem Determination) 或选系统检查(System Verification) (选PD 会对系统错误记录进行分析)

diag运行后会给出SRN 代码,故障设备名称及百分比,地址代码等。

对于PCI机型应在系统报错7天之内运行diag程序对出错记录里的sense数据进行分析。

7.查看系统重要记录日志

在某些情况下,系统的错误日志无法记录一些错误信息,这时,就需要查看相关的系统日志。这些日志包括系统启动日志,smit日志,HACMP切换日志等等,以下对这些日志进行说明。

a、系统启动日志

系统启动日志记录系统在启动过程中的详细信息,包括设备识别,内核加载,文件系统装载,后台进程的启动等信息。这些信息在错误日志没有完整的记录,但是通过查看启动日志,可以得到详细的信息。查看系统启动日志的命令为:alog - o - t boot

b、smit.log

smit.log记录了通过smit菜单执行命令的过程和结果信息。通过查看smit.log可以知道在系统上进行操作的历史信息,查看这些命令执行的结果是否正常,从而判断是否存在隐患或故障。Smit.log在系统根目录下,通过cat命令就可以查看。

c、HACMP.OUT

Hacmp.out文件记录HACMP发生切换时候的详细过程和结果信息。查看hacmp.out文件可以知道系统出现什么原因而引起切换,从而判断是否有故障发生。

二、判断故障类别

1.硬件故障

通常将硬件故障分为以下几个类别:

IBM 小型机故障定位方法包括小型机I/O柜上的显示面板上的Checkpoints信息,Error Code 和SRN。

Checkpoints 检查点是系统加电CMOS初始化程序(initial program load (IPL))运行后显示在 I/O柜的显示面板上一系列信息。

IPL 流程

当交流电源接到系统后,IPL流程就开始了,IPL流程包括四个步骤:

Phase 1: ServiceProcessor 的初始化

Phase 1 开始于交流电源接到系统后,直到OK显示在I/O柜上的显示面板上为止。在这个步骤会显示 8xxx 或9xxx checkpoints代码 。

Phase 2: 由 ServiceProcessor 引导的硬件初始化

Phase 2 开始于按下I/O柜上的白色电源开关。在这个步骤会显示 9xxx checkpoints 。91FF 是最后的代码标志着第三步骤的开始

Phase 3: 系统固件的初始化

在 Phase 3, 一个系统处理器接管控制并继续初始化系统资源, 在这个步骤会显示Exxx。E105是最后的代码标志着第四步骤AIX启动的开始。在这个过程中还会显示各种位置码(位置码代表着系统的每一个部分)

Phase 4: AIX 启动

当AIX开始启动时,显示面板上的代码为 0xxx ,同时位置码会出现在第二行。当AIX的登录窗口出现在控制台上时第四步骤结束同时显示面板上再无任何信息出现。

Error Code

当系统运行有错误发现时,一个8位码会显示在显示面板上,同时在第二行显示相对应问题硬件的位置码。

SRNs (Servicerequest numbers,服务请求码 )

当系统运行有错误发现时,SRNs码会以 xxx-xxx的形式显示在显示面板上,同时在AIX的error log中也会有记载。用diag命令进行检测,diag步骤如下:

#diag

选高级诊断(Advance Diagnostic)

选问题诊断(Problem Determination) 或

选系统检查(System Verification) (选PD 会对系统错误记录进行分析)

diag运行后会给出SRN 代码,故障设备名称及百分比,地址代码等。

2. 操作系统故障

系统无法正常操作,命令无法正常执行,或者系统频繁地报系统问题,都有可能是操作系统故障造成的。软件故障情况错综复杂,下面列举几个常见案例的故障处理方法。

1)文件系统空间不够。

查看有没有“满”的文件系统。特别是/、/var、/tmp,不要超过90%。文件系统满可导致系统不能正常工作,尤其是AIX的基本文件系统。如/ (根文件系统)满则会导致用户不能登录。用df –k 查看。

df -k (查看AIX的基本文件系统)

Filesystem 1024-blocksFree %Used Iused %Iused Mounted on 
/dev/hd4 24576 1452 95% 2599 22% / 
/dev/hd2 614400 28068 96% 22967 15% /usr 
/dev/hd9var 8192 4540 45% 649 32% /var 
/dev/hd3 167936 157968 6% 89 1% /tmp 
/dev/hd1 16384 5332 68% 1402 35% /home

除/usr文件系统,其他文件系统都不应太满,一般不超过80%。

处理方法1:删除垃圾文件

du-sk * |sort -rn |head

查找出当前目录下占空间最大的子目录,逐层往下直到找出占空间最大的文件。(要区分哪些目录是文件系统的 mount point,哪些是文件系统的子目录)删除文件,释放空间。有时删除文件后空间并不马上释放,这是由于你删除的文件正被某个程序打开。只有当这个程序停止后空间才释放,有时甚至需要重启系统。

处理方法2:增加文件系统大小

#smitty chjfs 或 命令(速度快一些)

文件系统可以在任何时候加大,前提是卷组(VG)中有剩余空间。

2) 检查文件系统的完整性

#umount filesystem_name

fsck -yfilesystem_name

注意:文件系统必须先umount,再做检查和修复,否则可导致未 
知的后果。

3)查看卷组信息(lsvg -lvg_name)

有没有"stale"状态的逻辑卷。若有,用syncvg 命令修复"stale"逻辑卷。

stale[steil] n. (牲畜等的)尿 adj.不新鲜的, 陈腐的, 疲倦的, 陈旧的 vt. 使变旧, 走味 vi.变陈旧, 变无味, 失时效, 撒尿。

4)检查内存交换区(paging space)使用率(lsps -s)

使用率是否超过70%。

若有则用

chps –sX pgname 增加X个PP

或用

mkps –a –n –sX myvg 在myvg上增加一个PP数为X的内存交换区。

  1. 外连设备故障

与RS6000机器相连的其他设备发生故障时,会对主机造成影响,从而引发故障。比如网络交换机故障,外置存储故障等等。

常见故障记录汇总:

1)7133硬盘故障

故障:在AIX系统中用#errpt –aj|more命令查看到有描述为“pdiskx error” 级别显示为“H”类型显示为“P”。

分析:含有该报错的服务器所连接的存储可能发生物理硬盘损坏的故障。

用户可以用以下命令察看7133RAID的状态:

在AIX系统中用#smitty ssaraid

List Status of all Defined SSA RAIDArrays

当RAID中的硬盘出现问题时,此RAID的状态是“degraded”

可用以下命令判断 硬盘是否被阵列(Array)剔除(reject):

在AIX系统中用#smit ssaraid

List/Identify SSAPhysical Disks

List Rejected ArrayDisks如果看到pdiskx被阵列剔除,说明该pdiskx存在物理故障。

解决:更换该pdiskx的物理硬盘

2)机器电源故障

故障:查看IBM 服务器如果前面板上有黄色报警灯亮起,并且在服务器电源处电源灯亮黄色报警灯或者有不正常闪烁。在在AIX系统中用#errpt –aj|more命令查看到有描述为“power error”级别显示为“H”类型显示为“P”。

分析:按照该ERRPT报错信息与服务器面板及其电源外部报警灯显示情况,可以确定服务器电源出现硬件故障,必须进行更换。按照服务器的不同机器类型可以采取停机更换电源和不停机更换电源的方法。

解决:更换该出现故障的电源。

3)机器环境故障

故障:在AIX系统中用#errpt –a|more命令查看到有描述为“TEMPERATURE UNACCEPTABLE”级别显示为“H”类型显示为“P”。

分析:按照该ERRPT报错信息可以确定服务器运行的环境不在健康的环境中,机房温度过高,不符合在20摄氏度的环境中。

解决:使服务器所在的机房环境达到20摄氏度恒温状态。

4)文件系统故障

故障:在AIX系统中用#errpt –a|more命令查看到有描述为“FILE SYSTEM CHECK REQUIED”级别显示为“H”类型显示为“P”。并且说明某个文件系统需要用fsck命令进行check。

分析:按照该ERRPT报错信息可以确定该文件系统存在故障,需要人工对其文件系统进行fsck操作,从而确保数据的安全性、可靠性和可用性。

解决:停应用后进行fsck该文件系统。

5)内置硬盘故障

故障:发现硬盘无法进行写操作。

分析:对数据库所在的物理硬盘进行写文件操作,如果写文件操作失败,从而确定该物理硬盘有故障发生,必须及时更换。

解决:停数据库后进行物理硬盘的更换。

6)SSA卡电池故障

故障:在系统中用errpt命令查看错误日志,发现有大量ssa adapter报错,错误级别显示为“H”类型显示为“P”。错误信息为ssa adapter performance degrade。

分析:对ssaadapter 运行diag,返回SRN代码为4252A。根据IBM资料,信息如下:

4252A Description: Thesupply voltage to the Fast-Write Cache Option Card is 
low. The card has switched to Self-Refresh mode. 
Action: In the sequence shown, exchange the FRUs for new FRUs. 
Possible FRUs: 
Fast-Write Cache Option 
Card (90%) (“Removing the 
Fast-Write Cache Option 
Card of an Advanced 
SerialRAID Adapter” on 
page 332). 
SSA adapter card (10%)

根据此信息,判断是raid卡上cache电池电量不足,需更换电池。

7)磁带机故障

故障:磁带机面板上亮黄灯。

分析:磁带机磁头脏,导致读盘不正常,或无法读盘。

解决:用清洗带清洗磁头。

8)文件空间无法释放

故障:某个日志文件不停增大,在线清空文件后,空间仍未释放。

分析:在线清空文件时,系统对文件存储指针(i-node)没有被更新,所以空间没有被释放

解决:umount该文件所在的文件系统,对该文件系统进行fsck -y即可。

9)机器启动故障

故障:机器重新启动之后,IP地址没有被加载,tcp/ip的后台进程没有启动 。

分析:查看系统boot日志(alog –o –t boot),发现系统启动调用rc.net 文件时报错,错误信息为permission denied,检查rc.net的权限,发现已被更改,无执行权限。

解决:将rc.net的权限更改为544 101 100 100 。

10)LPAR启动故障

故障:一台P630,划分两个lpar,发现只能同时启动一个lpar,另外一个lpar无法启动,错误信息为already has a service authority partition 。

分析:在partition属性中有一个service authority的选项,选上之后说明微码升级时是通过该分区进行。一台机器的所有lpar上只能有一个分区有这个选项属性。查看两个分析属性之后,发现两个分区都有这个属性,所以引起冲突,只能有一个可以启动。

解决:将一个分区的service authority属性去掉。

11)镜像文件系统故障

故障:系统中有stale状态的文件系统。

分析:文件系统的状态有:open, closed, syncd, stale。前两项代表当前文件系统是否可以访问,后两项代表文件系统数据是否完全。Syncd是指数据已同步这个应该是正常时显示的,stale是指文件系统数据未同步,这种状态是不正常的。

解决:用命令修复"stale"逻辑卷。









本文转自shangshanyang51CTO博客,原文链接: http://blog.51cto.com/qqran/2071927,如需转载请自行联系原作者



相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
1月前
|
Shell Linux C语言
【Shell 命令集合 磁盘维护 】Linux 用于检测和标记坏扇区(bad blocks)mbadblocks命令使用教程
【Shell 命令集合 磁盘维护 】Linux 用于检测和标记坏扇区(bad blocks)mbadblocks命令使用教程
27 0