zoukankan      html  css  js  c++  java
  • linux系统救援模式解决开机引导失败问题

    问题:linux开机后进入grub命令行且grub命令行输入命令报错

    推测:因之前系统装好以后改变过分区,而导致不能读取到grub主开机引导程序

    在解决这个问题之前我们先来了解linux开机启动过程。

    linux系统开机启动有以下过程

    1.开机加载BIOS

    2.进入MBR(master boot record)主引导记录:MBR中主要是安装加载引导程序,如主流的grub(既支持win也支持linux)。它是可引导设备的第一个扇区(一般情况下是硬盘中的第一扇区)中的主引导分区 

    3.读取运行grub主引导程序:grub主要是识别磁盘格式,用于载入并启动操作系统核心(Kernel)。多操作系统时可以通过配置grub而引导系统启动。

    4.启动init进程完成系统启动;据我所知有两种方式init方式。System V  initialization方式和Upstart方式。(具体方式的运行模式自行百度)

      linux开机引导过程大致分为以上几步。

    知道了开机启动大致过程,我们针对遇到的问题可以判断问题出在grub主引导程序上。

    下面我们将使用系统盘进入linux救援模式修复grub引导程序。

    1.放入linux装机光盘并选择以光盘启动

    2.选择Rescue installed system 救援模式进入

    3.语言选择默认英语,键盘选择us

    4.根据需要选择是否联网,这里不需要联网

    5.进入到Rescue界面,如果选择Continue按钮并回车则救援模式程序会自动查找系统中已有的文件系统,并把他们挂载到/mnt/sysimage目录下;如果选择Read-Only并回车,则会以只读的方式挂载已有的文件系统,如果需要手动挂载则选Skip

    6.之后有三种模式选择 我们选择进入shell模式并根据之前提示输入chroot  /mnt/sysimage命令    (fakd为诊断模式)

    7.输入grub进入grub命令行

    8.在grub命令行中输入:root(hdx,y)

      其中x为安装linux根分区所在的盘,比如只有一个硬盘那x就是0,linux根分区在第二个硬盘上x就为1.

      其中y为安装linux系统所在的根分区

      我这里输入的是root(hd0,0)

    9.输入setup(hd0)

              setup(hd0)就是把grub写入到硬盘的MBR上,显示succeeded就说明写入修复成功。

    10.退出重启机器,系统开机引导成功。

    当你试图去用自己的言语去讲清一些事物时,你会明白对此事物的理解是融会贯通还是一知半解
  • 相关阅读:
    Eluments ui 二级下拉菜单 回显问题
    数据结构与算法李春葆系列之二叉树设计性实验
    数据结构与算法李春葆之判断二叉树子树
    数据结构与算法李春葆系列 判断二叉树相同算法
    数据结构与算法李春葆系列之数组和广义表思维导图
    数据结构与算法李春葆系列之递归思维导图
    C语言之scanf函数
    c标准库(STL)系列-sscanf()
    一个可以把windows系统跑死的Java程序
    解决ubuntu19.0‘E: 无法获得锁 /var/lib/dpkg/lock-frontend
  • 原文地址:https://www.cnblogs.com/1211-1010/p/12144467.html
Copyright © 2011-2022 走看看