内核配置
修改内核中以下的配置宏,可在.config文件中修改,或者通过make menuconfig修改
CONFIG_KEXEC=y
CONFIG_CRASH_DUMP=y
CONFIG_PROC_VMCORE=y
CONFIG_PROC_KCORE=y
CONFIG_SYSFS=y
CONFIG_DEBUG_INFO=y
makedumpfile 简介
有些服务器有着超大的内存,可能比它的硬盘的容量还大。为了转储这样的内存镜像,就有了 makedumpfile,它的最主要的用途就是减少转储的内存镜像的体积。它有两个手段达到这个目的:页面过滤和页面压缩。
页面过滤
makedumpfile 在处理 /proc/vmcore 时,能够过滤掉这样一些内存页:
- 全是 0 的页
- 缓存页
- 用户进程页
- 空闲页
这些类型的页往往是无关紧要的。通过“-d”这个选项指定一个过滤等级来去掉相应的页,如果要去掉所有这些类型,需要指定“31”。
页面压缩
makedumpfile 可以逐页地压缩 vmcore 中的内存页,在事后的分析中,crash 可以在分析到某页时才将其解压缩。
--message-level指定了信息收集的级别,1为只打印process indicator 日志信息,默认值为7,具体见下表:

-d 指定了kdump的过滤级别,具体见下表:
31表示过滤掉以上五种全部信息,这样kdump生成的速度就会更快,生成的vmcore文件也会较小。如果此处使用值0 ,表示不过滤任何信息,在kdump生成时,会记录主机当前的所有信息。这就是为什么在kdump生成时,有些主机只有几十M大小生成,有些主机确有几十 G大小的原因。更多用法可以查看makedumpfile命令的帮助文档。
编译步骤
=======================
makedumpfile's README
=======================* REQUIREMENTS
Please download the following library file and install it exactly as below;
do NOT use "make install".
- elfutils-0.144.tar.gz



1018

被折叠的 条评论
为什么被折叠?



