对于GPT的基本概念,我就不叙述了,都在这里。下面主要讲讲GPT的实际应用。
由于目前的磁盘容量越来越大,传统的MBR分区表已经不能满足大容量磁盘的需求。传统的MBR分区表只能识别磁盘前面的2.2TB左右的空间,对于后面的多余空间只能浪费掉了,而目前希捷等磁盘厂商甚至早早就推出了单盘3TB的磁盘,因此,及早迁移到GPT非常有必要。除此以外,MBR分区表只能支持4个主分区或者3主分区+1扩展分区(包含随意数目的逻辑分区),而GPT在Windows下面可以支持多达128个主分区(在Linux或者Unix类不是很清楚,听说是没有限制……基于Itanium和其他架构的Windows或者Unix很早就已经使用了GPT)。
下面先介绍点MBR和GPT的区别。
MBR分区表:
在传统硬盘分区模式中,引导扇区是每个分区(Partition)的第一扇区,而主引导扇区是硬盘的第一扇区。它由三个部分组成,主引导记录MBR、硬盘分区表DPT和硬盘有效标志。在总共512字节的主引导扇区里MBR占446个字节,第二部分是Partition table区(分区表),即DPT,占64个字节,硬盘中分区有多少以及每一分区的大小都记在其中。第三部分是magic number,占2个字节,固定为55AA。
一个扇区的硬盘主引导记录MBR由4个部分组成。
主引导程序(偏移地址0000H--0088H),它负责从活动分区中装载,并运行系统引导程序。
出错信息数据区,偏移地址0089H--00E1H为出错信息,00E2H--01BDH全为0字节。
分区表(DPT,Disk Partition Table)含4个分区项,偏移地址01BEH--01FDH,每个分区表项长16个字节,共64字节为分区项1、分区项2、分区项3、分区项4。
结束标志字,偏移地址01FE--01FF的2个字节值为结束标志55AA,如果该标志错误系统就不能启动。
GPT:
GPT的分区信息是在分区中,而不象MBR一样在主引导扇区,为保护GPT不受MBR类磁盘管理软件的危害,GPT在主引导扇区建立了一个保护分区(Protective MBR)的MBR分区表(此分区并不必要),这种分区的类型标识为0xEE,这个保护分区的大小在Windows下为128MB,Mac OS X下为200MB,在Window磁盘管理器里名为GPT保护分区,可让MBR类磁盘管理软件把GPT看成一个未知格式的分区,而不是错误地当成一个未分区的磁盘。
另外,为了保护分区表,GPT的分区信息在每个分区的头部和尾部各保存了一份,以便分区表丢失以后进行恢复。目前而言,对GPT支持比较好的磁盘管理软件推荐DiskGenius(似乎甚至支持GPT的分区表恢复),在Linux下面则有gparted和gdisk。
对于基于x86的Windows(这里指的是支持从GPT启动的Windows,见开头的链接),想要从GPT磁盘启动,主板的芯片组必须支持UEFI(这是强制性的,但是如果仅把GPT用作数据盘则无此限制)。至于如何判断主板芯片组是否支持UEFI,一般可以查阅主板说明书或者厂商的网址,也可以通过查看BIOS设置里面是否有UEFI字样。我自己的机器是AMD的970芯片组,可以支持UEFI。总体来说,在UEFI的支持方面,Intel芯片组更好一点。关于从GPT磁盘启动的Windows安装,后面会有涉及。
而对于Linux来说,可以选择两种GPT方案:
若芯片组不支持UEFI,那么可以使用普通的BIOS兼容分区+GPT的方案。这里说明一下,所谓的BIOS兼容分区,可以通过DiskGenius进行预先分区,分区类型是BIOS boot partition,大小一般1MB左右就足够了。这个分区的作用是存放引导管理器(一般是Grub2,Grub legacy默认不支持GPT,需要额外打补丁)的引导代码。我个人理解,这个分区应该是“伪装”的MBR,以便保证引导管理器和GPT的兼容。除了BIOS兼容分区之外,其他的分区就和正常的GPT一样了,可以随意分配。
若芯片组支持UEFI,那么推荐就使用UEFI+GPT的方案。只需要分出一个128MB的ESP分区就行了,这也可以通过DiskGenius完成。把磁盘分区类型转换成GPT时,DiskGenius会提示创建ESP分区。如果不打算和Windows组双系统,那么就不需要分配MSR分区,只要ESP分区就行了。
ESP的作用就是存放操作系统的引导管理器以及efi文件。在UEFI+GPT的磁盘上面,这个分区存放着操作系统引导的关键数据,虽然可以通过一定的手段在操作系统里面读取和写入数据,但是不推荐随便去动。
MSR分区即 Microsoft 保留 (MSR) 分区。是每个 GUID 分区表 (GPT)磁盘都要求的分区。系统组件可以将 MSR 分区的部分分配到新的分区以供它们使用。例如,将基本 GPT 磁盘转换为动态磁盘后,系统分配的 MSR 分区将被用作“逻辑磁盘管理器”(LDM) 元数据分区。MSR 分区的大小会因 GPT 磁盘的大小不同而发生变化。对于小于 16 GB 的磁盘,MSR 分区为 32 MB。对于大于 16 GB 的磁盘,MSR 分区为 128 MB。MSR 分区在“磁盘管理”中不可见,用户也无法在 MSR 分区上存储或删除数据。
关于这部分,后面会有进一步介绍。
上面基本上把GPT的各方面基本知识都进行了介绍,下面就讲具体的操作系统安装。注意:无论何种操作系统,都只有64位的系统能从GPT启动。