GPT 有几个优点:
- 支持大于2TiB的磁盘。
- 支持大于2TiB的分区。
- 支持超过四个分区,无需区分主分区、扩展分区和逻辑分区。
- 使用GUID作为类型代码,这意味着冲突/重复代码的风险较小。
- 仅使用LBA寻址,而MBR同时使用LBA和CHS。(即使在MBR上,对于大约8GB以上的磁盘,CHS是无用的,因此在现代硬盘上几乎没有真正的冲突风险,它们比这要大得多。)
- 在磁盘开头和结尾提供了重复的分区表结构,这使得从某些用户错误、错误和磁盘损坏中恢复可能。
- 提供了重要数据结构的校验和,可以检测某些类型的分区表损坏。
- 提供UTF分区描述字段,因此您可以为分区命名。请注意,这与分区中包含的文件系统的名称无关。
- 被EFI/UEFI固件原生使用。
请注意 tebibyte(TiB;1024^4 字节)和 terabyte(TB;1000^4 字节)之间的区别。前者是
IEEE-1541单位,而后者是
SI单位。对于大多数磁盘测量来说,IEEE-1541单位更自然。一些文档和软件(尤其是较旧的内容)错误地将SI后缀应用到IEEE-1541测量中,这会造成困惑。
对于大多数安装来说,这些优势大部分都是次要的。最重要的两个优点是 GPT 是 EFI 的自然分区方案,以及没有主/扩展/逻辑的区分。其他 GPT 优势的综合效果值得注意,但对于大多数人来说并不是压倒性的问题。
自2011年中期以来,大多数引入的计算机,包括绝大部分搭载Windows 8及更高版本的系统,都使用EFI固件。如果您在EFI模式下启动这样一台计算机(而不是使用CSM,它可以启用BIOS模式引导),使用GPT分区表是默认选择。如果您在EFI模式下启动(或双启动)Windows,使用GPT是必需的(这是Windows的限制)。据我所知,Ubuntu也无法在EFI模式下安装到MBR磁盘,但您可能可以转换分区表类型,并在安装后成功引导。然而,在EFI模式下从MBR磁盘引导的测试不充分,可能在某些EFI上失败。
MBR的主/扩展/逻辑区分是在1980年代创建的一个笨拙的技巧,用于绕过MBR的四个分区限制。GPT默认支持128个分区,但如果绝对需要,这个限制可以提高。MBR逻辑分区访问速度与主分区相同,但由于它们依赖于跨越整个磁盘的多个扇区的链表数据结构,它们更容易受到损坏的影响。最大的问题只是处理像耗尽主分区或处理涉及主分区和逻辑分区的分区调整操作这样的麻烦事情(因此还需要调整扩展分区的大小,这是额外的操作--也是出错的额外机会)。
如果您在BIOS模式下使用小于2TiB的磁盘启动,最好还是坚持使用MBR,因为有些BIOS对从GPT磁盘启动反应不佳。这些问题通常可以解决,但最好一开始就避免遇到这些问题。在基于BIOS的计算机上使用GPT也会阻止您在该系统上安装Windows。不过,如果您知道自己在做什么并且想要使用GPT,在Ubuntu安装中以BIOS模式使用GPT是可行的,我不会劝阻您这样做 - 但如果遇到问题,您可能需要进行故障排除。
大多数现代计算机都使用EFI,因此,如果您以EFI模式启动,GPT可能是半必需的。如果您在这样的计算机上使用BIOS/CSM/legacy模式,则仍然更倾向于使用MBR,原因如前所述。就我个人而言,在这一点上,如果您有选择的话,我的建议是
禁用 BIOS/CSM/legacy支持,并且在基于EFI的计算机上专门使用EFI模式。这简化了引导路径,并且减少了出现问题的可能性。问题在于,有很多错误的建议,相反地造成了比解决问题更多的问题,据我估计。(例如,在本网站上搜索会发现许多由交叉模式操作系统安装和其他与在基于EFI的计算机上使用BIOS/CSM/legacy模式相关的问题。)
如果您有一个超过2TiB的磁盘,基本上必须使用GPT。唯一的例外是如果该磁盘使用4096字节的逻辑扇区大小,这将将2TiB MBR限制提高到16TiB。一些外部磁盘会这样做,我也听说过一些高端内部磁盘也会这样做。(请注意,许多磁盘具有4096字节的物理扇区和512字节的逻辑扇区。它们与具有512字节物理和逻辑扇区的磁盘具有相同的2TiB MBR限制。)