linux主机利用crash分析_var_crash_下的vmcore的dump分析.pdf

linux主机利用crash分析_var_crash_下的vmcore的dump分析.pdf

ID:48057148

大小:3.05 MB

页数:13页

时间:2019-10-15

linux主机利用crash分析_var_crash_下的vmcore的dump分析.pdf_第1页
linux主机利用crash分析_var_crash_下的vmcore的dump分析.pdf_第2页
linux主机利用crash分析_var_crash_下的vmcore的dump分析.pdf_第3页
linux主机利用crash分析_var_crash_下的vmcore的dump分析.pdf_第4页
linux主机利用crash分析_var_crash_下的vmcore的dump分析.pdf_第5页
资源描述:

《linux主机利用crash分析_var_crash_下的vmcore的dump分析.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、linux主机利用crash分析/var/crash/下的vmcore的dump分析当主机crash后,会在这个目录下生成vmcore,也就是dump,如何分析这个dump来定位宕机的原因呢?可以执行crashvmlinux/var/crash/127.0.0.1-2014-06-22-16:08:36来进入分析模式(vnlinux这里要指定的)他会报错,原因应该是缺乏kernel-debuginfo包,我们安装下后再尝试:要想crash可以分析core-dump,必须要安装这三个包:安装完后,我们可以利

2、用find/-namevmlinux然后我们执行crashvmlinux产生的core路径进入分析模式上面的crash爆出了:报错,这是由于kernel-debuginfo-common-x86_64包的版本和本机内核版本不一致照成的。(说下:要想使用crash,只要保证debuginfo的版本和你要分析的core的内核版本本机的kernel版本三者的版本必须一样,任意一个不一致都会导致不能分析dump)我们在http://debuginfo.centos.org/6/x86_64/下载到了和我们的内核版

3、本一样的debuginfo包,也可以在红帽官方网站上下载,前提是有红帽认证的帐号:##选择包和版本#再选择showdebugpackage找到debug包下载就可以了----------------------------------------然后安装一下:#安装包开始++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++至于我们怎么知道coredump的内核版本,可以cd/var/cras

4、h/127.0.0.1---------/然后执行stringsvmcore

5、grep'OSRELEASE'可以显示出vmcore的内核版本顺便附一下内核版本和系统版本的对应关系CentOS6.0/RHEL6Update0------------------->2.6.32-71CentOS6.1/RHEL6Update1------------------->2.6.32-131CentOS6.2/RHEL6Update2------------------->2.6.32-220CentOS6.3/R

6、HEL6Update3------------------->2.6.32-279CentOS6.4/RHEL6Update4------------------->2.6.32-358CentOS6.5/RHEL6Update5------------------->2.6.32-431CentOS6.6/RHEL6Update6------------------->2.6.32-504++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

7、++++++++++++++++++++++++#后再分析下dump可以进crash模式了。刚进crash的时候会有一个总揽:KERNEL:系统崩溃时运行的kernel文件DUMPFILE:内核转储文件CPUS:所在机器的CPU数量DATE:系统崩溃的时间TASKS:系统崩溃时内存中的任务数NODENAME:崩溃的系统主机名RELEASE:和VERSION:内核版本号MACHINE:CPU架构MEMORY:崩溃主机的物理内存PANIC:崩溃类型,常见的崩溃类型包括:SysRq(SystemRequest)

8、:通过魔法组合键导致的系统崩溃,通常是测试使用。通过echoc>/proc/sysrq-trigger,就可以触发系统崩溃。oops:可以看成是内核级的SegmentationFault。应用程序如果进行了非法内存访问或执行了非法指令,会得到Segfault信号,一般行为是coredump,应用程序也可以自己截获Segfault信号,行处理。如果内核自己犯了这自样的错误,则会弹出oops信息。他会说明panic的原因。有些会很明显,比如:然后可以执行swap查看宕机时的swap值:有时候会内存过高:也可以

9、已在总揽上看当时的负载:有时会很高:另外还有bt指令,可以查看内核指令:------说明下,bt是分析crash的很好的工具,以“#数字”开头的行为调用堆栈,即系统崩溃前内核依次调用的一系列函数,通过这个可以迅速推断内核在何处崩溃,比如这里的#1crash_kexecatfffffffff81035b7b,我们再可以利用dis-l加内存地址来反汇编出内容可以明显的看到说明系统crash了,是因为执行收到c的sysrq才宕的。另

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。