前言

该处理方法主要参考该csdn博主白驹过隙tsc教程 原文链接 经过验证增加了一些注意事项。

故障现象

linux系统重启无法进入操作系统,报如下错误:
image.png

处理方法

1、按任意键返回启动选项界面:
image.png
2、在菜单界面按’c’进入grub命令行界面。
3、在grub命令行下输入: grub>root (hd0,0)回车。会得到Filesystem的提示(不要手动全拼,使用tab补全)
4. 继续在grub命令行下输入:grub>kernel (hd0,0)/boot/不回车然后按tab键,会显示可选的内核镜像。 继续在未完成的命令后输入有效地内核镜像名,如: grub>kernel (hd0,0)/boot/vmlinuz-2.6.9-42.ELsmp ro root=LABEL=/ vga=0x317
回车。(输入过程中按tab可以获得提示,后面的root和vga参数要自己确定,可在grub菜单里选择某一项按’e’查看和参考已有设置),会得到一行提示信息。
5. 继续在grub命令行输入:grub> initrd (hd0,0)/boot/initrd-2.6.9-42.ELsmp.img回车。(同样可以在输入过程中按tab获得提示)
6. 最后在grub命令行中输入boot(注意不是reboot)启动系统: grub> boot
7. 等待系统启动,OK。

可能遇到的故障点01

但是在执行到第四步kernel时,/目录下没有vmlinuz-…文件,说明内核文件丢失,需要用光盘安装内核文件。
服务器插上光盘或者U盘启动盘,重启
1.在光盘启动界面,选择恢复模式:
image.png
2.然后一直下一步,直到启动shell命令行
在过程中有个点要注意
IMG_0451.jpeg
该界面下方有多个选项,一定要选择continue (ps:拍照没拍到菜单,将就看吧)
3、执行:chroot /mnt/sysimage/将原系统挂载上
image.png
4、先确认下是不是少了内核文件:
命令行进行ls /boot/列出的文件中果然没有vmlinuz…开头的文件,看来问题就在这,遂进入光盘重新安装内核,步骤如下:
a.创建光盘挂载目录并挂载光盘:
image.png
b.安装kernel包,会生成/boo目录以及内核及initramfs(需要强制安装–force)
image.png
c.安装完毕后,在/boot/ 下新建了vmlinuz… initd…文件:
image.png
此时已经有内核文件,可以按照上述方法进行修复了。
注:

grub> root (hd0,1) #是说跟分区在第一块硬盘的第二个分区 grub> kernel/boot/vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/sda2 #指明内核路径和根分区 grub> initrd /boot/initramfs-2.6.32-431.el6.x86_64.img #指明initramfs路径启动系统加载驱动 grub> boot #启动上面指定的系统,如果是reboot就等于重启整个系统了,刚才的设置就失效了

此时已经可以引导系统启动了,但是还没有grub.conf文件,可以在系统启动后编写一个grub.conf文件即可,、

可能遇到的故障点2

执行到kernel时还报error 15 file not found错误!!!!执行不下去了!!!怀疑应该是上面提到的ro root=后面参数的问题,该参数在/etc/grub.conf配置文件中有:
image.png
拍照记下来,然后reboot系统,回到最上面的修复方式试一下,此时重启系统仍然报error15,在启动选项界面按C键进入grub命令行,此时在/目录下已经有了vmlinuz…文件,修复一下试试,initrd依次执行以下命令:
#root
#root (hd0,0)
#setup (hd0)
#kernel (hd0,0)/vmlinuz-2.6.32-358.14.1.e16.x86_64…(上图中红框里那一段全敲下来)
#initrd /initramfs-2.6.32-358.14.1.e16.x86_64.img
#boot (运用修复,切记不是reboot!!)
此时进入读条的界面,等了一会登录界面就出来了,修复完毕,大功靠成!
注:修复完有可能出现root密码不对,可以参考网上清除linux root密码方法处理即可。