linux下使用fdisk进行磁盘分区详解

143 阅读3分钟

1️⃣ fdisk 简介

  • fdisk 是 Linux 下用于 创建、删除、查看和修改磁盘分区表 的命令行工具
  • 支持 MBR(Master Boot Record)分区表
  • 对于 GPT 分区,推荐使用 gdisk 或 parted

2️⃣ 查看磁盘信息

sudo fdisk -l

输出示例:

Disk /dev/sda: 500GB
Device     Boot Start      End  Sectors Size Id Type
/dev/sda1  *     2048  1026047 1024000 500M 83 Linux
/dev/sda2       1026048 976773167 975747120 465G 8e Linux LVM
  • /dev/sda:磁盘设备
  • /dev/sda1:分区设备
  • Size:分区大小
  • Type:分区类型

3️⃣ fdisk 操作流程

3.1 启动 fdisk

sudo fdisk /dev/sdb
  • /dev/sdb:待分区的磁盘
  • 进入交互模式后,会显示提示符 Command (m for help):

3.2 查看帮助

在交互模式输入:

m

常用命令:

命令作用
p打印分区表
n新建分区
d删除分区
t修改分区类型
w保存并退出
q退出不保存
l列出已知分区类型

3.3 创建新分区

  1. 输入 n 新建分区

  2. 选择分区类型:

    • p:主分区(最多 4 个)
    • e:扩展分区(在主分区数量已满时使用)
  3. 输入分区号(默认自动分配)

  4. 设置起始扇区(默认直接回车)

  5. 设置结束扇区或大小(+大小单位,例如 +20G)

示例:

Command (m for help): n
Partition type
   ``p   primary (0 primary, 0 extended, 4 free)
   ``e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-976773167, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-976773167, default 976773167): +50G

3.4 删除分区

Command (m for help): d
Partition number (1-4): 1
  • 删除指定分区
  • 删除后需要用 w 保存才能生效

3.5 修改分区类型

Command (m for help): t
Partition number (1-4): 1
Hex code (type L to list all): 8e   # Linux LVM
  • t 修改分区类型
  • 输入 L 可查看所有分区类型及对应代码

3.6 保存分区表

Command (m for help): w
  • 保存修改并退出
  • 如果想放弃修改,用 q 退出

4️⃣ 格式化新分区

创建完分区后,需要格式化才能使用:

sudo mkfs.ext4 /dev/sdb1   # 格式化为 ext4 文件系统
sudo mkfs.xfs /dev/sdb1    # 格式化为 xfs 文件系统

5️⃣ 挂载分区

sudo mkdir /data
sudo mount /dev/sdb1 /data
  • 查看挂载情况:
df -h
  • 挂载到开机自动挂载(编辑 /etc/fstab):
/dev/sdb1   /data   ext4   defaults   0 0

6️⃣ 注意事项

  1. 操作前备份数据:分区操作会清除磁盘上已有数据

  2. MBR 最大分区限制

    • 主分区最多 4 个
    • 超过 4 个需要扩展分区
  3. 分区类型选择

    • Linux 文件系统一般选 83(Linux)
    • LVM 选 8e
  4. 同步修改

    • 修改分区表后,如果系统未刷新,需要重启或用 partprobe 刷新
sudo partprobe /dev/sdb
  1. GPT 分区

    • 如果磁盘 > 2TB,建议使用 GPT 分区表
    • GPT 可以使用 gdisk 或 parted

7️⃣ 总结操作流程

# 查看磁盘
sudo fdisk -l
 
# 启动 fdisk
sudo fdisk /dev/sdb
 
# 帮助
m
 
# 创建新分区
n → p/e → 分区号 → 起始扇区 → 结束扇区或大小
 
# 删除分区
d → 分区号
 
# 修改分区类型
t → 分区号 → 类型代码
 
# 查看分区表
p
 
# 保存退出
w
 
# 格式化
mkfs.ext4 /dev/sdb1
 
# 挂载
mkdir /data
mount /dev/sdb1 /data

💡 核心流程总结

查看磁盘 → fdisk 操作 → 保存分区表 → 格式化分区 → 挂载使用

www.52runoob.com/archives/64…