美文网首页linux学习我用 LinuxLinux学习之路
Linux死机故障怎么办,来这里你就知道!

Linux死机故障怎么办,来这里你就知道!

作者: 平凡拒绝平庸 | 来源:发表于2017-05-22 14:47 被阅读111次

    系统出现死机,一般分为两种情况:一是硬件问题;二是软件问题。

    一、硬件问题

    可以考虑分析以下几点:

    1、不要超频CPU,如果已经超频的先回复到原来的频率。

    虽然平时运行没有问题,但可能在高负载的使用中就会出现不可预料的故障了。特别是linux系统在某些应用上,是可以把硬件的性能发挥到极限的,但这样的硬件运行Windows可能是没有问题的。

    2、确认电源供电充足

    必须确保在高负载的状态下,电源可以满足负载。

    3、使用memtest86检查内存状态

    4、恢复BIOS到默认状态

    对于服务器,可以使用自带的监测工具进行测试,也是一个不错的排错方法。

    二、软件问题

    如果已经基本排除硬件问题,那我们就必须考虑从软件上去获得死机状态的系统信息了。

    1、运气足够好的话,系统死机不一定是完全死掉(此时键盘可能还能响应),那我们就可以使用Sysrq大法。

    前提是我们必须先打开sysrq功能:


    #echo "1" > /proc/sys/kernel/sysrq

    #setterm -blank


    这样,当系统出现问题的时候,我们可以使用:


    Alt+Sysrq-T 获得进程系统堆栈信息

    Alt+Sysrq-M 获得内存分配信息

    Alt+Sysrq-W 获得当前寄存器信息


    2、为了让屏幕显示更多的内核调试信息,可以修改控制台的显示模式为80x25,在/boot/grub/menu.lst中对应的kernel一行最后,增加vga=0x305


    kernel /boot/vmlinuz-2.4.21-9.30AXsmp ro root=/LABEL=/1 vga=0x305


    3、万一键盘也不幸死掉了,那我们只能采用串口方式,把系统信息发送到另一台系统上,方法:

    修改/boot/grub/menu.lst文件,在kernel一行最后增加核心参数"console=ttyS0 console=tty1",如:


    kernel /boot/grub/vmlinuz-2.4.21-9.30AXsmp ro root=/LABEL=/1 console=ttyS0 console=tty1


    然后,修改/etc/sysconfig/syslog,加入klogd选项"-c 7",如:


    KLOGD_OPTIONS="-x -c 7"


    重启服务器;进行测试:

    三、总结

    一般造成Linux系统死机的原因有:

    系统硬件问题(SCSI卡,主板,RAID卡,HBA卡,网卡,硬盘等)

    外围硬件问题(网络等)

    软件问题(系统、应用软件)

    驱动bug(找新的驱动)

    核心系统bug(到LKML看看,或更换核心再试)

    系统设置(恢复到缺省状态,关闭防火墙等)

    相关文章

      网友评论

        本文标题:Linux死机故障怎么办,来这里你就知道!

        本文链接:https://www.haomeiwen.com/subject/ikdbxxtx.html