关于Windows系统分区的那些事(转)

不久前看到大牛一份帖子,感觉讲的挺不错的,便将这份篇整理出来,大家一起学习学习。(如有冒犯,请联系我)

该文章主要分3个内容

1,磁盘分区表格式:MBR、GPT

2,BIOS引导模式:Legacy BIOS、UEFI BIOS

3,引导修复方法:NTBOOTAutofix工具修复、BOOTICE工具修复

一、磁盘分区表格式

一般来说,磁盘分区表有两种格式:MBR和GPT

MBR分区表在windows操作系统下最多支持4个主分区3个主分区+1个扩展分区(包含多个逻辑分区),扩展分区必须划分为逻辑分区才能使用,1个扩展分区可以划分多个逻辑分区

MBR分区表不支持容量大于2.2TB的分区(一些硬盘制造商将他们的容量较大的磁盘升级到了4KB的扇区,这意味着MBR的有效容量上限提升到了16 TB)

如图是一个MBR分区表示例:1个主分区+1个扩展分区(划分了3个逻辑分区)

GPT分区表

对分区数量没有限制,但在windows系统上最多可以支持128个主分区


GPT分区表突破了MBR最大支持2.2T分区的限制,貌似最大支持18EB的分区

如图是一个GPT分区表示例:划分了7个主分区

二、BIOS引导方式


目前主要的系统引导方式也有两种:传统的LegacyBIOS新型的UEFI BIOS

一般来说,有如下两种引导+磁盘分区表组合方式:LegacyBIOS+MBR和UEFI BIOS+GPT

Legacy BIOS无法识别GPT分区表格式,所以也就没有LegacyBIOS+GPT组合方式;

UEFI BIOS可同时识别MBR分区和GPT分区,所以UEFI下,MBR和GPT磁盘都可用于启动操作系统。不过由于微软限制,UEFI下使用Windows安装程序安装操作系统是只能将系统安装在GPT磁盘中。

再来说说传统Legacy BIOS和新型UEFI BIOS引导方式的工作原理吧:

Legacy BIOS

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

LegacyBIOS→MBR→“活动的主分区”→\bootmgr→\Boot\BCD→\Windows\system32\winload.exe

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

传统Legacy BIOS引导windows操作系统时,是通过一个活动的主分区下的bootmgr(启动管理器)文件导入根目录下boot文件夹里的BCD(启动设置数据)文件,然后BCD文件根据自身的配置内容加载系统启动文件winload.exe(位置:根目录\Windows\system32\winload.exe)来启动系统。

一个BCD文件可以加载多个系统启动文件从而实现引导多个系统的启动

通过EasyBCD工具看以看到BCD文件的内容

如图是我的win8.1和win10两个系统的BCD内容

我的windows 8.1在C盘,winload.exe位置:

C:

\Windows\system32\winload.exe


我的window 10在G盘,winload位置:G:\Windows\system32\winload.exe

通过BCD来加载不同位置的winload.exe来实现这两个系统的启动

通过引导修复工具NTBOOT Autofix查看BCD文件内容

需要注意的是:MBR磁盘格式下,windows系统的启动文件(bootmgr、BCD)必须存放在活动的主分区内

,这样才能正常引导系统启动(MBR磁盘分区格式下,只允许有一个分区是活动的)。


如果是使用微软原版操作系统按照windows安装程序来进行系统安装,系统会自动创建一个隐藏的活动主分区(win7貌似是100M,win8貌似是350M)用来存放启动文件;

如果采用其他安装方式来安装系统,由于系统默认并不会自动创建这个活动的主分区,启动文件将会存放我们的系统盘里,所以我们在采用其它安装方式安装第一个系统时,需要确保安装系统的分区是活动的、而且是主分区,而安装第二个、第三个…系统时,就不必要求必须是主分区了,逻辑分区也可以,因为安装第二个、第三个…系统时,我们已经有了一个活动的主分区了(第一个系统所在的分区),这个活动的主分区下的BCD文件里已经包含了我们的第二个、第三个…系统的启动信息用来启动第二个、第三个…系统。

UEFI BIOS

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

UEFIBIOS→EFI系统分区(FAT格式的分区)→\efi\Microsoft\boot\bootmgfw.efi→efi\Microsoft\BCD→\Windows\system32\winload.efi

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

UEFI BIOS引导windows系统时,是通过一个FAT格式分区下的bootmgfw.efi文件来导入BCD文件,然后BCD文件根据自身的配置内容加载系统引导文件winload.efi

(对比legacy引导发现,UEFI的引导文件为winload.efi,而Legacy的引导文件为winload.exe)

需要注意的是:GPT磁盘格式下,windows系统的启动文件(bootmgfw.efi、BCD)是存放在一个FAT格式的分区里的,有些出厂预装win8系统的电脑下将该FAT分区称之为ESP分区或EFI分区

ESP和EFI分区一般都是隐藏的FAT分区,可以通过DG分区工具来创建ESP分区
DG为该分区添加盘符让其在资源管理器下显现出来

可见,UEFI+GPT模式引导windows系统时,并不需要mbr主引导记录,也不需要活动分区,只需要你一个存放了引导启动文件的fat格式分区就可以了,这个fat分区当然也可以是U盘等外接USB设备了。


就目前情况而言,GPT分区表磁盘不支持32位的win7以及win7之前的系统,支持64位的XP、win7、win8、win10和32位的win8、win10。一般地,GPT磁盘多与64位windows系统组合搭配。

三、引导修复教程

再来说说引导丢失、损坏导致系统无法正常进入情况下,如何通过修复引导来使系统正常启动。

引导问题故障举例:

常见的引导丢失、损坏情况说明如下:

上图是Winload.exe文件有问题,可见是Legacy BIOS引导文件出错;如果此处是winload.efi,则应推测是UEFI BIOS引导文件出错。
NTLDR is missing,NTLDR文件丢失。推断为:XP等NT5.x架构操作系统引导丢失。

NTLDR是如win 2000、XP、win 2003等NT5.x架构操作系统的启动管理器文件,与之对应的bootmgr则是如Vista、win7/8/9/2008/2012等NT6.x架构操作系统的启动管理器

Bootmgr is missing,推断为:win7、win8等NT6.x架构操作系统引导丢失。
引导选择失败

引导修复:


针对于以上各种引导问题给出引导修复解决方法

一般地,引导修复有很多种方法,牛逼的大神直接使用dos命令来搞定,那么针对于我们普通用户,我推荐你先使用网络上的引导修复工具来进行修复,等到使用熟练了,想多学习些技术,这时候再去研究dos命令吧。

下面介绍的两种方法所涉及到NABOOT Autofix、BOOTICE、DG等工具一般PE下都会集成的,这里就不给大家放单独的下载链接了。PE制作及使用的话,这里就不说了,记得N久N久N久以前就发过专门的教程了,如果你非要问我关于PE的东西,请百度“电脑店”“大白菜”“老毛桃”等关键字。

方法一:使用NTBOOT AutoFix工具来修复引导

引导修复工具有很多,这里推荐这款工具给大家,上手简单,操作简单

如果你的系统无法正常进入,那么请到PE下运行NTBOOT AutoFix进行修复;如果你是多系统,其中有一个系统可以正常进入,其它系统引导丢失,那么就可以在这个正常的系统下使用NTBOOT AutoFix进行修复,一般PE下都会集成这个软件。

选择你的系统盘符

可以选择自动修复或手动修复


自动修复:会自动检测你的所有分区,然后查找到你的分区上已安装的系统自动进行修复

手动修复:检测你的所有分区,查找到你的分区上已安装的系统,让你手动决定是否进行修复,

有两种修复方式可选

如下图,我选择了手动修复,检测到我的G盘安装了win10,提示我修复还是跳过,因为我的引导正常,为了给大家演示,我选择了跳过——不修复,然后检查到我的C盘安装了win8.1



检测到Windows 8.1
必须等到修复报告建立完成,才可以点击“退出”完成引导修复

【注意】


使用该软件进行UEFI+GPT模式系统引导修复时,需要先挂载ESP/EFI分区,可通过DG等工具为ESP/EFI分区指定盘符挂载,打开NTBOOT引导修复工具,在里面选择ESP/EFI分区所在盘符,修复即可

方法二:使用BOOTICE工具来修复引导

此工具不是专门用来修复引导的,其功能很是强大,这里只讲如何借助它修复引导

这里我以修复UEFI+GPT模式下win8和win10双系统引导为例说明,Legacy+MBR类似

运行BOOTICE后,切换到“BCD编辑”,然后“新建BCD”
新建BCD,文件名为:BCD
然后点击“查看/修改”
点击“添加”,选择“windows vista/7/2008”(这是NT6.x架构系统,当然win8/10也适用)
点击“添加”后,如下图为默认的初始BCD内容,在此基础上,我们进行win8+win10 BCD的修改

按照下图说明进行各项修改,启动文件winload.efi为UEFI+GPT启动文件,如果是修复Legacy+MBR启动文件,此处应为winload.exe

修改后,点击“保存到当前系统设置”,这样,win8的BCD内容就添加完成了

接下来,我们按照上面的方法再次添加win10的BCD信息,修改好之后,保存当前系统设置,win10的BCD信息就添加好了;然后再点击“保存全局设置”

这样,win8和win10的引导信息就会保存到我们创建的这个BCD文件中了,如图

创建好BCD文件后,我们只需在PE下将这个BCD替换到相应的目录下就可以完成引导修复了。上面我们是以UEFI+GPT模式举例的,随意此处BCD替换文件的目录为ESP/EFI这个fat分区:

efi\Microsoft\BCD


如果是Legacy+MBR模式,若磁盘有一个隐藏的活动主分区,我们需要先给这个隐藏的主分区添加盘符(PE下磁盘管理添加盘符或借助DG工具添加),然后将该BCD文件替换到这个活动主分区:\Boot\BCD

方法二,同样适用于单系统BCD文件的修改;也可以不新建BCD文件,直接对系统中的BCD文件进行修改,就省去了替换BCD的步骤,如下:

之后的步骤跟上面一样。

最后说明下,方法二看起来要比方法一复杂了许多,但是我为什么还要费如此功夫介绍呢?因为,通过方法二,

大家会更加清楚理解UEFI+GPT、Legacy+MBR引导的运行机制,这样就可以以不变应万变了!


另外,如果你是系统折腾狂的话,通过添加修改BCD文件,你甚至可以制作出支持UEFI和Legacy BIOS 的win7+win8+win10多合一启动U盘,从而实现一盘在手,天下我有——一个U盘就可以搞定多个系统的安装!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,847评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,208评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,587评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,942评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,332评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,587评论 1 218
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,853评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,568评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,273评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,542评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,033评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,373评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,031评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,073评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,830评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,628评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,537评论 2 269

推荐阅读更多精彩内容

  • 转载声明:本文虽然不是本人100%原创,但也是辛辛苦苦整理的,可以转载,但请注明出处 这篇文章是关于折腾Windo...
    SOMCENT阅读 7,871评论 3 37
  • 理论部分 镜像 一、镜像的百科定义 1、维基百科 ISO映像是一种光盘的存档文件(英语:archive file)...
    幻影翔阅读 1,697评论 4 3
  • 由于简书没有目录 想看目录的直接打开CSDN的同名文章 目录: [TOC] 磁盘分区格式介绍 一般来说,磁盘分区表...
    李庆雪阅读 27,032评论 9 61
  • 4.x86 CPU架构设计 4.1.x86硬件需求 对于通用交换机硬件需求,请参阅“交换机硬件需求”章节描述。 x...
    半天妖阅读 5,169评论 0 1
  • 从Intel 6系列主板之后,就开始提供UEFI BIOS支持,正式支持GPT硬盘分区表,一举取代了此前的MBR分...
    DecadeHeart阅读 1,638评论 0 1