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 22:24
下一篇 2017-09-03 22:47

相关推荐

  • 马哥教育网络班21期-第4周课程练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。     cp -R /etc/skel /home/tuser1     chmod g-rwx,o-r…

    Linux干货 2016-08-03
  • Linux基础入门命令

    在经过一个星期的入门学习后,对于LINUX的认识也从陌生到了基本了解。总结了一下一周所学习的基本命令。 一、想要查看你当前所在的终端?看下面几条命令: 查看当前登陆的终端名:tty 、whoami ;   查看当前登陆的终端名的详细信息:who am i ; 查看当前所有登陆的终端的详细信息: w ; 二、SHELL 的相关用法 &nbs…

    2017-07-14
  • 手动添加用户

        通常使用useradd命令可以轻松添加一个用户,然后使用passwd命令设置一个密码后就可以登录系统了,其实这一过程完成可以自己手动完成,下面就让我们来通过修改配置文件来添加一个用户。 一、修改/etc/passwd文件     在etc/passwd文件中手动添加一行内…

    Linux干货 2015-04-27
  • Linxu系统的启动过程

    Linxu系统的启动过程 启动流程 1、引导Linux启动是从BIOS中的地址0xFFFF0处开始的,BIOS由两部分组成:POST代码和运行时服务,运行时服务是为操作系统提供一些接口,如温度检测等。 BIOS的第一个步骤是加电自检(POST),完成对硬件的的检测,如某些硬件出现错误无法通过检测就导致系统无法启动,POST完成之后将被清出内存; BIOS的第…

    Linux干货 2016-09-13
  • 用户组和权限管理相关作业

    1创建testuser uid 1234,主组:bin,辅助组:root,ftp,shell:/bin/csh home:/testdir/testuser     [root@ali ~]# useradd -u 1234 -g bin -G root,ftp -s /bin/csh -d /testdir/test…

    Linux干货 2016-08-02
  • Linux网络管理

                          Linux网络管理   本章内容: 网络概念 OSI七层模型 网络设备 TCP/IP IP地址 配置网络 实现网络组 测试网络 网络工具   网络用户应用程序: WEB浏览器(…

    系统运维 2016-09-12