Linux 分区 ID 详解
在 Linux 系统中,分区 ID(Partition ID) 或 分区类型码(Partition Type Code) 用于告知操作系统和引导加载程序(Bootloader)该分区上存储的是什么类型的数据(是 Linux 文件系统、交换分区还是 Windows NTFS 分区)。
根据磁盘分区表格式的不同(MBR 或 GPT),分区 ID 的定义方式截然不同。
MBR 分区表 (Master Boot Record)
MBR 使用一个 2 位十六进制数 来标识分区类型,这种方式较为古老,且支持的分区类型数量有限。
常见的 MBR 分区 ID:
83:Linux (默认的文件系统类型,如 ext2/ext3/ext4)。82:Linux Swap (交换分区)。fd:Linux RAID (用于软件 RAID 阵列)。07:HPFS/NTFS
(Windows 标准分区)。0B:FAT32 (常用于 EFI 系统分区或兼容性存储)。05:Extended (扩展分区,用于在 MBR 限制下创建更多逻辑分区)。0F:Linux Logical (扩展分区内的逻辑分区)。
GPT 分区表 (GUID Partition Table)
GPT 不再使用简单的 2 位十六进制数,而是使用 GUID (Globally Unique Identifier),这是一个 128 位的唯一标识符,这使得 GPT 能支持几乎无限的分区类型且兼容性更强。
常见的 GPT 分区 GUID:
- Linux 文件系统:
0FC63DAF-8483-4772-8E79-3D69D8477DE4 - Linux Swap (交换分区):
0657FD6D-A4AB-43C4-84E5-0933C84B4B4F - EFI 系统分区 (ESP):
C12A7328-F81F-11D2-BA4B-00A0C93EC93B - Microsoft 基本数据分区:
EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 - Linux RAID:
ABC171D1-F741-4333-A12D-3F13677E0000
如何查看和修改分区 ID
在 Linux 中,可以使用以下工具来管理分区 ID:
使用 fdisk (适用于 MBR 和 GPT)
- 查看:执行
sudo fdisk -l。 - 修改:
- 输入
sudo fdisk /dev/sdX(sdX 为磁盘设备名)。 - 输入
t进入更改分区类型命令。 - 选择分区号。
- 输入对应的 十六进制 ID(如
83或82)。 - 输入
w保存退出。
- 输入
使用 gdisk (专门针对 GPT)
- 查看:执行
sudo gdisk -l /dev/sdX。 - 修改:
- 输入
sudo gdisk /dev/sdX。
- 输入
t更改分区类型。 - 根据提示输入 类型代码(gdisk 提供了简化的代码,
8300代表 Linux filesystem)。 - 输入
w保存退出。
- 输入
使用 lsblk (快速查看)
- 执行
lsblk -f可以直接看到分区的 FSTYPE(文件系统类型),这比查看底层分区 ID 更加直观。
- MBR $rightarrow$ 使用 2 位十六进制码 (如
83) $rightarrow$ 简单但限制多。 - GPT $rightarrow$ 使用 128 位 GUID $rightarrow$ 复杂但灵活,现代标准。
- 分区 ID 仅定义了分区的“标签”,并不等同于 实际格式化后的文件系统,一个分区 ID 设为
83(Linux),但如果你没有执行mkfs.ext4,它依然无法存储数据。
首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/492058.html



