关于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
下一篇 2017-09-04

相关推荐

  • Linux管理目录和文件命令

     管理目录命令: pwd:显示当前目录 Cd:   改变当前目录 ls:    查看目录下的内容 rmdir: 删除目录 管理文件命令: cat: 查看文件内容 cp: 复制文件内容 grep:在文件中查找某字符 touch:创建文件 rm&nbsp…

    2016-03-05
  • jackcui0804作业

    (1)显示/proc/meminfo 文件中以大小s 开头的行;( 要求:使用两种方式) [root@centos7 ~]# cat /proc/meminfo | grep -e "^s.*" -e "^S.*" SwapCac…

    Linux干货 2016-08-08
  • Linux之iptables原理详解

    目录: 一、netfilter与iptables 二、filter、nat、mangle等规则表 三、INPUT、FORWARD等规则链和规则 四、Linux数据包路由原理 五、iptables编写规则  一、netfilter与iptables (1)Netfilter是由Rusty Russell提出的Linux 2.4内核防火墙框架,该框架既…

    2017-08-04
  • 海量数据处理算法—Bloom Filter

    1. Bloom-Filter算法简介         Bloom-Filter,即布隆过滤器,1970年由Bloom中提出。它可以用于检索一个元素是否在一个集合中。        Bloom Filter(BF)是一种空间效率很高的随机数据结构,它利用位数组很简洁地表…

    Linux干货 2015-10-22
  • 学习宣言

    不积跬步无以至千里,不积小流无以成江海。 在Linux的世界,我还只是一个顽童,我会通过我的努力证明,我可以攀登峻峰,笑看风云!

    Linux干货 2016-12-28
  • Linux基础知识之文本处理三剑客sed

    处理文本的工具sed     1.sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”。接着用sed命令处理缓冲区中的内容,完成处理后,把缓冲区中的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。sed主要用来自动编…

    Linux干货 2016-08-11