一、为什么要先理解分区概念

磁盘分区本质上是把一块物理磁盘按逻辑划分成多个区域,便于安装系统、分离数据、控制挂载点以及规划后续扩容与维护。

在 Linux 中,分区不仅影响系统安装方式,也直接影响挂载、文件系统、Swap 配置和后续运维。

二、常见分区概念

2.1 主分区

主分区是直接在磁盘上创建的分区类型。传统 MBR 模式下,主分区和扩展分区总数最多只能有 4 个;GPT 模式下可以支持更多主分区。

2.2 扩展分区

扩展分区是 MBR 时代为突破主分区数量限制而设计的特殊分区。它本身不能直接格式化使用,主要作用是继续划分逻辑分区。

扩展分区最多只能有 1 个。

2.3 逻辑分区

逻辑分区建立在扩展分区内部,用于继续切分和使用磁盘空间。

2.4 MBR 和 GPT

MBR 与 GPT 是两种不同的磁盘分区方案。

2.4.1 MBR 的特点

  • 最大支持约 2.2TB 的磁盘容量
  • 最多支持 4 个主分区,或者 3 个主分区加 1 个扩展分区
  • 通过传统引导扇区方式启动系统
  • 更常见于旧硬件与旧系统环境

2.4.2 GPT 的特点

  • 支持超过 2.2TB 的大容量磁盘
  • 通常支持更多分区,常见为至少 128 个
  • 更适合现代 UEFI 启动方式
  • 更适合现代服务器和大容量存储场景

2.5 MBR 分区表结构理解

MBR分区表

从实际使用角度看:

  • MBR 场景下,经常会提到主分区、扩展分区和逻辑分区
  • GPT 场景下,更多时候直接使用主分区即可

三、磁盘和分区如何命名

Linux 中的磁盘与分区设备文件通常位于 /dev/ 目录。

3.1 磁盘命名规则

3.1.1 按接口类型命名

  • SAS、SATA、SCSI 类型磁盘常见命名为 sd 开头,例如 /dev/sda
  • 在 KVM、部分公有云场景中,也常见 vd 开头,例如 /dev/vda

3.1.2 按第几块磁盘命名

  • 第一块磁盘:/dev/sda
  • 第二块磁盘:/dev/sdb
  • 第三块磁盘:/dev/sdc

3.2 分区命名规则

  • 主分区和扩展分区分区号通常在 1-4
  • 逻辑分区编号通常从 5 开始

示例:

  • 第 2 块 SATA 硬盘的第 1 个主分区:/dev/sdb1
  • 第 3 块 SAS 硬盘的第 2 个逻辑分区:/dev/sdc6
  • 第 5 块云盘的第 3 个主分区:/dev/vde3

四、分区相关配置文件

4.1 /etc/fstab

/etc/fstab 用于定义系统启动时自动挂载哪些文件系统。

一个典型条目通常包含 6 列:

第 1 列 第 2 列 第 3 列 第 4 列 第 5 列 第 6 列
设备名或 UUID 挂载点 文件系统类型 挂载参数 dump fsck

示例:

/dev/sdb1  /data  xfs  defaults  0  0
UUID=cba1c7d7-d92c-4199-af28-4e049a75fd8f  /data  xfs  defaults  0  0

4.2 /etc/rc.local

/etc/rc.local 常用于系统启动时执行自定义命令。如果不方便通过标准方式配置挂载,也可以把挂载命令写入该文件,实现启动后自动执行。

五、分区工具如何选择

磁盘分区常见方式与对应工具如下:

分区表类型 特点 常见命令
MBR 适合 2TB 以内磁盘,区分主分区、扩展分区、逻辑分区 fdiskparted
GPT 适合大容量磁盘,分区数量更多 gdiskparted

使用经验上通常可以这样理解:

  • fdisk 更适合传统 MBR 分区管理
  • parted 同时适合 MBR 与 GPT,尤其适合处理大盘和 GPT
  • fdisk 中修改通常要执行 w 才会落盘生效
  • parted 中很多操作是实时生效的,需要格外小心

六、小结

理解磁盘分区时,最重要的是先建立这几层关系:

  • 分区方案:MBR 还是 GPT
  • 分区类型:主分区、扩展分区、逻辑分区
  • 设备命名:/dev/sda1/dev/vdb1 这类名字如何解读
  • 挂载配置:/etc/fstab/etc/rc.local 分别解决什么问题

把这些基础打牢后,再学习 fdiskpartedmkfsmount 会更顺畅。