vmware安装好redhat.3重启后直接进入到紧急模式:

 输入root密码,输入journalctl -xb查看日志信息:

日志信息最后一页,出现 failed to start crash recovery kernel arming

 

本质是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试试

 

不过我设置过了128M和256M还是没有启动得了,不过没有报这个错误了,最后只能将虚拟机的内存设为2G试一下了。

为了避免麻烦,以后虚拟机安装时直接将dump给disable

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐