实验目的:熟悉了前面的启动流程,系统的一个大致的启动流程是怎样的,而其中牵扯到了些许文件,这些文件在系统启动时用于衔接各个步骤,如果这些文件损坏或缺失,系统将不能正常启动,这次写的内容就是当这些文件损坏或者缺失的时候,应怎样修复。
实验环境:CentOS 6.8
实验步骤:
1)grub的stage 1 和stage 1.5损坏后如何修复
(1)因为没有MBR,系统启动后会直接进入救援模式的选择界面,选择进入救援模式
(2)进入就救援模式后,df查看挂在情况,并且使用chroot切换真正的根文件系统
(3)使用grub-install /dev/sda (/dev/sda为mbr所在的硬盘)
(4)exit后重新启动
2)删除grub.conf文件
(1)没有grub.conf文件,即没有办法加载内核及rootfs的驱动文件
(2)开机后会直接进入grub界面,按照grub中的内容将内核文件及ramfs文件所在路径输入,此时系统将根据你所输入的路径去找相关文件
(3)启动后需要从新写一份或者copy一份grub.conf,因为之前写的只是临时的寻找路径,并没有写入到文件里面去,如果不写,下次开机还要进入grub界面
3)删除boot目录(其中 包含了stage2和grub以及内核相关文件)
(1)开机会出现会出现error15的错误界面,(因为stage2文件缺失)
(2)重新启动进救援模式,并且切换至真正的rootfs
(3)挂载本地光盘,然后使用rpm命令安装kernel包(会提醒aleady installed,需加上--force选项或者--replacepkgs选项)
(4)grub-install /dev/sda(/dev/sda为boot所在的磁盘),会创建/boot下的grub目录,但没有grub.conf文件
(5)编写grub.conf文件
(6)安装完成后重新启动
4)删除/etc/fstab文件,并且删除/boot目录
(1)因为没有/etc/fstab,所以进入救援模式后并根目录并没有挂载。
(2)挂载根目录,然后进入到真正的根下面,编写/etc/fstab文件,需要将/boot分区和/分区写上(挂载/f分区时,如果你记得原来的/分区,直接挂上即可,如果不记得,需要每个都试试)
(3)完成后重新启动,然后再次进入救援模式,如果你/etc/fstab文件写的正确,那么就挂载上了,后面的操作和上面的3一样。
注意:如果分区是以LVM分区方式来分区的,而且/目录/usr和/var目录这几个是单独分区的,第一次进入救援模式后,需要首先将vg激活,然后再挂载,而且编写/etc/fstab文件时需要将这几个单独分区全部写上,退出后再进救援模式,后面的步骤和上面就相同了。
谢谢浏览..
转载于:https://blog.51cto.com/dashui/1853105