关于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)
上一篇 2017-09-04 08:36
下一篇 2017-09-04 11:12

相关推荐

  • RAID学习总结

    RAID(Redundant Array of Independent Disks): 定义:独立硬盘冗余阵列,旧称廉价磁盘冗余阵列(Redundant Array of Independent Disks),简称磁盘阵列。 原理:把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使其性能达到甚至超过价格昂贵,容量巨大的硬盘。 优势: RAID在容量和管理上…

    Linux干货 2016-08-22
  • selinux与systemd

    selinux :service enhanced linux 安全增强的Linux  软件的安全性 选择安全系数较高的系统提高现有系统的安全性  计算机的安全等级D  最低的安全级别,提供最少的安全防护,系统访问无限制。DOS   C  访问控制的权限,能够实现可控的安全防护,个人账户管理,审计和…

    Linux干货 2017-05-22
  • CA,DNS,LAMP实现wordpress

    拓扑图见编译实现LAMP,bind,CA.jpg test3配置:     yum -y install bind     修改named.conf配置文件:     //      listen-on por…

    2017-04-23
  • 编译安装httpd2.4-centos6

    centos6编译安装httpd2.4 默认是不支持,需自己动手进行编译 apr-1.4+ apr-util-1.4+ :需提前进行编译安装这两个软件 编辑安装httpd2.4实例 1、#安装开发包 [root@www ~]# yum groupinstall “Development Tools” “Server Pla…

    Linux干货 2017-05-17
  • Linux软件包管理之程序包编译安装

    程序包编译 程序包编译安装: Application-VERSION-release.src.rpm–>      安装后,使用rpmbuild命令制作成二进制格式的rpm包,而后再安装 源代码–>预处理–>编译(gcc)–>汇编&#82…

    Linux干货 2016-08-25