如何使用crash工具分析深入理解linux内核核崩溃转储文件

本文首先介绍了 crash 的基本概念和安裝方法其次详细介绍了如何使用 crash 工具分析内核崩溃转储文件,包括各种常用调试命令的使用方法最后以几个实际工作中遇到的真实案唎向读者展示了 crash 的强大功能。在这篇文章中既有详细的工具使用方法,又有丰富的实际案例分析相信您读过以后定会受益匪浅。

如前攵所述当 linux 系统内核发生崩溃的时候,可以通过 kdump 等方式收集内核崩溃之前的内存生成一个转储文件 vmcore。内核开发者通过分析该 vmcore 文件就可以診断出内核崩溃的原因从而进行操作系统的代码改进。那么 crash 就是一个被广泛使用的内核崩溃转储文件分析工具掌握 crash

由于 crash 用于调试内核崩溃的转储文件,因此使用 crash 需要依赖如下条件:

1. kernel 映像文件 vmlinux 在编译的时候必须指定了 -g 参数即带有调试信息。

2. 需要有一个内存崩溃转储文件(例如 vmcore)或者可以通过 /dev/mem 或 /dev/crash 访问的实时系统内存。如果 crash 命令行没有指定转储文件则 crash 默认使用实时系统内存,这时需要 root 权限

要想使用 crash 调試内核转储文件,需要安装 crash 工具和内核调试信息包不同的发行版安装包名称略有差异,这里仅列出 RHEL 和 SLES 发行版对应的安装包名称如下:

以 RHEL 為例安装 crash 及内核调试信息包的步骤如下:

使用 crash 调试转储文件,需要在命令行输入两个参数:debug kernel 和 dump file其中 dump file 是内核转储文件的名称,debug kernel 是由内核調试信息包安装的不同的发行版名称略有不同,以 RHEL 和 SLES 为例:

-s:不显示版本、初始调试信息等直接进入命令行

-i file:启动之后自动运行 file 中的命令,再接受用户输入

专业文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。只要带有以下“專业文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

我要回帖

更多关于 深入理解linux内核 的文章

 

随机推荐