欢迎来到天天文库
浏览记录
ID:41063853
大小:36.00 KB
页数:4页
时间:2019-08-15
《Linux系统死机的软硬件问题分析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Linux系统死机的软硬件问题分析 系统出现死机,一般分为两种情况:一是硬件问题;二是软件问题。 一、硬件问题 可以考虑分析以下几点: 1、不要超频CPU,如果已经超频的先回复到原来的频率 虽然平时运行没有问题,但可能在高负载的使用中就会出现不可预料的故障了。特别是Linux系统在某些应用上,是可以把硬件的性能发挥到极限的,但这样的硬件运行Windows可能是没有问题的。 2、确认电源供电充足 必须确保在高负载的状态下,电源可以满足负载。 3、使用memtest86检查内存状态 4、恢复BIOS到默认状态 对于服务器,可以使用自带的监
2、测工具进行测试,也是一个不错的排错方法。 二、软件问题 如果已经基本排除硬件问题,那我们就必须考虑从软件上去获得死机状态的系统信息了。 1、运气足够好的话,系统死机不一定是完全死掉(此时键盘可能还能响应),那我们就可以使用Sysrq大法。 前提是我们必须先打开sysrq功能: #echo"1">/proc/sys/kernel/sysrq #setterm-blank 这样,当系统出现问题的时候,我们可以使用: 引用 Alt+Sysrq-T获得进程系统堆栈信息 Alt+Sysrq-M获得内存分配信息Alt+Sysrq-W获得当前寄存器
3、信息 *m-导出关于内存分配的信息 *t-导出线程状态信息 *p-到处当前CPU寄存器信息和标志位的信息 *c-故意让系统崩溃(在使用netdump或者diskdump的时候有用) *s-立即同步所有挂载的文件系统 *u-立即重新挂载所有的文件系统为只读 *b-立即重新启动系统 *o-立即关机(如果机器配置并支持此项功能) 更多的热键可以参考系统上的/usr/src/linux/Documentaion/sysrq.txt 其中,setterm-blank可以关闭字符下定时黑屏保护,方便记录屏幕信息。 2、为了让屏幕显示更多的内核调
4、试信息,可以修改控制台的显示模式为80x25,在/boot/grub/menu.lst中对应的kernel一行最后,增加vga=0x305,如: 引用 kernel/boot/vmlinuz-2.4.21-9.30AXsmproroot="/LABEL"=/1vga="0x305" 3、万一键盘也不幸死掉了,那我们只能采用串口方式,把系统信息发送到另一台系统上,方法: 修改/boot/grub/menu.lst文件,在kernel一行最后增加核心参数"console=ttyS0console="tty1"",如: 引用 kernel/boot
5、/grub/vmlinuz-2.4.21-9.30AXsmproroot="/LABEL"=/1console="ttyS0"console="tty1" 然后,修改/etc/sysconfig/syslog,加入klogd选项"-c7",如: 引用 KLOGD_OPTIONS="-x-c7" 重启服务器;进行测试: 1)使用串口直连线连接客户机和服务器,在客户机上运行: cat/dev/ttyS0 服务器上运行: echohi>/dev/ttyS0 如果客户机有"hi"输出即可。 2)服务器上运行: echow>/proc/sys
6、rq-trigger 看看客户机上是否有相应的内核信息输出 3)服务器上运行: modprobeloop 看看客户机上是否有相应的内核信息输出 如果测试都通过的话,那么在客户机上运行: cat/dev/ttyS0
7、tee/tmp/result 当死机出现的时候,我们就可以从客户机上看到需要的内核信息了(查看/tmp/result)。 三、总结 一般造成Linux系统死机的原因有: 系统硬件问题(SCSI卡,主板,RAID卡,HBA卡,网卡,硬盘等) 外围硬件问题(网络等) 软件问题(系统、应用软件) 驱动bug(找新的驱动)
8、核心系统bug(到LKML看看,或更换核心再试) 系统设置(恢复到缺省状态,关闭防火墙等)
此文档下载收益归作者所有