如何手动开启kdump服务
问题现象
执行systemctl status kdump命令,显示状态信息如下,提示无预留内存。
原因分析
kdump服务需要系统预留一段内存用于运行kdump内核,而当前系统没有为kdump服务预留内存,所以无法运行kdump服务。
解决方法
已安装操作系统的场景
- 修改/boot/efi/EFI/openEuler/grub.cfg,添加crashkernel=1024M,high。
- 重启系统使配置生效。
执行如下命令,检查kdump状态:
systemctl status kdump
若回显如下,即kdump的状态为active,说明kdump已使能,操作结束。
参数说明
kdump内核预留内存参数说明如下:
表 1 crashkernel参数说明
内核启动参数
|
描述
|
默认值
|
备注
|
crashkernel=X
|
在4G以下的物理内存预留X大小的内存给kdump使用
|
无,用户根据实际情况调整
|
该配置方法只在4G以下内存预留,必须保证4G以下连续可用内存足够预留
|
crashkernel=X@Y
|
在Y起始地址预留X大小的内存给kdump使用
|
无,用户根据实际情况调整
|
需要确保Y起始地址的X大小内存未被其他模块预留
|
crashkernel=X,high
|
在4G以下的物理内存中预留256M大小,在4G以上预留X大小内存给kdump使用
|
无,用户根据实际情况调整,推荐值为1024M,high
|
确保4G以下内存有256M连续可用内存,4G以上有连续X大小内存可预留。实际预留内存大小为256M+X
|
crashkernel=X,low
crashkernel=Y,high
|
在4G以下的物理内存中预留X大小,在4G以上预留Y大小内存给kdump使用
|
无,用户根据实际情况调整
|
需要确保4G以下有X大小连续可用内存,4G以上有Y大小连续可用内存。实际预留内存大小为X+Y
|