01. 错误现象
在CentOS开机时,进入不了系统,也操作不了,只有提示下面的错误:
kernel panic-not syncing:VFS:Unable to mount root fs on unknown-block
02. 解决思路
找到一个系统,U盘制作、或者光盘制作;
在BIOS上调节USB启动或者DVDROM启动;
先后进入一个急救系统里,如下图:
03. 区分真伪系统
进入之后,在rescure模式中,分为真实系统和伪系统。没有切换的就是rescure中的伪系统,通过# chroot /mnt/sysimage切换真实系统。
一般地:
bash-4.1#前缀的是刚进入的rescure模式的伪系统;
sh-4.1#前缀的是原主机运行的真实系统。
04. 通过现象尝试解决问题
刚提示出现:kernel panic-not syncing:VFS:Unable to mount root fs on unknown-block,估计是boot引导下面的配置文件出现了问题。那么尝试着重新更新boot下面的文件。
05. 在伪系统上借机帮真系统安装kernel
找到kernel文件可以通过光盘上的Packages包,执行:
bash-4.1# mkdir /mnt/cdrom
bash-4.1# mount -t iso9660 /dev/cdrom /mnt/cdrom
bash-4.1# cd /mnt/cdrom/Packages
bash-4.1# ls |grep kernel
kernel-2.6.32-431.el6.x86_64.rpm
然后安装内核kernel包:
bash-4.1# rpm -ivh kernel-2.6.32-431.el6.x86_64.rpm –root=/mnt/sysimage/ –force
06. 进入真实系统上更新grub文件
更新grub文件:
bash-4.1# chroot /mnt/sysimage –切换进入真系统
sh-4.1# grub-install /dev/sda –安装grub文件到/dev/sda,这是boot启动区
sh-4.1# ls /boot/grub –该有的文件都要要有,如grub.conf
然后最好看一下grub.conf文件
sh-4.1# cat /boot/grub/grub.conf
07. 重启系统
退出到伪系统上
sh-4.1# eixt
bash-4.1# reboot
最终,查看启动过程是否报错,或者启动是否正常。当下这个问题就这么解决了。