关于Linux系统无法启动的问题(1)

                                                           第一阶段和第1.5阶段问题

 通常情况下,Linux是很稳定的。但是因为我们的管理员一些手贱或者其他的一些原因会导致系统无法启动。这时我们就被要求有系统损坏,快速修复的能力了。

    首先,我们应该了解Linux的启动流程,然后根据无法启动的画面,来判断到底是那一阶段出现问题。那么Linux的每个流程是那些呢?

我们可以把Linux的启动流程分为三个阶段(以centos6为例):

a.第一阶段:POST加电自检和MBR 的前446个字节的引导

    

b.第1.5阶段:为加载/boot分区的后面的文件系统的数据(即后面512字节后的数据)

c.第二阶段:

加载/boot/grub/grub.conf 文件,启动内核,加载虚拟文件系统

启动第一脚本/sbin/init,读取/etc/inittab确定模式,用/etc/rc.d/rc.sysinit启动需要启动的服然后设置终端

我们以链路表示为:

POST ——->BOOTSequence——->Bootloader(MBR)———>kelner(ramdisk)—–>rootfs()———>init(systemd)

                                                第一阶段无法启动的解决方法

    一般来说如果/boot分区的前446个字节的被破坏,那么第一阶段将无法正常启动,系统会认为硬盘无法启动,会用光盘启动状态如图:

关于Linux系统无法启动的问题(1)

如果发生此种状况我们需要   点击第三项,启动救援模式进入进入bash,然后输入命令grub-install /dev/sda

然后启动系统即可具体操作如下图:

关于Linux系统无法启动的问题(1)

                                        图1

1.如图1选择救援模式

关于Linux系统无法启动的问题(1)

                                                                                图2

2. 选择英语,点击ok键

关于Linux系统无法启动的问题(1)

                                                                            图3

2.选us 点击ok键

关于Linux系统无法启动的问题(1)

                                                                                图4

3.因为不需要网络修复,所以选no

关于Linux系统无法启动的问题(1)

                                                                                 图5

4.点击countinue

关于Linux系统无法启动的问题(1)

                                                                                  图6                                                                      

5.因为在救援模式下是以/mnt/sysimage为根,这里先点击ok就行

关于Linux系统无法启动的问题(1)

                                                                                    图7

6.点击使用shell修复

关于Linux系统无法启动的问题(1)

                                                                    图8

7.用hexdump  -C -n 512   /dev/sda命令可以看出第一启动阶段已经被破坏

关于Linux系统无法启动的问题(1)

                                                                    图9

8.用chroot  /nmt/sysimage切根,从以/nmt/sysinage为根变成/为根

关于Linux系统无法启动的问题(1)

                                                                                        图10

9.用  grub-install   /dev/sda 可以修复第一第1.5阶段的启动信息

关于Linux系统无法启动的问题(1)

                                                                            图11

关于Linux系统无法启动的问题(1)

                                                                               图12             

10。同步磁盘然后输入两个exit,reboot启动系统

                                                                        第1.5阶段解决方法

如果第1.5阶段被破坏,那么会出现如下界面:关于Linux系统无法启动的问题(1)

                                                                                                图13

1.因为1.5阶段被破坏使用不会出现光盘引导,会卡在中间就如图13的情况,这时可以按  ctl +alt +del 键重新启动

关于Linux系统无法启动的问题(1)

2.光盘引导,然后按图2到图12的方法来修复系统,记住别忘记同步磁盘

原创文章,作者:m25Chronos,如若转载,请注明出处:http://www.178linux.com/86150

(6)
m25Chronosm25Chronos
上一篇 2017-09-04 08:36
下一篇 2017-09-04 11:12

相关推荐

  • Linux计划任务和进程

    一、进程管理 1.进程简介 一个程序对应多个进程;一个进程对应一个程序。 2.进程状态的查看与控制 查看进程状态 w 查看个别用户的进程 eg: w userName list-info JCPU: PCPU: WAHT: from: IDLE: 用户空闲时间 load average: ps -aux -a: 显示所有用户的进程 -u:显示用户名和启动时间…

    2017-09-09
  • 软件包管理、自建yum源与LAMP架构的自动编译安装

    软件包管理 CentOS采用RedHat开发的rpm包管理器管理应用程序包。rpm包是由二进制可执行程序、库、配置文件、帮助文件等组成,支持安装、卸载、查询、升级、降级、校验等操作。 从组成结构上,rpm包由文件清单、安装和卸载时运行的脚本构成。 包管理器有其自带的公共数据库。其数据包括:程序包的名称、版本、依赖关系,功能说明,及各个文件的路径及校验码信息等…

    Linux干货 2016-12-05
  • 学习linux命令和帮助

    一、初级命令: 命令的语法通用格式:  #COMMAND OPTIONS ARGUMRNTS OPTIONS:制定命令的运行特性 选项有两种表现形式:    段选项: -c    短选项:–word 例如 –help –human-readable ARGUM…

    Linux干货 2016-10-30
  • 通过Nginx来安装一个Discuz

    这次由于时间有限,所以我就没有用编译安装来启动LMP,只有Nginx 是编译安装的 因为是在centos7上面安装的Nginx所以我们这里由于能力有限,暂时不能将其加入开机启动,日后我会进行改进,将其加入开机启动。这里我们给出Nginxd的编译选项及环境   yum groupinstall "Development&…

    Linux干货 2016-10-30
  • linux基本命令的使用

      1>    查看当前终端名:tty 或who am i       查看当前所有登录的终端信息:who       查看当前所有登录的终端的详细信息 w 2> 编辑器    …

    2017-07-15
  • Linux——文件处理工具(一)

    (1) 文件查看命令: cat,tac,rev cat [OPTION]… [FILE]…读取文件内容 –E: 显示行结束符$ –V :显示非打印字符 –n: 对显示出的每一行进行编号 –A:显示所有字符 –b:非空行编号 –s:将连续的空行变成一行 &#8211…

    2017-07-29