存储 频道

征文专稿:4小时AIX起死回生记

    IT168“我的存储人生”原创征文活动正在火热进行,征文启事请看:IT168我的存储人生征文活动启动

    【IT168 征文专稿】因为公司的人员变动,我被调到实验室做设备管理员,根据部门经理的指示,我的职责就是维护和管理公司实验室的测试机器,以免机器因为长时间无人维护出现故障。

    公司实验室可说是公司进行测试和方案开发的重地,里面的机器是公司花费重金购置进来的,主要用于模拟用户的环境,进行方案测试、trouble shooting等等工作。因为公司人员对实验室机器的频繁使用,经常会出现由于误操作所导致的机器故障。所以在工作交接之初,我也开始详细检查所有机器的配置和运行状态。

设备检查,发现机器故障

    检查过程中发现一台IBM PSeries无法远程登陆,这是个不妙的信号,必须赶紧解决,要知道下午还有工程师预约实验室做方案测试呢。我先到机房查看了一下,发现这台机器的显示屏上面无显示,而液晶屏幕显示“E1F1”,不太了解什么意思,于是首先给IBM技术支持咨询代码究竟代表什么信息。

    要知道,AIX操作系统在启动时刻,是不往屏幕输出的,只是在液晶面板上用数字来显示启动信息。可是这些数字代表什么含义,普通用户又怎么会知道呢,网上的信息又很少,没办法,只好抄下来继续的PN号,给IBM客服打电话问问了。

    一通电话打到了IBM客户服务部,IBM客服人员却说:我公司当初在购买这批机器的时候,只买了一年的质保服务,而这批机器的销售日期是05年,所以不能提供服务了。狂晕,一般服务器都是三年的服务啊,我们居然只买了一年的质保。得了,这条路走不下去了,还是自己摸索吧。

找寻原因,文件系统故障
    在IBM碰了钉子后,我决定自己想办法解决这个问题。

    首先只能重启这台小型机。这里要特别提醒大家:如果大家的服务器出现故障,而且还在厂家的服务期之内,最好不要重启机器,这样可能会丢失一些信息,把故障原因隐藏起来。

    重启之后,液晶显示屏显示很多数字信息,都是正常启动信息。最后,机器显示“0555”,检查文件系统错误,然后就停在这里不动了。呵呵,估计文件系统损坏就是这台机器不能正常启动的原因了。怀疑之前有人非法操作,破坏了文件系统。一般来说,非法关机或者强行杀掉文件系统进程最容易产生这样的错误。

    虽然我不熟悉AIX,但根据我对Solaris和Linux的经验,决定先采用光盘引导。插入AIX5.2的引导盘,机器还真引导起来了,只是引导起来的机器无法使用。任何和硬盘打交道的操作都不能使用,比如touch,makdir这些命令全部无效,只能使用ls,date这些与硬件无关的命令,这样可不能算是可用的机器啊。

    察看启动日志和系统错误日志也都没有任何特别的提示。看来日志也不能帮我了。接着使用系统的自带的fsck修复文件系统,结果却提示我无法找到系统分区表,使用AIX自带的SMIT工具想查找问题原因,结果smit也无法启动,返回的错误代码显示无法在tmp分区下创建文件,看来在系统里面想要恢复是不太容易了。这时候时间已经过去2个多小时,要是不能尽快解决问题,就会影响公司方案开发进度。

    现在剩下的道路就是重装操作系统,因为文件系统是建立在操作系统之上的,重装操作系统自然会重配文件系统,那么这个问题就迎刃而解了。但是重装操作系统过于耗时,况且系统里面还有我们很多数据呢,相信天无绝人之路,于是开始上网苦搜信息。

反复试验,问题迎刃而解

    嘿嘿,果然老天不负苦心人,查阅了N多资料,并加上自己的摸索,最后终于解决了问题。在此我把我解决问题的步骤写下来与大家分享,并抛砖引玉,看看大家有没有更好的建议:

    1, 利用光盘引导系统启动;

    2, 在液晶屏幕出现“E1F1”的时候,按数字“5”;

    3, 按照屏幕的提示,等到下面的菜单出现在屏幕上“欢迎进入基本操作系统的安装及维护模式”,然后选择“启动维护模式恢复系统”;

    4, 这时屏幕将显示出维护菜单,选择“访问根卷组”,之后屏幕上将显示出一个警告信息,告知你如果不重新启动机器将不能够返回到基本的操作系统菜单,选择“0”继续;

    5, 这时候屏幕上将显示出操作系统中所有卷组的信息,我们可以根据数字,选择自己的根卷组;

    6, 然后选择“在挂载文件系统之前启动SHELL”,这样,SHELL命令就可以在挂载文件系统之前操作;

    7, 检查各个文件系统:
    fsck -y /dev/hd1
    fsck -y /dev/hd2
    fsck -y /dev/hd3
    fsck -y /dev/hd4

    8, 然后使用lslv命令来确定操作系统的启动硬盘。启动硬盘的名称将会被显示在lslv命令输出的 PV1 列。键入:
    # lslv -m hd1
    hd1:N/A
    LP PP1 PV1 PP2 PV2 PP3 PV3
    0001 0001 hdisk0
    说明hdisk0就是启动硬盘。

    9, 之后使用bosboot命令在启动硬盘上重新创建引导的映像文件
    # bosboot -ad /dev/hdisk0
    注意,hdisk0就是操作8所显示在PV1列的那个硬盘,不同用户可能不同。

    10, 之后再使用 bootlist 命令重新创建操作系统的启动列表
    # bootlist -m normal hdisk0 (同上)

    11, 使用下面的命令来查看设置好的启动顺序:
    # bootlist -m normal –o
    确认hdisk0是在第一行;

    12, 用下面的命令关机,然后重新按照正常的模式尝试从硬盘启动机器
    # shutdown –Fr
     经过这么多的操作之后,问题得到了解决,系统终于可以正常工作了。

    整个解决问题的过程,花费了4个小时。通过解决这个小问题,我发现AIX和其他的Unix操作系统还是有很多的不同的,而且不知道为什么,关于AIX维护的文章在网上还是很少的,不像Solaris或者Linux的资料丰富。希望通过这篇文章,可以起到抛砖引玉的作用,让大家可以共同交流AIX上面的故障处理,让别人少走一些弯路。

0
相关文章