Menu

目录

如何手动开启kdump服务

问题现象

执行命令行命令systemctl status kdump,显示状态信息如下,提示无预留内存。

原因分析

kdump需要预留出一段内存,运行kdump内核。当前无预留内存,无法运行kdump。

解决方法

方法一:已安装操作系统的场景

  1. 修改/boot/efi/EFI/openEuler/grub.cfg,添加crashkernel=1024M,high。
  2. 重启系统使配置生效。
  3. 执行如下命令,检查kdump状态,

    systemctl status kdump
    

    若回显如下,即kdump的状态为active,说明kdump已使能,操作结束。

方法二:kickstart自动化安装场景

kickstart安装过程中,在kickstart脚本的post段中,添加修改/boot/efi/EFI/openEuler/grub.cfg文件的命令,设置crashkernel=1024M,high。

%post
#enable kdump
sed  -i "s/ ro / ro crashkernel=1024M,high /" /boot/efi/EFI/openEuler/grub.cfg
%end

说明:
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。