fdisk适用于mbr分区与小容量磁盘,parted更适合gpt分区与大容量磁盘;二者不可混用,新分区需格式化、挂载并持久化配置。

Linux系统中管理磁盘分区,主要靠fdisk和parted两个命令行工具。它们适用场景不同,选错工具可能导致操作失败或功能受限——比如在2TB以上硬盘上用fdisk建不了完整分区,或对GPT磁盘执行写入操作时被拒绝。
fdisk适用于MBR分区与小容量磁盘
fdisk是交互式分区工具,专为传统BIOS+MBR环境设计,操作直观、反馈明确,适合日常数据盘快速分区。
- 确认目标磁盘:运行sudo fdisk -l查看所有设备,识别出未分区盘(如/dev/sdc)
- 进入分区界面:sudo fdisk /dev/sdc,输入p查看当前状态(空盘应显示无分区)
- 新建主分区:输n → p → 1 → 回车(起始扇区默认)→ +20G(指定大小)
- 设置分区类型(可选):输t → 1 → 83(设为Linux文件系统)
- 保存生效:输w写入分区表;再执行sudo partprobe /dev/sdc通知内核刷新识别
parted更适合GPT分区与大容量磁盘
parted原生支持GPT,突破2TB限制,还能直接指定单位(GB、MiB)、一步初始化分区表并建分区,适合UEFI系统或大容量存储设备。
- 初始化GPT分区表:sudo parted /dev/sdd mklabel gpt
- 创建主分区:sudo parted /dev/sdd mkpart primary ext4 0% 100%(占满整盘)
- 或精确划分:sudo parted /dev/sdd mkpart primary xfs 1GiB 51GiB
- 查看结果:sudo parted /dev/sdd print,注意输出中Partition Table: gpt标识
- parted命令实时生效,无需额外保存步骤,但误操作无法撤销,建议提前备份关键数据
fdisk与parted不能混用的几个关键点
同一个磁盘若已用parted建了GPT分区表,fdisk只能只读查看,不能修改;反之,MBR盘用fdisk改完后,parted虽能识别,但某些高级操作(如resizepart)可能因元数据不一致而报错。
- 判断分区表类型:用sudo fdisk -l /dev/sdX看“Disk label type”字段,dos即MBR,gpt即GPT
- MBR盘误用parted mklabel gpt会清空全部分区;GPT盘误用fdisk w命令可能损坏备份分区表
- 新盘首次分区前,先用lsblk或sudo blkid确认设备名,避免误操作系统盘
分区之后必须做的三件事
无论用哪个工具分完区,新分区还不能直接使用,需完成格式化、挂载、持久化三个环节。
- 格式化:如sudo mkfs.ext4 /dev/sdc1(推荐ext4)或sudo mkfs.xfs /dev/sdc1(高并发场景)
- 临时挂载:sudo mkdir /data && sudo mount /dev/sdc1 /data,再用df -h验证
- 永久挂载:获取UUID(sudo blkid /dev/sdc1),追加一行到/etc/fstab:
UUID=xxx /data ext4 defaults 0 2











