记一次Kernel Panic修复

提醒:本文最后更新于 2881 天前,文中所描述的信息可能已发生改变,请仔细核实。


一个星期前,再次遭遇Kernel Panic,这次不用重装,十分感谢Roy,晚上还被我骚扰。

Roy帮忙进入了Rescue,意思让我去尝试寻找问题,或是备份重装。

备份的话其实我是有当天凌晨的备份了,只是精确到到宕机时间的就没有,正好可以备份这10多个小时的新增数据。

仔细思索和检查,发现最后一次更新kernel,我并未重启。或许是这个原因。

于是check一下,发现kernel-firmware虽然安装了新版本,但是有问题,所以启用的是老版本,与新版kernel不匹配,导致开机失败。

但不知道怎么搞,遂直接重装了kernel-firmware,然后就ok了。太好了,第一次解决成功这个问题,以前只是单纯的重装,现在懒了,不大想重装整个VPS,太多软件要装了。

对于没有快照的VPS来说,KVM虚拟化支持用户直接rescue应急,其实挺好的。

小记一下这件事情。因为搞的急,也没留图。

进入rescue,挂载命令列一下:

fdisk -l
mount /dev/vdb1 /mnt
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt

第一句命令,是查看你的分区名称是什么,我的是vdb1,后面的就是挂载了。

Centos重装kernel很简单,只需(以下是CentOS 6 x64的例子):

yum reinstall kernel-headers-2.6.32-504.12.2.el6.x86_64 kernel-2.6.32-504.12.2.el6.x86_64 kernel-devel-2.6.32-504.12.2.el6.x86_64 kernel-firmware-2.6.32-504.12.2.el6.noarch

2.6.32-504.12.2是内核的版本号。这个看你选择。

出现错误,按照提示,把错误忽略掉,强制重装就好了。

转载请注明转自:kn007的个人博客的《记一次Kernel Panic修复