1. 分区概念与MBR/GPT:物理分区与逻辑分区、主分区与扩展分区、MBR与GPT分区表结构对比、分区对齐与性能影响

各位好,我是老张。今天咱们聊聊分区这件事。很多人觉得分区就是“把硬盘切成几块”,其实没那么简单。我见过不少运维同事,分区表搞错了,数据全丢。嗯,咱们从最基础的说起。

1.1 物理分区 vs 逻辑分区

先搞清楚一个概念:物理分区和逻辑分区,不是一回事。

  • 物理分区:硬盘物理上划分的区域。比如你买了一块500GB的SSD,厂家可能把它分成几个物理单元。但咱们平时说的“分区”,通常不是这个。
  • 逻辑分区:操作系统层面看到的“盘符”或“挂载点”。比如Windows里的C盘、D盘,Linux里的/dev/sda1、/dev/sda2。这才是我们日常操作的对象。
我的经验: 有一次帮客户恢复数据,发现他以为“物理分区”就是“C盘”,结果误操作把整个盘格了。记住:物理分区是硬件层面的,逻辑分区是软件层面的。别搞混。

1.2 主分区 vs 扩展分区

这个坑,我踩过。早期MBR分区表有个硬伤:最多只能有4个主分区。为什么?因为MBR的分区表项只有64字节,每个分区占16字节,算下来就是4个。

那我想分5个区怎么办?这时候扩展分区就派上用场了。

  • 主分区:可以直接用来装系统、存数据。MBR下最多4个。
  • 扩展分区:不能直接存数据,它是个“容器”。里面可以再划分逻辑分区。
  • 逻辑分区:放在扩展分区里,数量理论上可以无限(实际受操作系统限制)。

关键点: 在MBR磁盘上,你最多只能有4个主分区。如果想分更多,就得把其中一个主分区改成扩展分区,然后在里面建逻辑分区。

举个例子:我有一块500GB的硬盘,想分6个区。我会这样规划:

  • 主分区1:50GB(装系统)
  • 主分区2:50GB(备用系统)
  • 扩展分区:400GB(里面再分4个逻辑分区,每个100GB)

你看,主分区只用了2个,剩下1个名额给扩展分区。完美避开4个的限制。

1.3 MBR vs GPT 分区表结构对比

说到分区表,就绕不开MBR和GPT。我刚开始工作时,用的还是MBR。后来GPT普及了,我才发现MBR有多落后。

先看一张对比表:

特性 MBR GPT
全称 Master Boot Record GUID Partition Table
最大磁盘容量 2TB 9.4ZB(理论值)
分区数量 最多4个主分区 最多128个分区(Windows限制)
引导方式 BIOS + MBR UEFI + GPT
备份机制 无备份 分区表在磁盘头和尾各存一份
校验机制 无CRC校验 有CRC32校验
兼容性 所有操作系统 Windows 7+、Linux、macOS

注意: 如果你用MBR分区表,磁盘容量超过2TB,超出的部分会无法识别。我曾经帮一个客户处理过这个问题——他买了4TB硬盘,结果只认出来1.8TB。换成GPT就好了。

为什么GPT能支持这么大容量?因为MBR用32位表示扇区地址,最大只能到2^32 × 512字节 ≈ 2TB。GPT用64位,理论上能到9.4ZB。你想想看,这差距有多大。

1.4 分区对齐与性能影响

这个知识点,很多人容易忽略。分区对齐,说白了就是让分区的起始位置正好是某个“块”的整数倍。

为什么重要?因为现代硬盘(尤其是SSD)读写的最小单位是“页”(通常是4KB),而不是传统的512字节。如果分区没对齐,一个4KB的写操作可能要跨两个物理页,性能直接腰斩。

核心原则: 分区起始扇区号 ÷ (物理扇区大小 ÷ 逻辑扇区大小) = 整数。通常物理扇区是4096字节,逻辑扇区是512字节,所以起始扇区号必须是8的倍数。更保险的做法是直接用2048扇区(1MB)对齐。

我记得有一次,给一台数据库服务器换SSD。分区时没注意对齐,结果4K随机读写性能只有正常值的60%。后来重新分区,指定起始扇区为2048,性能立马恢复正常。

怎么检查分区是否对齐?

  • Windows: 用 msinfo32 查看“分区起始偏移”,如果能被4096整除,就是对齐的。
  • Linux: 用 fdisk -l 或 parted /dev/sda align-check optimal 1。
# Linux下检查分区对齐示例
fdisk -l /dev/sda
# 输出中看 Start 列,比如 Start=2048,说明是1MB对齐的
# 或者用
parted /dev/sda align-check optimal 1
# 返回 "1 aligned" 表示对齐

我的建议: 新分区时,直接用 parted 的 mkpart 命令,它会自动对齐。或者用 fdisk 时指定起始扇区为2048。别偷懒,这一步省不了。

1.5 知识体系总览

下面这张图,把本章的核心知识点串起来了。你可以把它当作一个快速索引。

分区概念与MBR/GPT知识体系 分区概念与MBR/GPT 知识体系 分区概念 物理分区 vs 逻辑分区 主分区 vs 扩展分区 MBR vs GPT 分区对齐与性能 容量限制 引导方式 起始扇区 = 2048 (1MB对齐) 💡 核心要点:MBR限制多(2TB/4主分区),GPT是现代选择;分区对齐直接影响SSD性能 建议:新磁盘一律用GPT + 1MB对齐,省心省力

这张图把本章的四个核心知识点串起来了。从分区概念出发,分支出物理/逻辑、主/扩展、MBR/GPT、分区对齐四个方向。其中MBR/GPT又衍生出容量限制和引导方式两个子话题。分区对齐则直接关联到起始扇区设置。

我个人习惯,每次做磁盘规划时,都会先画这么一张图。把需求列清楚,再决定用哪种分区表、怎么对齐。磨刀不误砍柴工嘛。

避坑指南: 我曾经在给一台老服务器做系统迁移时,没注意它只支持BIOS+MBR,直接用了GPT分区。结果装完系统无法引导,折腾了大半天。记住:UEFI+GPT是标配,但老硬件可能只支持BIOS+MBR。做之前先确认硬件支持情况。

好了,分区的基础概念就聊到这儿。记住几个关键数字:2TB(MBR上限)、4个(主分区上限)、2048(对齐起始扇区)。这些数字会贯穿整个课程,后面讲镜像加载时还会用到。