如果你精通硬盘,并且一直在进行格式化和分区,那么你肯定会遇到“MBR”和“GPT”这两个术语。当你双重引导Mac并面临必须从GPT切换到MBR的问题时,这一点尤其明显。你可能想知道,MBR和GPT之间有什么区别,并且使用一个相对于另一个有什么好处吗?我们将在本文中消除你的疑问。

硬盘分区

你可能知道,可以将硬盘分为几个分区。问题是,操作系统如何知道硬盘的分区结构?该信息必须来自某些地方。MBR(主引导记录)和GPT(Guid分区表)就在这里发挥作用。尽管两者在体系结构上都不同,但两者在管理方面均发挥相同的作用,并为硬盘中的分区提供信息。

主引导记录(MBR)

MBR是管理硬盘中分区的旧标准,并且仍然被许多人广泛使用。MBR位于硬盘的最开始,它保存有关如何在存储设备中组织逻辑分区的信息。另外,MBR还包含可执行代码,可以扫描活动操作系统的分区并加载操作系统的启动代码/过程。

对于MBR磁盘,你只能有四个主分区。要创建更多分区,你可以将第四个分区设置为扩展分区,并且可以在其中创建更多子分区(或逻辑驱动器)。由于MBR使用32位来记录分区,因此每个分区最多只能有2TB的大小。典型的MBR磁盘布局如下所示:

初始化 yarn config_raid5用户mbr还是gpt

MBR有一些陷阱。首先,硬盘中只能有4个分区,每个分区的大小限制为2TB。对于具有100TB大存储空间的硬盘,这不能很好地工作。其次,MBR是保存分区信息的唯一位置,如果曾经损坏过(是的,它很容易损坏),则整个硬盘都不可读。

GUID分区表(GPT)

GPT是用于设置硬盘分区的最新标准,它利用全局唯一标识符(GUID)定义分区,并且它是UEFI标准的一部分。这意味着在基于UEFI的系统(Windows 8安全启动功能所必需)上,必须使用GPT。使用GPT,即使大多数操作系统通常将其限制为128个分区,理论上也可以在硬盘上创建无限的分区。与MBR限制每个分区仅2TB的大小不同,GPT中的每个分区最多可以容纳2^64个块的长度(因为它使用的是64位),相当于512字节块的9.44ZB(1 ZB为10亿兆字节)。在微软Windows中,该大小限制为256TB。

初始化 yarn config_raid5用户mbr还是gpt_02

从上面的GPT表方案图中,可以看到硬盘的开头有一个主GPT,结尾有一个辅助GPT,这就是GPT比MBR更有用的原因。GPT将备份头和分区表存储在磁盘的末尾,以便在主表损坏时可以将其恢复。它还执行CRC32校验和以检测标头和分区表的错误和损坏。

你还可以看到硬盘的第一扇区有一个保护MBR。这种混合设置允许基于BIOS的系统使用存储在保护性MBR的代码区域中的引导加载程序从GPT磁盘引导。此外,它还可以保护GPT磁盘免受不知道GPT的磁盘工具的损坏。

操作系统支持

英特尔Macs默认使用GPT,你将无法在MBR系统上安装Mac OS X(无任何调整和黑客)。Mac OS X可以在MBR磁盘上运行,只是你将无法在其上安装。

大多数Linux内核都支持GPT。除非你正在编译自己的内核并且没有在其中添加此功能,否则在GPT磁盘上运行自己喜欢的发行版应该没有问题。需要注意的一件事是,你将不得不使用Grub 2作为引导程序。

对于Windows,只有从XP开始的64位版本的Windows支持从GPT磁盘引导。如果你要预装64位Windows 8的笔记本电脑,则很可能是使用GPT。对于Windows 7和更早版本,默认配置将是MBR而不是GPT。

结论

在大多数情况下,MBR或GPT都可以。仅在需要在Mac上安装Windows或需要大于2TB的分区的情况下,才需要使用GPT或将MBR转换为GPT。另外,对于使用UEFI的较新型号的计算机,它将仅支持GPT。