在yum更新后,Xen CentOS 6 VM无法启动 - 内核错误

时间:2015-11-22 13:56:42

标签: linux linux-kernel centos boot xen

我不是Kernel东西的专家,但这是我遇到的: 我有一个Xen CentOS 6.x VM,在使用“yum update”命令后,我的VPS停止工作并重新启动它无法解决任何问题。所以我尝试了控制台视图,看到Xen说这个VM根本不存在!经过大量的搜索,我找到了解决方案。这是我当前的/etc/grub.conf文件:

default=0
timeout=5
title CentOS (2.6.32-573.7.1.el6.x86_64)
  root (hd0,0)
  kernel /boot/vmlinuz-2.6.32-573.7.1.el6.x86_64 console=hvc0 xencons=tty0 root=/dev/xvda1 ro crashkernel=auto LANG=en_US.UTF-8
title CentOS (2.6.32-573.3.1.el6.x86_64)
  root (hd0,0)
  kernel /boot/vmlinuz-2.6.32-573.3.1.el6.x86_64 console=hvc0 xencons=tty0 root=/dev/xvda1 ro crashkernel=auto LANG=en_US.UTF-8
  initrd /boot/initramfs-2.6.32-573.3.1.el6.x86_64.img
title CentOS (2.6.32-431.11.2.el6.x86_64)
  root (hd0,0)
  kernel /boot/vmlinuz-2.6.32-431.11.2.el6.x86_64 console=hvc0 xencons=tty0 root=/dev/xvda1 ro crashkernel=auto LANG=en_US.UTF-8
  initrd /boot/initramfs-2.6.32-431.11.2.el6.x86_64.img
title CentOS (2.6.32-431.5.1.el6.x86_64)
  root (hd0,0)
  kernel /boot/vmlinuz-2.6.32-431.5.1.el6.x86_64 console=hvc0 xencons=tty0 root=/dev/xvda1 ro crashkernel=auto LANG=en_US.UTF-8
  initrd /boot/initramfs-2.6.32-431.5.1.el6.x86_64.img
title vmlinuz-2.6.32-358.0.1.el6.x86_64
  root (hd0,0)
  kernel /boot/vmlinuz-2.6.32-358.0.1.el6.x86_64 console=hvc0 xencons=tty0 root=/dev/xvda1 ro
  initrd /boot/initramfs-2.6.32-358.0.1.el6.x86_64.img

由于我不是专家,我可以说第一个选项没有initrd线!所以我将“deafult = 0”改为“default = 1”,然后又开始工作了。

有人可以告诉我为什么会这样吗?我在生产服务器上,这个问题给我带来了巨大的压力,更不用说服务器停机了几天才能找到解决方案!

提前感谢您的帮助

1 个答案:

答案 0 :(得分:1)

好吧,为什么会发生这种情况是因为当你执行'yum update'时出现了问题。

不幸的是,这是世界上只有一个人可以弄清楚出了什么问题的事情之一。那个人就是你,因为在每个读过你问题的人中,只有你有权访问有问题的虚拟机,并且可以检查/ boot的内容和系统日志。

您可以先确定/boot/initramfs-2.6.32-573.7.1.el6.x86_64.img是否存在。

如果我猜测,这只是猜测,我猜想在升级过程中你的/ boot空间不足。因此,内核安装脚本无法创建initramfs文件,但由于脚本中存在错误,未检测到此错误,或者您检测到错误未在控制台上发现错误消息;无论情况如何,脚本的另一部分继续更新grub.conf,由于initramfs文件不存在,因此省略了该指令。

如果是这种情况,我会首先使用rpm命令手动删除573.7.1内核包,以便删除损坏的安装。然后,通过删除最旧的内核,可以在/ boot上释放额外的空间,此时yum update应该能够重新安装最新的内核。

但是,再一次,这只是一个有根据的猜测,因为正如我所说,我不是世界上唯一能够确定和调查此问题的人。