科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道Linux操作系统死机处理方法

Linux操作系统死机处理方法

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

通常在出现系统崩溃后,大家会担心再次出现故障,但是发现系统各日志中并没有记录到任何死机前后的信息,无法分析故障原因,认为已经无药可救。

作者:51cto 2007年10月8日

关键字: Linux 系统 死机

  • 评论
  • 分享微博
  • 分享邮件

  通常在出现系统崩溃后,大家会担心再次出现故障,但是发现系统各日志中并没有记录到任何死机前后的信息,无法分析故障原因,认为已经无药可救。但是,实际上,Linux 有多种机制来保证发生系统崩溃后,可以获取有价值的信息用以分析问题。确定是硬件故障,还是应用程序bug 导致的。

  Linux 中,有如下几种方法来获取各种崩溃时产生的信息。

  1.Core dump

  Core dump 通常用来调试应用程序错误,当某些应用程序运行出现异常崩溃时,可以开启系统的 core dump 功能,来得到一个程序崩溃时的内存信息,用来分析崩溃原因:

  在/etc/profile里加上(或者修改)一条:

  ulimit -c 0

  

  运行命令:

  sysctl -w "kernel.core_name_format=/coredump/%n.core"

  

  该命令意思是指core文件放在/coredump目录下,文件名是进程名+.core

  2.Diskdump

  diskdump工具提供了在单机上创建和采集vmcore(kernel dump)的能力,而无须使用网络。当内核本身出现崩溃的时候,当前的内存和CPU状态以及相关的信息都会被保存到一个支持diskdump的磁盘上的保留分区上。在下一次重新启动的时候,当系统重新启动,diskdump的初始化脚本会从保留分区中读取保存的信息并创建一个vcore文件,然后这个文件被再次存放到/var/crash/目录下,文件名为127.0.0.1-

  如下是一个配置 HP SCSI 设备上启用 diskdump 的过程,如果不是 HP SCSI 设备(即设备名为 /dev/sdX的形式),则无须执行第三、四两个步骤。但需要在第一步前先执行命令: modprobe

  diskdump

  第一步:编辑 /etc/sysconfig/diskdump文件,将一个空白分区的设备名填入后保存退出,例如:

  DEVICE=/dev/cciss/c0d0p2

  

  第二步:初使化 dump 设备

  #service diskdump initialformat

  

  警告:该分区的所以数据会丢失。

  第三步:使用 cciss_dump 模块替换当前的 cciss 模块:

  在 /etc/modprobe.conf 找到如下行:

  alias scsi_hostadapter cciss

  

  修改为:

  alias scsi_hostadapter cciss_dump

  

  再增加一行:

  options cciss_dump dump_drive=1

  

  注:假设diskdump文件中配置的为 /dev/cciss/c0d[#a]p[#b], 请设置为:

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章