linux kdump原理以及配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux kdump原理以及配置相关的知识,希望对你有一定的参考价值。

相关的原理
kexec是一个快速启动机制,允许通过已运行的内核的上下文启动一个linux内核,不需要经过Bios。实现kdump机制的关键,包括二个组成部分:一是内核空间的系统调用kexec_load,负责在生产内核启动时将捕获内核加载到指定的地址。二是用户空间的工具kexec-tools,将捕获内核的地址传递给生产内核,从而在系统崩溃的时候能够找到捕获内核的地址并运行。
kdump是一种先进的基于kexec的内核崩溃转储机制。当系统崩溃时,kdump使用kexec启动到第二个内核。第二个内核通常叫捕获内核,以很少内存启动以捕获转储镜像。第一个内核保留了内存的一部分给第二个内核启动用。由于kdump利用kexec启动捕获内核,绕过了BIOS,所以第一个内核的内存得以保留,这是内核崩溃转储的本质。

需要安装的软件
kdump-tools
kexec-tools
makedumpfile

以ubuntu系统为例
查看kdump服务状态
service kdump-tools status

查看kdump状态
kdump-config show

修改grub.cfg文件
BOOT_IMAGE=/boot/vmlinuz-4.14.0-generic root=UUID=70764d69-1d67-4f16-a6cc-fe54ab4510a5 ro crashkernel=512M quiet
配置完成后,重启主机生效。
注意:crashkernel=512M 设置大小跟服务器型号相关

以上是关于linux kdump原理以及配置的主要内容,如果未能解决你的问题,请参考以下文章

linux 使用kdump和crash工具调试内核

linux 使用kdump和crash工具调试内核

详解Linux内核态调试工具kdump

详解Linux内核态调试工具kdump

linux安装后总提示 没有足够的内存配置kdump,怎么办?

linux6下kdump的配置