计算机在启动的过程中是读取硬盘的MBR引导扇区中的内容,来将计算机引导到操作系统当中,所以如何更清楚的了解计算机的MBR的引导,对于掌握与编写一些特殊的程序来说,是非常有价值和帮助的,在Linux操作系统当中,大多数是采用的GRUB的引导流程,用户可以非常清晰的看到整个计算机引导中载入了具体哪些程序,我们可以很直观的去判断引导的过程。
但是Windows却没有真正的将MBR的引导流程很直观的展现的用户,所以当系统启动出现问题的时候,我们并不能很准确的判断问题发生的根源在哪里!所以了解Windows MBR的引导对于深入的学习Windows来说也变得非常重要啦!
在本文开始,笔者提出了4个疑问,这些问题将帮助我们更好的理解计算机启动引导的整个过程,让我们的思路更加清晰&">nbsp;
1、全新硬盘GHOST克隆恢复,系统可以启动吗?
2、预装XP的操作系统的电脑,GHOST克隆恢复系统可以启动吗?
3、预装Vista及以上级别的操作系统,GHOST克隆恢复系统可以启动吗?
4、预装Linux操作系统的电脑,GHOST克隆恢复可以启动吗?
这些问题其实都是关于GHOST的,大家都知道GHOST可以备份我们整个电脑的分区,甚至是整个硬盘,有些时候我们GHOST恢复过的计算机会发生不能启动的问题,为什么呢?这就是本文想和大家一起来探讨的重点
图:GHOST 11.5.1
这就是我们熟知的GHOST界面,在GHOST中常用的几个选项是
Partition to Image(将分区备份为GHO后缀的磁盘镜像)
Disk to Image(将磁盘备份为GHO后缀的磁盘镜像)
Partition from Image(将一个镜像恢复到一个分区)
Disk From Image(将一个镜像恢复到整个磁盘)
这些参数在平时可能我们用的比较多,特别是使用一些快速安装光盘的时候,例如深度技术快速安装,以及萝卜快速安装,之所以安装系统比较块是因为,制作这类系统盘的技术爱好者,已经将整个XP封装成了一个GHO文件,我们所需要做的就是插入光盘,选择一键安装即可
但是就像我们上方提出的问题一样,有些时候我们安装玩GHOST系统盘后发现操作系统启动不起来了?这是为什么呢?这里我们就要说说MBR了
Mbr(Mast Boot Record)主引导记录,这个主引导记录是存放在硬盘的0磁道中的,也就是硬盘的起始位置,MBR的逻辑结构见下图
MBR分为三部分
PART1、启动代码:也可以说是引导代码,这里面包含了各操作系统的引导信息,注意这里不存放引导文件,只存放引导代码,引导代码更具其特征来判断磁盘上存放的是什么操作系统,并且在分区表内找到激活的分区,来读取磁盘上的引导程序
我们知道已Windows XP为例,Windows XP的引导程序主要有这三部分组成 NTLDR.EXE、BOOT.INI、NTDECT 引导代码的任务就是寻找到这些引导程序把控制权交给引导程序,引导程序来启动系统的内核,从来又内核来启动操作系统,在这里就不赘述了
PART2、分区表:分区表记录着我们磁盘的分区状况,一块磁盘只能有4个主分区,和我们在XP里看到的C盘、D盘、E盘、F盘、G盘不同的是,在一个物理磁盘上只能分4个主分区,在XP下我们看到的只能说是一个主分区或者说是几个逻辑驱动器,一般的习惯,我们会把C划分成主分区,其余的空间划分成扩展空间,在扩展空间中就可以创建D\E\F\G\H\I等等等等的逻辑驱动器
PART3、结束位
说了那么多关于MBR的,归根到底我们系统是否能正常启动取决于三个方面
第一、MBR中的引导代码正确
第二、主分区被设置为活动
第三、引导程序正确
现在我们就回到上面的问题,先看看上述问题的实验结果
1、全新硬盘GHOST克隆恢复,系统可以启动吗?
笔者手头准备了一张深度技术V9.0的安装光盘,以光盘方式启动进入GHOST界面,笔者发现GHOST是不能够对分区进行还原的,因为全新硬盘并没有分区,所以全新硬盘只能使用Disk From Image(从一个镜像恢复到整个硬盘)
恢复完毕后发现这个系统是可以正常启动的,笔者就疑惑了,难道GHOST可以写MBR信息吗?或者说深度技术的安装光盘是带有MBR信息的?
带着这个疑问笔者查看了GHOST的参数,发现GHOST其中的一个参数为-BI这个参数是可以备份引导信息的,当然这一切只是推测,在后面的试验中笔者将更进一步的来描述MBR中的奥秘。
2、预装XP的操作系统的电脑,GHOST克隆恢复系统可以启动吗?
预装XP的操作系统,在还原了深度GHOST盘后,能够正常启动,其实这也是在笔者的预料之中,因为XP的引导信息一样,GHOST默认是不会去写MBR中的信息,因为GHOST只是针对盘符中的数据来进行操作的,能够顺利还原
3、预装Vista及以上级别的操作系统,GHOST克隆恢复系统可以启动吗?
预装Vista操作系统,可以顺利还原XP镜像,但是在启动时会蓝屏?同样是微软的引导代码为什么会蓝屏?笔者的疑惑开始不断增多?这是为什么?
4、预装Linux操作系统的电脑,GHOST克隆恢复可以启动吗?
预装Linux操作系统,当还原XP镜像后,系统停留在GRUB界面,这个结果明显和1问题冲突,如果深度镜像写入了MBR,那么系统应该是可以启动的
于是笔者4个实验做完还是一头雾水,MBR中到底存放有哪些东西?如何查看MBR中的信息?对比MBR信息是否能找出其中的玄机呢?
相信通过以上对于Windows MBR引导的分析,大家也有了一个初步的认识与了解啦!