如何使用crash工具分析Linux内核崩溃转储文件

如何使用crash工具分析Linux内核崩溃转储文件,第1张

nginx是一个服务器,类似于apache 个人感觉centos更好用一些,更标准化一点 ubuntu的apt-get更方便一些(如果不是编译安装的话) 我的博客: shawns.me

分析kernel比较关键的就是看三点:1) 内核会给出一个崩溃原因的猜测,这里是,CPU 0 Unable to handle kernel paging request at virtual address 000000002) 看pc指针的值,这里是epc == 000000003) 看调用栈Call Trace:[ //可惜后面没给出来通常是根据指针加上偏移值跟反汇编代码对照,找到出问题的指令。这个panic的原因比较明显,应该是引用了空指针,试图执行0x00000000出的代码。

kdump是在系统崩溃、死锁或者死机的时候用来转储内存运行参数的一个工具和服务。

打个比方,如果系统一旦崩溃那么正常的内核就没有办法工作了,在这个时候将由kdump产生一个用于capture当前运行信息的内核,该内核会将此时的内存中的所有运行状态和数据信息收集到一个dump

core文件中以便于Red

Hat工程师分析崩溃原因,一旦内存信息收集完成,系统将自动重启。这和以前的diskdump,netdump是同样道理。只不过kdump是RHEL6特有的。

查看Linux系统是否打开kdump:

执行命令:ulimit -c 如果输出为 0 ,则代表没有打开。如果为unlimited则已经打开。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8929131.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存