# MBR 与 GPT 分区

#### 博客作者：联系请[点击](https://hezhiqiang.gitbook.io/about-the-author/lian-xi-zuo-zhe)，搬运不易，希望请作者喝咖啡，可以点击[联系博客作者](https://hezhiqiang.gitbook.io/about-the-author/lian-xi-zuo-zhe)

&#x20;       本文介绍了MBR与GPT这两种不同硬盘分区方案，对不同的情况下，如何正确选择MBR分区方案还是GPT分区方案，给出了建议。

## 什么是分区表

&#x20;       电脑中，有一块硬盘：**物理硬盘是不能被直接使用的，要在该硬盘上划分出分区后，才能够使用**。       &#x20;

其实仅仅划分出分区后，这块硬盘仍然是不能被使用的，需要在划分好的分区上创建文件系统，比如FAT或NTFS，之后才能够被使用。

一块物理硬盘，可以划分成多个分区，分区表定义与保存了硬盘的分区信息，分区表位于硬盘开头的一段特定的物理空间内，操作系统等软件通过读取分区表内的信息，就能够获得该硬盘的分区信息。

![](/files/-MRxACTysv9ibbfEeCHi)

![MBR 与 GPT](https://www.eassos.cn/jiao-cheng/img/mbr-vs-gpt-01.png)

硬盘的空间被分成了C、D、E三个分区，这三个分区的信息，则保存在硬盘最开头的分区表中。

这张图其实不准确，一些细节甚至是错误的，不过如果你第一次接触分区表的概念，这张图能让你迅速理解分区表及其作用。

有两种类型的分区方案： MBR与GPT

## MBR分区方案

这是采用MBR分区方案的硬盘分区示意图，关于主分区、扩展分区与逻辑分区的各自含义，后面会有说明。

![MBR 与 GPT](https://www.eassos.cn/jiao-cheng/img/mbr-vs-gpt-02.png)

MBR是传统的分区表，我们列出MBR分区表的一些重要特点：

* 1、MBR分区方案使用硬盘的**第一个物理扇区中的64个字节作为分区表的空间保存硬盘分区信息，每个分区的信息要占16个字节**，所以，MBR分区表最多只能保存4个分区的分区信息。
* 2、MBR分区方案中，**有三种类型的分区，主分区、扩展分区和逻辑分区，**&#x6269;展分区与逻辑分区是为了突破分区表中只能保存4个分区的限制而出现的。
* 3、MBR分区表中保存的分区信息都是主分区与扩展分区的分区信息，**扩展分区不能直接使用，需要在扩展分区内划分一个或多个逻辑分区后才能使用，**&#x903B;辑分区的分区信息保存在扩展分区内而不是保存在MBR分区表内，这样，就可以突破MBR分区表只能保存4个分区的限制。
* 4、16个字节的分区信息保存有分区活动状态标志、文件系统标识、起止柱面号、磁头号、扇区号、起始扇区位置（4个字节）、分区总扇区数目（4个字节）等内容，这里最重要的是：分区的起始扇区位置与分区的总扇区数，都是用4个字节表示的。
* 5、一般每个扇区的容量是512字节，4个字节的扇区能表示的最大容量是2TB，由4可知，在MBR分区表中，分区的起始位置不能大于2TB，分区的最大容量，也不能大于2TB。所以，**对2TB以上容量的物理硬盘，不适合使用MBR分区方案**。

### MBR分区方案重点记住两点：

* 1、本来MBR分区表只能保存**四个分区**的信息，但通过扩展分区与逻辑分区的使用，MBR突破了这个限制。
* 2、由于MBR分区表中，表示地址的参数是只有4个字节，所以导致MBR分区方案中，分区的起始位置不能大于2TB，分区的最大容量，也不能大于2TB，所以，**对2TB以上容量的物理硬盘，不适合使用MBR分区方案**。

有一些硬盘厂商，尝试扩大扇区的大小，来突破MBR不适合2TB容量以上的硬盘这一限制，所以有时你会发现市场上存在的硬盘，不完全是每个扇区512字节的，有1024字节甚至2048字节每扇区的，但扩大扇区的大小，又会带来很多其他的问题，特别是会严重影响硬盘的速度，所以这种方法，没有被广泛接受。

## GPT分区方案

相比较于MBR，GPT是新一代的分区方案，GPT比MBR要复杂，这张图，简明扼要的显示除了GPT分区方案的硬盘结构。<br>

![MBR 与 GPT](https://www.eassos.cn/jiao-cheng/img/mbr-vs-gpt-03.png)

首先，你会注意到，这张用LBA 0、LBA 1这样的方法来表明硬盘上的地址，这是因为以前一般都是用chs方式对硬盘寻址的，现在一般都用LBA方式对硬盘寻址，关于chs与LBA，LBA 0指的是物理序号为0的第一个扇区，LBA 1指的是物理序号为1的第二个扇区，依次类推。

下面比照着上面这张图，解释下GPT分区方案。

* 1、保留MBR，GPT的分区方案，硬盘的第一个物理扇区，仍然是一个前面讲过的MBR，这个MBR主要是出于软件兼容性的考虑，对GPT分区方案本身来讲，其实没有啥意义。
* 2、GPT分区表头，这个在保留MBR之后，也就是占用第二个物理扇区，GPT分区表头中，定义了分区的数量，基本上，你可以认为GPT分区的数量是没有限制的；
* 3、GPT分区表，从第三个扇区开始，是实际的分区表。请注意：每个扇区可以保存4个分区信息，说明每个分区的分区信息占用的空间是128个字节。
* 4、从3中，我们知道每个分区的信息占用了四分之一个扇区，也就是128字节的空间，对比一下MBR分区方案中，每个分区的信息只有16个字节，所以GPT分区方案，有充足的空间去存储分区的开始位置及总的容量等，基本上，不用考虑对分区容量的限制。
* 5、从3中，我们知道，GPT分区方案，分了多少个区，就在分区表中有多少个分区信息。然而实际情形并不是这样，事实上，如图中所示：如果你使用windows操作系统，通常GPT分区表占用32个扇区的空间，可以保存128个分区信息，用不到的空间会被保留，实际使用了多少分区信息与保留了多少分区信息，在2中的GPT分区表头中设置。我们的电脑，通常不会有超过10个的分区，所以GPT分区表中的空间，90%以上都是保留空间，其实就是被浪费了。
* 6、接下来的两个部分，很简单，分别是GPT分区表，及GPT分区表头的备份。

### BIOS 与 EFI

本文只对BIOS与EFI做基本的介绍。

计算机其实是一堆硬件组成的：CPU、内存、硬盘、主板、显示器、键盘鼠标...，而操作系统是软件，运行在这一堆硬件之上，这个大多数人应该都能理解。

那BIOS与EFI是什么呢？可以把BIOS理解为硬件与软件的中介，操作系统等软件通过BIOS或EFI这个中介来间接操作硬件。

实际上操作系统等软件是可以直接操作硬件的，但这么做，太麻烦了。比如你让打印机打印一个字母A，如果不通过BIOS或EFI这个中介，你至少需要写二十行以上的汇编代码，而且这些代码中，大部分都是例行公事的一些打印准备工作，无聊透顶。所以BIOS与EFI作为硬件软件的中介，是必须的，非常重要。

BIOS与EFI又是什么关系呢？可以这样理解：BIOS是早期的硬件软件中介方式，随着硬件与软件技术的快速发展，BIOS这种中介方式不能适应先进的硬件软件了，于是就出现了EFI这种新的中介方式。

你可能在一些计算机方面的文章中看到过UEFI这个词，简单的说，UEFI就是新版的EFI，事实上现在我们接触到的EFI，都是UEFI。一个计算机是使用BIOS还是使用UEFI，是由这台计算机的主板决定的，如果你使用的计算机比较老，多半用的是支持BIOS的主板；如果很新，多半用的是支持UEFI的主板。

需要说明的是：出于兼容性的考虑，大多数UEFI主板，可以选择仍然使用BIOS方式，就是说UEFI主板，既可以使用新的UEFI中介，还可以使用老的BIOS中介（通常这种方式被称为Legacy BIOS）。关于BIOS与EFI，还有很多东西可以写，但估计写的更多，会让你更加困惑，所以，暂时只介绍这么多。

### MBR和GPT 分区的优缺点

1、传统的BIOS只支持从MBR分区的硬盘启动，MBR分区的分区表保存在硬盘的第一个扇区，而且只有64字节，所以最多只能有四个表项。也就是说，我们只能把硬盘分为4主分区，或者分成小于等于3个主分区再加一个扩展分区，扩展分区又可以分为多个逻辑分区，MBR分区的优点就是简单，所以很多操作系统都可以从MBR分区的硬盘启动，缺点就是MBR分区不能识别大于2T的硬盘空间，也不能有大于2T的分区;

2、GPT分区的硬盘可以解决以上MBR分区的所有缺点，它没有4个主分区的限制，想分几个主分区就可以分几个主分区，它可以识别大于2T的硬盘空间，每个分区的大小也可以超过2T。但是它的缺点是需要操作系统支持。比如只有WinXP 64位、Win Vista、Win 7和Win 8和比较新的Linux发行版支持GPT分区的硬盘。而且，如果没有EFI的支持的话，以上系统也只能将GPT分区的硬盘当成数据盘，不能从GPT分区的硬盘启动;

3、要从GPT分区的硬盘启动，则主板使用EFI、硬盘使用GPT分区、操作系统支持GPT和EFI这三个条件缺一不可。目前比较新的64位Linux系统和Win8系统都是支持EFI的，所以都是需要从GPT分区的硬盘启动的。

4、以上分区策略都是固定分区，硬盘分区一旦完成，则分区的大小不可改变，如果要改变分区的大小的话，只有重新分区。而且由于没有办法把多个硬盘分到一个区，所以再怎么分，每个分区的大小都有限。所以我们需要一种动态分区的东西。LVM就是这样一个东东，它叫逻辑卷管理。使用LVM的机制是这样的：首先把硬盘分区或者整块硬盘标记为一个物理卷(PV)，然后再创建一个卷组(VG)，把一个或多个物理卷加入卷组，最后对卷组进行分区，每一个分区称为一个逻辑卷(LV)。LVM的优点就是可以随时向卷组中添加物理卷扩展卷组的大小，以可以动态调整逻辑卷的大校这在服务器中尤其有用，比如说有一个原本有100个用户的服务器，其/home目录下就会有100个用户的主目录，如果给他们每人分配20G的空间的话，就会占满一个2T的硬盘，如果这时再来100个用户怎么办?如果使用LVM就可以顺利解决这个问题，我们可以再加一个3T的硬盘，然后把这个硬盘加入卷组就可以扩大卷组的大小，然后再调整/home所在的逻辑卷的大小即可。LVM既可以搭配MBR使用，也可以搭配GPT使用。<br>

#### GPT最重要的特点是：使用GPT分区方案，没有硬盘容量不能超过2TB大小的限制，这是GPT区别于MBR的特点与优点！


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://hezhiqiang.gitbook.io/about-the-author/yun-wei-ri-chang-ji-lu/mbr-yu-gpt.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
