findbetter.me

Just to find a better me

关于centos启动报错:Failed to start Crash recovery kernel arming的解决方案

在VMware中安装了centos,重启时报错:Failed to start Crash recovery kernel arming

本质是kdump服务启动失败

wKioL1UHirbxyYNUAABxKHMqVvk033.jpg


先来说一下,什么是kdump

Kdump是一个内核崩溃转储机制,在系统崩溃的时候,Kdump将捕获系统信息,这对于针对崩溃的原因非常有帮助。注意,Kdump需要预留一部分系统内存,而且这部分内存对于其他用户是不可用的。


启动失败的原因

查看 /etc/grub.conf文件,发现crashkernel=auto,问题就出在这儿:

注:centos7后为:vi /etc/grub2.cfg 

系统对crashkernel=auto的定义为:

 

如果系统的内存 <= 8 GB 对kdump kernel不会保留任何内容;也就是说,crashkernel=auto 等

于关掉了机器上的kdump功能;
如果系统的内存> 8 GB 但是<= 16 GB,crashkernel=auto会保留256M,等同于crashkernel=256M;
如果系统内存> 16GB,crashkernel=auto会保留512M,等同于crashkernel=512M。

安装虚拟机时,给虚拟机设置的内存为1G,所以说系统关掉了kdump功能,造成了kdump服务启动失败。

找到了原因,重新给crashkernel设置参数即可:

在 kdump 的配置中,往往困惑于 crashkernel 的设置。“crashkernel=X@Y”,X 应该多大? Y

又应该设在哪里呢?实际我们可以完全省略“@Y”这一部分,这样,kernel 会为我们自动选择

一个起始地址。而对于 X 的大小,般对 i386/x86_64 的系统, 设为 128M 即可;对于 powerpc

的系统,则要设为 256M。

 

将crashkernel=auto 改为crashkernel=128M 后保存,如果还不能解决问题,改为256m试试

wKiom1UHmdTxWdHAAADsLgF1AbI735.jpg

重新启动系统,kdump服务启动成功。

 

wKioL1UHmwrBjo2YAACbxwcW0Qc155.jpg

参考:http://blog.51cto.com/woymk/1621341

posted @ 2019-04-17 17:26  FindBetterMe  阅读(5771)  评论(0编辑  收藏  举报