您现在的位置:首页 > 系统运维 > Linux运维

CentOS/Radhat7 解决ARM服务器使用UEFI模式启动kdump无法启动的问题

kdump 是一种先进的基于 kexec 的内核崩溃转储机制。当系统崩溃时,kdump 使用 kexec 启动到第二个内核。第二个内核通常叫做捕获内核,以很小内存启动以捕获转储镜像。第一个内核保留了内存的一部分给第二内核启动用。 问题: 检查服务器kdump服务器发现是failed状态的: 服务器提示:No memory reserved for crash kernel 报错内容: ● kdu

kdump 是一种先进的基于 kexec 的内核崩溃转储机制。当系统崩溃时,kdump 使用 kexec 启动到第二个内核。第二个内核通常叫做捕获内核,以很小内存启动以捕获转储镜像。第一个内核保留了内存的一部分给第二内核启动用。

问题:

检查服务器kdump服务器发现是failed状态的:
服务器提示:No memory reserved for crash kernel

报错内容:
● kdump.service - Crash recovery kernel arming
   Loaded: loaded (/usr/lib/systemd/system/kdump.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since 四 2020-10-22 17:04:34 CST; 4min 57s ago
  Process: 11128 ExecStart=/usr/bin/kdumpctl start (code=exited, status=1/FAILURE)
 Main PID: 11128 (code=exited, status=1/FAILURE)

10月 22 17:04:34 ZJ-ARM-INDEXER09 systemd[1]: Starting Crash recovery kernel arming...
10月 22 17:04:34 ZJ-ARM-INDEXER09 kdumpctl[11128]: No memory reserved for crash kernel
10月 22 17:04:34 ZJ-ARM-INDEXER09 kdumpctl[11128]: Starting kdump: [FAILED]
10月 22 17:04:34 ZJ-ARM-INDEXER09 systemd[1]: kdump.service: main process exited, code=exited, status=1/FAILURE
10月 22 17:04:34 ZJ-ARM-INDEXER09 systemd[1]: Failed to start Crash recovery kernel arming.
10月 22 17:04:34 ZJ-ARM-INDEXER09 systemd[1]: Unit kdump.service entered failed state.
10月 22 17:04:34 ZJ-ARM-INDEXER09 systemd[1]: kdump.service failed.

解决方案:

 1、修改grub参数

编辑/etc/default/grubcrashkernel=auto修改为crashkernel=256M,预留内存大小根据自己内存大小修改,如果内存超过1TB可以将参数修改为512M。

2、重新生成grub.cfg

legacy引导方式重新生成grub.cfg的方式:

grub2-mkconfig -o /boot/grub2/grub.cfg

UEFI引导方式重新生成grub.cfg的方式,如果是其他操作系统路径名称会不一样:

grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg

3、检查配置是否生效

cat /proc/cmdline
#crashkernel容量显示正常则执行reboot进行重启
4、重启完成后检查

启动后通过systemctl status kdump.service检查状态是否为active (exited)

版权所有
侵权必究

上一篇
Linux安装部署OpenVPN
下一篇
Linux升级OpenSSH8.0p1、OpenSSL1.1.1b教程