boot分区 和fstab文件被损坏后的解决方案

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了boot分区 和fstab文件被损坏后的解决方案相关的知识,希望对你有一定的参考价值。

本节索引


  • 故障描述

  • 解决思路

  • 故障判定

  • 故障解决流程


故障描述


  1. /boot分区被损坏。

  2. /etc/fstab文件被误删除。

由于/boot分区被损坏,所以导致grub无法引导操作系统。/etc/fstab文件被误删导致在进入Rescue模式原操作系统不会被自动挂载至/mnt/sysimg下。

解决思路


  1. 首先恢复fstab文件,使救援模式能够识别原操作系统。

  2. 恢复系统引导所需的grub文件。

  3. 恢复系统启动所需的内核文件和虚拟磁盘文件

故障判定


  1. 磁盘主引导记录被损坏现象:

    直接跳过磁盘启动,从其他启动项启动(光盘或者网络)

  2. 系统从磁盘启动,但停滞在如下阶段。

    Grub引导1_5阶段出错,导致无法进入grub2阶段的启动菜单界面

       解决思路,修复grub

       技术分享


故障解决流程


准备工作

与操作系统版本相同的光盘

  1. 开机后选择从光驱引导

    技术分享

  2. 选择救援模式技术分享

  3. 选择语言

    默认选择English技术分享

  4. 选择键盘类型

    一般默认选择,特殊键盘选择指定类型即可技术分享

  5. 配置网络

    此故障无需配置网络,选择NO技术分享

  6. 选择开启救援模式

    开启救援后,会试图把原来的Linux系统挂载在/mnt/sysimage目录下技术分享技术分享由于原来系统下没有/etc/fstab文件,所以救援模式无法挂载分区至/mnt/sysimg下。回车,开启一个shell命令行技术分享

  7. 查看原来系统所在磁盘

    分区使用fdisk 命令查看原来系统所在磁盘的分区详细信息。技术分享

    从结果可以看出,/dev/sda1boot字段有*标识,表示该分区为boot分区;

    /dev/sda5的分区类型为swap,表示该分区为swap分区;

    其他分区从fdisk的返回结果暂时无法确定其挂载点是什么。

    创建一个临时目录,挂载无法判断的分区,通过内容判断其挂载点。技术分享

    挂载/dev/sda2,查看其目录结构符合根分区的目录结构,所以判断该分区为根分区。技术分享

  8. 编辑一个fstab文件

    在原系统的根分区下编辑一个fstab文件,路径为/mnt/tmp/etc/fstab

    *注意  救援模式不支持使用vim,请使用vi编辑器添加下图内容技术分享

  9. 重启系统,重新进入救援模式技术分享

    选择语言,键盘类型,配置网络Rescue界面选择Continue后,显示原来系统已挂载至/mnt/sysimg技术分享

  10. 恢复boot目录内容

    切换根分区

    sh-4.1# chroot /mnt/sysimage

    挂载光盘重

    sh-4.1# mount /dev/cdrom /mnt

    新安装内核

    sh-4.1# rpm –ivh /mnt/Packages/kernel-2.6.32-696.el6.x86_64.rpm --force

    修复grub

    sh-4.1# grub-install /dev/sda

    具体过程可见下图技术分享

  11. 创建grub.conf文件

    /boot/grub下创建一个grub.conf文件,内容至少包括下图几项

    default :若启动菜单为多个,默认从哪个启动

    timeout:在达到时间无指令打断后默认启动

    title:菜单内容,用户可自定义

    kernel: 内核文件路径

    initrd: 虚拟文件系统路径

    *注意 kernel initrd的路径都是以/boot为根

    即:/boot=/

    eq: /boot/vmlinuz-2.6.32-696.el6.x86_64  =  /vmlinuz-2.6.32-696.el6.x86_64技术分享

  12. 退出当前根环境,重启系统系统技术分享

    引导之后会出现Selinux的检查阶段,耗时会很久,请耐心等待

    技术分享

    技术分享


本文出自 “Keep simple keep stupid” 博客,请务必保留此出处http://yangzhiheng.blog.51cto.com/11586378/1968182

以上是关于boot分区 和fstab文件被损坏后的解决方案的主要内容,如果未能解决你的问题,请参考以下文章

Linux 排错 误删 /etc/fstab 和 /boot怎样恢复

如何修复/etc/fstab配置文件

Linux fstab自动挂载分区教程

CentOS7启动故障修复实验

Linux 自动挂载 和 fstab分区-自动挂载

Linux配置启动挂载:fstab文件详解