且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

利用Kdump分析内核奔溃原因(1)

更新时间:2022-09-29 19:32:02

机器X  Centos 5.5 X64  hadoop +mongdb+hbase 机器内核奔溃数次,日志中均查不到详细原因 逐 打算利用kdump在奔溃时转存内存。
本文介绍如何开启kdump进行内存转存。
1 whats kdump
具体kdump是如何工作的 你可以参考
http://www.ibm.com/developerworks/cn/linux/l-cn-kdump1/?cmp=dwnpr&cpb=dw&ct=dwcon&cr=cn_51CTO_dl&ccy=cn
如果你对windows比较熟悉  你就简单的这么理解,kdump 做的工作就是windows的华医生的工作。what's Dr Waston?
开始-》运行-》drwtsn32 看看就晓得了。
2  vi /etc/kdump.conf
添加如下行
**********************************************
ext3 UUID=4a6034d4-3f03-42d8-b7da-4c76c828a0ad
path /var/kdump
core_collector makedumpfile -c  --message-level 1
default shell
**************************************
这里以将内核转存到磁盘上的文件为例,如想用ssh ftp 或设备 参考kdunp文档。
上述的ext3 UUID=XXX 是/var/kdump目录所在的磁盘的UUID,每个机器不同, 可以使用 blkid 查看到,

core_collector makedumpfile -c  --message-level 1  
可以用0 1 2 4 7 8 15 7种选项  区别在于dump出的文件内容不同
Message | progress    common    error     debug
     Level   | indicator   message   message   message
    ---------+-----------------------------------------
           0 |
           1 |     X
           2 |                X
           4 |                          X
         * 7 |     X          X         X
           8 |                                    X
          15 |     X          X         X         X

这一行 也可用


core_collector makedumpfile -c  -d 1 代替
这里 可以选择0 1 2 4 8 16 31 
Dump  |  zero   cache   cache    user    free
     Level |  page   page    private  data    page
    -------+---------------------------------------
        0  |
        1  |  X
        2  |         X
        4  |         X       X
        8  |                          X
       16  |                                  X
       31  |  X      X       X        X       X




修改内核引导参数,为启动捕获内核预留内存
vi /boot/gurb/gurb.conf
kerbel 后添加  crashkernel=128M@16M

128M@16M可自己根据情况修改

4 chkconfig kdump on

5 reboot

6 service kdump status
如果状态为 Kdump is operational 则可以继续下面的操作

7  人工
触发 dump一次 测试前面配置是否正确
Kdump echo c > /proc/sysrq-trigger
之后 系统奔溃 转存 重启 

8  ls -al /var/kdump/
可以看到 
127.0.0.1-系统时间的目录 里面就是vmorce转存文件了


ok 设置成功  下次真奔溃的时候  上分析转存过程






      本文转自天山三害 51CTO博客,原文链接:http://blog.51cto.com/skybug/1337799,如需转载请自行联系原作者