fdisk命令介绍

半兽人 发表于: 2025-11-03   最后更新时间: 2025-11-10 15:19:02  
{{totalSubscript}} 订阅, 53 游览

fdisk 是 Linux 系统中一个非常常用、功能强大的磁盘分区管理工具,用于查看、创建、删除、修改磁盘分区表。

它支持 MBR(Master Boot Record)格式的分区表,也支持 GPT(GUID Partition Table)分区表(但在 GPT 下推荐用 gdisk 或 parted)。

fdisk -l

可能会看到类似这样的输出:

Disk /dev/sda: 100 GiB, 107374182400 bytes, 209715200 sectors
Disk model: VBOX HARDDISK
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x12345678

Device     Boot  Start       End   Sectors  Size Id Type
/dev/sda1  *      2048   1050623   1048576  512M 83 Linux
/dev/sda2       1050624 209715199 208664576 99.5G 8e Linux LVM

二、磁盘总体信息部分

1 Disk /dev/sda: 100 GiB, 107374182400 bytes, 209715200 sectors

  • Disk /dev/sda:磁盘设备名(第一块磁盘)。
  • 100 GiB:磁盘总容量(GiB = 1024³ 字节)。
  • 107374182400 bytes:磁盘的字节总数。
  • 209715200 sectors:总扇区数,一个扇区通常是512字节。

2 Disk model: VBOX HARDDISK

  • 显示磁盘型号或类型,比如物理硬盘、虚拟机磁盘、SSD型号等。

3 Units: sectors of 1 * 512 = 512 bytes

  • 每个扇区大小为 512 字节。
  • “Units” 说明下面表格的 StartEnd 单位是“扇区数”。

4 Sector size (logical/physical): 512 bytes / 512 bytes

  • logical:操作系统看到的逻辑扇区大小。
  • physical:硬盘物理扇区的真实大小。
  • 某些新硬盘可能是:512 / 4096(即 4K 物理扇区)。

5 I/O size (minimum/optimal): 512 bytes / 512 bytes

  • 最小/最优 I/O 单位大小。
  • 表示文件系统写入时的对齐参考,一般与扇区一致。

6 Disklabel type: dos

  • 表示分区表格式类型:

    • dos:即 MBR(Master Boot Record)
    • gpt:即 GUID Partition Table
    • GPT 支持更大磁盘和更多分区(最多128个)。

7 Disk identifier: 0x12345678

  • MBR 分区表的唯一标识符(GPT 下会显示 UUID)。

三、分区表部分

列名 含义说明
Device 分区设备名,如 /dev/sda1/dev/sda2
Boot 启动标志,* 表示可引导分区(通常是系统启动分区)
Start 分区起始扇区号(从0或2048开始)
End 分区结束扇区号
Sectors 分区占用的扇区数量(End - Start + 1)
Size 分区的实际大小(自动换算为MB、GB等)
Id 分区类型编号(如 83 = Linux 文件系统,82 = Swap)
Type 分区类型说明(根据 Id 自动翻译)

四、GPT 磁盘下的输出略有不同

示例:

Disk /dev/nvme0n1: 512 GB, 512110190592 bytes, 1000215216 sectors
Disklabel type: gpt
Disk identifier: 12345678-ABCD-90EF-1234-56789ABCDEF0

Device             Start        End    Sectors   Size Type
/dev/nvme0n1p1      2048    1230847    1228800   600M EFI System
/dev/nvme0n1p2   1230848 1000215182 998984335 476.9G Linux filesystem

区别说明:

  • GPT 的分区名是 /dev/nvme0n1p1 这种格式(p 加数字)。
  • 不显示 Boot 栏(EFI 类型自动引导)。
  • Type 会显示更直观的说明(如 “EFI System”、“Linux filesystem”)。
  • Disk identifier 是 UUID,而非 0x 开头的16进制数。

五、查看多个磁盘的情况

当你系统中有多块磁盘,比如 /dev/sda, /dev/sdb,输出会连续显示多个块:

Disk /dev/sda: ...
Disk /dev/sdb: ...

每个磁盘独立显示其分区信息。

六、快速判断常见情况

现象 含义
Disklabel type: dos 且磁盘 > 2TB 无法完全识别大容量,需要改用 GPT
Boot 栏为空 磁盘不是启动盘或 EFI 启动
没有任何 /dev/sdXn 说明磁盘未分区
Type 为 “Linux LVM” 表示该分区被 LVM 占用
Type 为 “EFI System” 表示是 UEFI 启动分区
Type 为 “Microsoft basic data” 表示 Windows NTFS/FAT 分区
更新于 2025-11-10
在线,2小时前登录

查看Linux更多相关的文章或提一个关于Linux的问题,也可以与我们一起分享文章