linux的CentOS系统启动故障与修复

    以CentOS 6为例,系统的启动流程为:

1.开机post加电自检

2.MBR引导

3.通过grub加载内核

4.加载根

5.加载系统中的第一个进程

6.进行初始化

7.出现登录界面

    其中主要的启动环节是grub引导计算机,分为三个阶段:一阶段发生在mbr的446字节中;一点五阶段在mbr后续的扇区中;二阶段在/boot/grub/目录下。

当三个阶段中任意一个阶段被破坏后,计算机就会无法启动,所以要针对不同的破坏实施不同的修复措施。

一、一阶段的破坏及修复方法:

1.破坏一阶段:dd if=/dev/zero  of=/dev/sda  bs=1 count=446 (清空mbr中446字节的内容)

2.修复:

a.利用光盘启动进入救援模式

b.chroot /mnt/sysimage (切根)

c.grub-install  /dev/sda (此命令的作用是重新安装grub,不仅可以修复一阶段,还可以修复一点五与二阶段的破坏)

d.sync (同步操作)

e. hexdump -C -n 512 /dev/sda  (查看是否修复数据)

f.重新启动

    进行以上步骤,就可以正常启动计算机了。如图所示:

linux的CentOS系统启动故障与修复

linux的CentOS系统启动故障与修复

linux的CentOS系统启动故障与修复

二、一点五阶段的破坏与修复:

1.破坏一点五阶段: dd if=/dev/zero  of=/dev/sda  bs=1  count=10240 skip=512 seek=512

2.修复:

a. 进入救援模式

b. 切根:chroot  /mnt/sysimage

c. 可用grub-install 修复,也可以输入grub,出现提示符——输入root(hd0,0),表示root是第一个硬盘的第一个分区——输入setup (hd0)

d.退出重启

linux的CentOS系统启动故障与修复

linux的CentOS系统启动故障与修复

三、二阶段的破坏与修复:

1.破环:删除/boot/grub下的文件,只留下grub.conf文件

  修复:使用grub-install  /dev/sda 命令,重新安装grub


linux的CentOS系统启动故障与修复


linux的CentOS系统启动故障与修复


2.破坏:删除grub.conf文件

   修复:grub.conf文件负责提供启动时的菜单选项,删除这个文件,需要手动输入文件的主要内容:

   a.启动时停滞在grub界面,手动输入root (hd0,0),回车

   b.输入kernel  /VMlinuz版本(支持Tab键补全) root=/dev/sda2,回车

   c.输入 initrd  /initramfs版本

   b.启动后可恢复grub.conf文件


linux的CentOS系统启动故障与修复


linux的CentOS系统启动故障与修复


3.破坏:删除 /boot/grub/目录

   修复:进入救援模式,切根

   a. grub-install  /dev/sda (重装grub)

   b.sync (同步)

   c.手动创建grub.conf文件:vim /boot/grub/grub.conf

                                        default=0

                                        timeout=3

                                        title linux

                                        kernel  /vmlinuz版本   root=/dev/sda (boot所在分区)

                                        initrd   /initranfs版本

d.重启

linux的CentOS系统启动故障与修复

linux的CentOS系统启动故障与修复 

linux的CentOS系统启动故障与修复

 

linux的CentOS系统启动故障与修复

     总结:通过修复启动各种阶段的故障,可以进一步的了解系统启动的过程,对linux系统也加深了认识。

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

(1)
xiamuxiamu
上一篇 2017-09-03
下一篇 2017-09-03

相关推荐

  • Linux 命令行返回状态

    linux 执行命令后会返回一个状态码 命令执行成功返回0: 当删除一个文件并删除成功时返回的状态码为0 [root@localhost 1]# rm -rf 1_1 [root@localhost 1]# echo $? 0 命令执行失败返回1-255 当把 文件夹 1_1 重命名为1_2失败后状态码为1 [root@localhost 1]# mv 1_…

    Linux干货 2017-08-28
  • 马哥教育网络班22期第2周课程作业

    一、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。     1、cp 文件复制 [选项]源文件 目标文件         -r 递归复制    …

    Linux干货 2016-08-31
  • linux软链接与硬链接的区别

    硬链接:相于当给文件增加了一个新名 在添加链接时会增加链接数,其inode结点数不会增加 支持绝对路径与相对路径 硬链接不能对目录来创建 不能跨分区来创建链接 硬链接链接到文件被删除时,依旧可以通过链接文件来访问被删文件的数据 软链接:可以支持对目录来创建链接 (注,当你用rm -rf 删除目录的时候,目录不会删除,但目录中的内容会被删除,并且会删除源文件)…

    Linux干货 2016-10-02
  • 系统管理之Selinux详解

    SELinux: SELinux概念SELinux配置启用SELinux管理文件安全标签管理端口标签管理SELinux布尔值开关管理日志查看SELinux帮助 SELinux概述 SELinux: Secure Enhanced Linux, 是美国国家安全局「NSA=The National Se…

    Linux干货 2016-09-21
  • 安装MariaDB

    1、安装MariaDB 安装命令 yum -y install mariadb mariadb-server安装完成MariaDB,首先启动MariaDB systemctl start mariadb设置开机启动 systemctl enable mariadb接下来进行MariaDB的相关简单配置 mysql_secure_installation首先是…

    Linux干货 2017-08-08
  • Linux计划任务

    Linux计划任务

    Linux干货 2017-10-27