服务器常见故障的判断与维修(附案例)

时间:2022-06-23 09:29:08

相对PC机而言服务器出故障的机率是小多了,但是它的故障给企业也带来了一些影响。作为服务器工程师除要有服务器基础知识以外,还需要具备服务器故障的诊断思路,这样才能最快速的解决问题也可以减少故障停机时间。

本文并不是针对某个厂家服务器故障完全手册,而是根据个人经验总结出来的一些经验思路还有一些总结案例。按照下面思路和方法基本上能够解决目前服务器更换式维修的大多数问题。而且里面的一些操作风险性也不是很大,因为服务器本身就是坏的,最坏的情况下就是它一点都不能工作了呗,(主要确认是否有数据,数据无价啊)而且现在很多厂商都有自己的客服电话关于产品问题打个电话也很方便,所以安心做啦!

服务器常见故障的判断与维修(附案例)

当然如果服务器在保修期内就打电话让售后工程师上门服务,毕竟顾客就是上帝嘛,但是如果上帝比较着急使用,一般小故障自己解决一下就好了,因为一般报修最快都是第二天(大客户如银行等除外,一般当天还得是晚上才能停机解决)

目录:

一、服务器常见故障分类

二、服务器常见故障现象及其对应排错方法

三、服务器排错基本原则

四、服务器故障需要收集哪些信息

五、服务器硬件故障排错实例

六、服务器软件故障排错实例

七、服务器常见内存故障现象

一、服务器常见故障类型分类:

A. 开机无显示

B. 加电BIOS自检阶段故障

C. 系统和软件安装阶段故障和现象

D. 操作系统启动失败

E. 系统运行阶段故障

二、服务器常见故障现象及其对应的排除方法

A.服务器开机无显示(加电无显示和不加电无显示)

1. 检查供电环境

2. 检查电源和故障指示灯(故障指示灯状态,目前很多厂商的服务器都有故障指示灯,或故障诊断卡等。)

3. 按下电源开关时,键盘指示灯是否亮、风扇是否全部转动

4. 是否更换过显示器,尝试更换另外一台显示器

5. 插拔内存,用橡皮擦擦拭一下金手指,如果在故障之前有增加内存,去掉增加的内存尝试

6. 是否添加了CPU,如果有增加CPU尝试去掉

7. 去掉增加的第三方I/O卡包括Raid卡等

8.ClearCMOS (记得使用跳线来清除,尽量不要直接拔电池,每款服务器清除跳线位置不一致,具体找不到电话联系一下厂商客服)

9. 尝试更换主板、内存等主要部件

10.清除静电,将电源线等外插在服务器上的线缆全部拔掉,然后轻按开机键几下

B.加电BIOS自检报错

1. 根据BIOS自检报错信息提示

2. 查看是否外插了第三方的卡或者添加部件,如果有还原基本配置重启

3. 做最小化测试

4. 尝试清除CMOS

5. 看能否正常进入BIOS

C. 系统安装阶段故障和现象

1.查看服务器支持操作系统的兼容版本(从厂商能查到兼容性列表)

2.系统安装蓝屏(对蓝屏故障代码诊断)

3.安装在分区格式化的时候找不到硬盘

(阵列驱动没有安装或者没有配置阵列,可以尝试适应引导光盘安装)

4.大于2T的硬盘式应该如何分区(必须使用阵列卡才能实现或者有外插识别卡)

(使用阵列卡配置阵列分成一个小于2T的空间,一个大于2T的空间,然后将系统安装在小于2T的上面,安装好系统后在使用GPT方式分区即可)

5.安装过程是死机

(检查兼容性列表---查看硬盘接口选择是否正确---阵列驱动安装是否正确---尝试最小化配置安装检查是否为内存和CPU等问题)

6.引导光盘安装失败

(使用引导光盘安装失败,查看引导光盘版本是否匹配,尝试手动安装系统,如有阵列重新配置阵列引导安装)

D. 操作系统启动失败

1.在系统启动自检过程中有报错 (具体查看启动报错信息在定方案)

2.启动系统蓝屏(查看蓝屏代码核对)

3.进入登陆界面死机(查看进入单用户或者安全模式是否正常,进入BIOS是否正常、是否会死机,进入磁盘阵列查看阵列状态是否正常,检查测试硬盘是否有坏道,最小化配置启动)

4.忘记密码 (windows 使用PE 破解,linux 进入单用户破解)

E. 系统运行阶段故障

1.安装数据库等应用软件报错 (对系统版本和软件版本是否兼容,查看报错信息是否缺少插件)

2.系统运行速度变慢 (查杀病毒,检测阵列状态,测试硬盘有无坏道,重新安装系统或者修复)

3.运行蓝屏 (查看蓝屏代码目录)

4.运行死机 (检查进入BIOS是否死机,进入系统后测试部件温度是否正常,windows系统查看dump文件)

5.硬盘拷贝数据文件速度变慢 (测试硬盘是否有坏道,如果有阵列检查阵列状态,检查改变条带大小,与软件应用要求测试对比)

三.服务器故障排错的基本原则:

1. 尽量恢复系统出厂配置

a:硬件配置:去除第三方厂商备件和非标配备件

b:资源配置:清除CMOS、恢复资源初始配置

c: BIOS、F/W、驱动程序:升级最新的BIOS、F/W和相关驱动程序

d: TPL:扩展的第三方的I/O卡是否属于该机型的硬件兼容列表(TPL)

2. 从基本到复杂

a:系统上从个体到网络:首先将存在故障的服务器独立运行,待测试正常后再接入网络运行,观察故障现象变化并处理。

b:硬件上从最小系统到现实系统:指从可以运行的硬件开始逐步到现实系统为止。

c: 软件上从基本系统到现实系统:指从基本操作系统开始逐步到现实系统为止。

3. 部件交换对比测试

a:在最大可能相同的条件下,交换操作简单效果明显的部件

b:交换NOS载体,既交换软件环境

c:交换硬件,既交换硬件环境

d:交换整机,既交换整体环境

总结:

在服务器的维修中,线索都会显得扑朔迷离,有的甚至按起葫芦翘起瓢。一般来说不可能一次就可以准确地判断出问题的所在。这样就要求工程师要有信心和耐心。出现错误一般的方法都是根据经验优先使用最简单排错方法测试,如果没有解决问题再找其它因素进行测试。总之,服务器出错后必须一步一步解决,没有捷径可言。

四、服务器故障排除需要收集哪些信息

1.服务器信息:

①. 机器型号: 什么厂家的机器、什么型号如:DELL R720服务器

②. 机器序列号或主机编号(如:主机编号为NC00755666)

③. 是否增加其它设备,如网卡、Raid 卡、内存、CPU等

④. 硬盘配置,如是否做磁盘阵列, 阵列级别

⑤. 安装什么操作系统及版本(win2003、Redhat等)

⑥. 在故障前有没有做过操作、或者运行了什么软件

⑦. BIOS 版本

2.故障信息:

①. 在POST自检时,屏幕显示的异常信息

②. 服务器本身指示灯的状态

③. 报警声和BEEP CODES

④. 系统的事件记录文件

⑤. Sel 日志

五、服务器硬件故障处理实际案例

(因厂家机型不同,在实际问题中如果遇到相似现象,也需要具体问题具体分析,请不要盲目套用)硬件故障是指服务器硬件出现异常而导致的各类错误,由于服务器构成比较复杂,因此在检查的时候必须认真、仔细。

实例一:

有一台XXX型号服务器,配有256M内存,使用一个PIIIXEON 500带2M高速缓存的处理器。

开机后没有任何显示,但系统日志上提示了一条CPU电压为0伏的信息,系统指示灯三灯不停在闪烁(指示灯三灯闪烁是服务器的另一种报警方式,我会在文后说明)。这种错误一般是处理器电压调节模块(VRM)出错或CPU出错或CPU与CPU板块接触不良,但也可能是CPU板块出错,这时情况就比较复杂了,必须经过认真慎重的思考。

因为CPU板块在整个服务器中,占有举足轻重的地位,如果它出错服务器是会报致命错误的,并且在系统日志中会提示致命错误,但报CPU电压报错的情况也有5%左右。我们立刻把CPU调换在另一CPU插槽中,开机后依然是刚才的那种故障。所以在初步判断中,可以排除是CPU板块坏。这时取出CPU仔细擦拭金手指,以及CPU板块中与CPU接触的地方后,开机依然无显示。相对处理器坏的情况来说处理器电压模块(VRM)出现故障的情况比较大。于是立即在另一台同型号服务器中取下一个处理器电压模块,安装在此服务器中。开机后,服务器依然没有任何显示,系统日志上依然提示CPU电压为0伏的信息,系统指示灯三灯依然不停在闪烁。这时的情况就比较明显了。于是立即从另一台同类型服务器中取下一个CPU安装后,开机正常。

实例二:

有一台XXX型号服务器不显示,发现开机时系统日志没有任何信息,且系统指示灯不亮。初步判断是电源方面出现了错误。经过仔细检查,发现服务器的电源是正常的,因此最大的可能就是服务器的电源管理板出现故障。更换电源管理板后,开机显示正常。但这时,新的问题来了:自检时,用CTRL+M不能检测到硬盘。

硬盘在别的服务器上是正常的,因此立即清除此服务器的CMOS,但依然不正常。立刻上网找到此服务器的最新BIOS,升级BIOS后也不能解决问题。又检查硬盘笼子和服务器里的数据线及电源线后依然出错。这时,一般情况会怀疑是服务器的I/O板(输入输出板块)有问题。但就在这个时候,工程师发现在I/O板上有一个非XXX型号服务器标配的旧式网卡,立即去除此网卡后服务器就一切正常。

硬件故障并不单单指硬件有问题,它也指硬件之间不兼容。因为服务器的正常运作需要各部件之间的大力协调。建议大家在采购各元件时,都采用同一品牌原装的,并且要采用能发挥服务器性能的元件(上例中的旧式网卡即使正常也会严重影响服务器性能),这样才不会发生莫明其妙的故障。

实例三:

用户需要把他的XXX型号服务器升级到双网卡,我建议他购买原装网卡,但当他看到XXX型号服务器的网卡是采用的INTEL 82559芯片后,断然决定不使用原装网卡而采用另一品牌也采用INTEL82559的网卡。过了几天,他打电话给我说,他的新网卡不能使用网络冗余及数据校验,并怀疑服务器有问题。工程师带了一个INTEL 82559网卡到用户那里,仔细检查了服务器的环境完全正常后,把INTEL82559网卡安装到机器上后一切正常。这个例子更加说明了,要发挥服务器的最大性能及功能,必须使用原品牌原装的配件。非原品牌非原装的配件,不能支持服务器的某些功能,严重的会影响到服务器的正常使用。

要避免硬件故障发生频率,服务器管理人员必须注意服务器的使用环境完全正常。比较重要的服务器必须在恒温、恒湿的环境;电压也要符合,不仅要采用UPS,还必须接地线,必须是左零线、右火线,零地电压在1~3伏。在开、关服务器上必须符合正常的流程。工作人员必须严格执行操作流程。

实例四:

服务器故障现象:

一台XXX型号服务器,近期频繁出现几次蓝屏幕死机故障。趁死机关闭的机会,

将内存由原来的128M升级到512M(普通内存),并且在系统CMOS设置中选择装入(Load)最优参数设置,对内存每个单元进行检测。怪异服务器故障出现了,当我开机后,内存检测正常,但是屏幕提示须重新SETUP,按指定的 [F2]键后却死机。我装个内存条招谁惹谁了,怎么会死机?而且内存检测正常啊?

服务器故障处理:

服务器出了故障就要解决,哪怕是怪异服务器故障。按照缩小故障源的思路,换回原来的内存条,逐步去掉各个部分(软驱、硬盘、光驱等),可是这个怪异服务器故障依然存在。分析可能与系统SETUP设置有关,特别是关于对内存每个单元进行检测的设置。于是,拔出电池,对电池插脚短接放电,没有奏效。看来,这个怪异服务器故障还真是顽固。后来,找到主板清除CMOS跳线设置,将插脚线由1-2改到2-3一会儿,然后恢复原位,开机正常(提示:不要轻易拔出电池,而是要找CMOS清除跳线)。再次将内存升级,调整CMOS SETUP设置,特别注意到对内存的检测,设置为检测到每兆,至此系统完全恢复正常。

服务器故障经验

这个怪异服务器故障发生的根本原因是服务器的内存缺省设置为ECC(带校验),由于使用普通不带校验的内存,而系统中设置每个单元都进行检测,所以导致了上面的故障。排除的方法是清除CMOS设置,调整有关参数设置。另外CMOSSETUP装入最优参数设置通常有2种:一种是 BIOS优化参数,这种参数稳定性最好;另一种是SETUP优化参数,优化整个系统,但是需要系统支持,其稳定性不能保证最好。所以,当系统出现故障时,不妨先将稳定性最好的参数装入,解决问题后再行

实例五:

一台XXX型号服务器 使用8708E的raid 卡 在读取某个文件或运行某个软件时经常出错,或者要经过很长时间才能成功,其间硬盘不断读盘并发出刺耳的杂音,这种现象意味着硬盘上载有数据的某些扇区已坏。

一旦硬盘有比较刺耳的杂音可以尝试使用HD软件来测试硬盘时候有坏道,进入ctrl+H配置界面进行查看,阵列是否降级

六、服务器常见软故障解决思路与实例

服务器软件故障是在服务器故障中占有比例最高的部份,约占70%,解决的过程必须更加深思熟虑。导致服务器出现软件故障的原因有很多,最常见的是服务器BIOS版本太低、服务器的管理软件或服务器的驱动程序有BUG、应用程序有冲突及人为造成的软件故障。

下面分别举例说明各类软件故障的维修方法。

实例一:

有一台XXX型号服务器,配置为双PIII500带521K高速缓存的CPU、512M内存。开机后,系统日志报电压调节模块异常(VRM)的错误,报错的信息是:“Voltage Regulator Module(VRM) over/under-voltage 2.88V/0V”。从表面来看,极有可能是服务器的电压调节模块或其它硬件出现故障,极容易导致维护人员认为是硬件故障。维护人员立刻使用其它同类型服务器的硬件来测试,发现即使使用新的配件,此服务器依然报VRM错。就在一筹莫展的时候,维修工程师带来了最新的CPU管理板(CPU Management Control)的固件(FIRMWARE),于是升级了CPU管理板块的FIRMWARE后,服务器恢复立即正常。

FIRMWARE升级方法是每个厂家的服务器都有专门的firmware升级方法和软件,以联想为例,一般需要使用PE或dos环境下使用专门的升级软件来使用,任何一款服务器的FIRMWARE及BIOS都会有不同的BUG,因为BUG在所难免,所以我们不能错误地认为服务器的BIOS程序就很完善,最新的不是一定是最好的最稳定的才是最好的,在升级之前应该小心谨慎,升级了错误的版本和使用错误的步骤会导致机器彻底的黑屏和瘫痪。

目前流行的中高档服务器都拥有强大的管理程序,为客户提供了方便的管理途径;服务器也拥有各种操作系统下的驱动程序,方便了客户在各种操作系统中的使用。但是,世上任何一款程序都会有一些BUG,这些BUG将影响用户使用。但是服务器厂商总是会在第一时间内开发出新的程序,客户只需要及时更新这些程序就可以避免这类故障。

当服务器的软件故障为此类时,表现的现象也不尽相同。一般来说,管理程序BUG会导致系统速度变慢,CPU占用率变高,无法正常使用某些功能等;驱动程序的BUG会导致死机、与某些软件有冲突,磁盘工作不稳定等。查看管理程序是否出错的最好的办法就是在系统中首先禁止此类管理工具,再观察服务器是否还是异常。由于管理工具是随着系统启动而启动的,所以应首先避免它的启动。以WINDOWS NT4为例,就首先在管理工具服务中禁用某些服务器软件服务,再修改注册表中的启动项即可。如果是驱动程序有问题的话,就以安全模式进入系统,看是否正常。但是需要注意的是,在安全模式中,系统速度变慢是正常的(特别是磁盘I/O方面)。

服务器的维护人员就应该经常在服务器网站上下载最新的管理工具程序及驱动程序。这样会减少很大一部份软件故障的发生。相比之下,软件冲突造成的故障判断比较困难,需要管理人员有比较丰富的经验以及敏锐的观察力。

实例二:

一位用户说,他有一台XXX型号服务器无法安装SQL SERVER 2000,已经重装N次NT了,排除是系统故障。而这唯一的服务器又将作为非常重要数据库服务器,因此非常着急。于是维修工程师去了他的公司查看。这台服务器所在的机房是非常标准、完善的机房,检查了这台服务器的情况,发现并没有硬件上的故障,于是排除了光驱读盘力差的可能。

但是,用户刻的SQL SERVER 2000光盘引起了工程师的怀疑,工程师让他拿出了正版的SQL SERVER安装,结果还是不行。在安装的过程中,没有出现丝毫错误,可就是在运行的时候会自动退出,没有任何提示。但是,我在管理工具中的事件查看器的系统日志中却发现了一条信息:windata.exe导致一个无效的数据溢出。Windata是用户自己编写的一个程序,而且是随操作系统启动而启动的程序。立即结束掉这个进程后,再运行SQL一切正常。

对于此类软件故障,操作员最好先查看有关的日志,看看系统中是否有可疑的进程。目前的服务器无论是高端还是低端,对于SQL等标准程序的支持是相当可靠的,所以排除的重点就是结束可疑进程。

还有一种软件故障是人为因素造成的,它一般是人为误操作(包括没按操作流程的操作)、意外关机(包括电源突然不供电)或非正常关闭应用程序造成的。

人为误操作因素只要加强管理都可以避免此类故障发生。在这里就详细说明意外关机或非正常关闭程序造成故障的方法。正常关闭系统程序非常重要,尤其是WEB服务器,一个用户就是因为没有正常关闭系统程序而经历了一次数据损坏甚至丢失的经历。

七、服务器常见内存故障现象实例

服务器常用部件除了硬盘以外就是内存了,内存为服务器主要部件以个人经验来讲它一旦出现问题不是很好来判定,因为服务器一般来讲都会由阵列功能的,一旦硬盘故障硬盘前面板会有指示灯,没有指示灯的在阵列的配置界面里面也会看到有降级或者硬盘离线的报错信息的。实在不行我们还有很多像HD等硬盘检测工具来给我们现场使用。但是内存不是很好来观察只能通过一些经验现象来判定。下面列出一些内存常见问题现象供大家参考。

常见故障一:开机无显示

内存条原因出现此类故障一般是因为内存条与主板内存插槽接触不良造成,只要用橡皮擦来回擦试其金手指部位即可解决问题(不要用酒精等清洗),还有就是内存损坏或主板内存槽有问题也会造成此类故障。由于内存条原因造成开机无显示故障,主机扬声器一般都会长时间蜂鸣(针对Award Bios而言)。

常见故障二:Windows注册表经常无故损坏,提示要求用户恢复

此类故障一般都是因为内存条质量不佳引起,很难予以修复,唯有更换一途。

常见故障三:Windows经常自动进入安全模式

此类故障一般是由于主板与内存条不兼容或内存条质量不佳引起,常见于高频率的内存用于某些不支持此频率内存条的主板上,可以尝试在CMOS设置内降低内存读取速度看能否解决问题,如若不行,那就只有更换内存条了

常见故障四:随机性死机

此类故障一般是由于采用了几种不同芯片的内存条,由于各内存条速度不同产生一个时间差从而导致死机,对此可以在CMOS设置内降低内存速度予以解决,否则,唯有使用同型号内存。还有一种可能就是内存条与主板不兼容,此类现象一般少见,另外也有可能是内存条与主板接触不良引起电脑随机性死机。

常见故障五:内存加大后系统资源反而降低

此类现象一般是由于主板与内存不兼容引起,常见于高频率的内存内存条用于某些不支持此频率的内存条的主板上,当出现这样的故障后你可以试着在COMS中将内存的速度设置得低一点试试。

常见故障六:运行某些软件时经常出现内存不足的提示

此现象一般是由于系统盘剩余空间不足造成,可以删除一些无用文件,多留一些空间即可,一般保持在300M左右为宜

常见故障七:从硬盘引导安装Windows进行到检测磁盘空间时,系统提示内存不足

此类故障一般是由于用户在config.sys文件中加入了emm386.exe文件,只要将其屏蔽掉即可解决问题