Linux 使用fdisk和gdisk对磁盘进行分区和删除分区操作

1. fdisk详细操作步骤
1.1 启动fdisk并查看分区表
sudo fdisk /dev/sdX  # 替换X为实际磁盘标识,如sda、sdb等
进入交互界面后,输入p查看当前分区表:

Command (m for help): p
1.2 创建新分区详细步骤
输入n创建新分区:
Command (m for help): n
选择分区类型:
Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): p
设置分区号(1-4):
Partition number (1-4, default 1): 1
指定起始扇区(通常按默认值):
First sector (2048-10485759, default 2048): [Enter]
指定分区大小:
Last sector, +sectors or +size{K,M,G,T,P} (2048-10485759, default 10485759): +5G
查看创建的分区:
Command (m for help): p
保存更改:
Command (m for help): w
1.3 删除分区详细步骤
查看当前分区:
Command (m for help): p
输入d删除分区:
Command (m for help): d
选择要删除的分区号:
Partition number (1-4): 1
确认删除后查看:
Command (m for help): p
保存更改:
Command (m for help): w
2. gdisk详细操作步骤
2.1 启动gdisk并查看分区表
sudo gdisk /dev/sdX  # 替换X为实际磁盘标识
进入交互界面后,输入p查看当前分区表:

Command (? for help): p
2.2 创建新分区详细步骤
输入n创建新分区:
Command (? for help): n
设置分区号(自动递增):
Partition number (1-128, default 1): [Enter]
指定起始扇区:
First sector (34-20971486, default = 2048) or {+-}size{KMGTP}: [Enter]
指定结束扇区或大小:
Last sector (2048-20971486, default = 20971486) or {+-}size{KMGTP}: +10G
设置分区类型(可选):
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): [Enter]
查看创建的分区:
Command (? for help): p
保存更改:
Command (? for help): w
2.3 删除分区详细步骤
查看当前分区:
Command (? for help): p
输入d删除分区:
Command (? for help): d
选择要删除的分区号:
Partition number (1-2): 1
确认删除后查看:
Command (? for help): p
保存更改:
Command (? for help): w
3. 实际操作示例记录
3.1 使用fdisk创建分区示例记录
$ sudo fdisk /dev/sdb

Welcome to fdisk (util-linux 2.34).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): p
Disk /dev/sdb: 10 GiB, 10737418240 bytes, 20971520 sectors
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: 0x5a1b2c3d

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

Created a new partition 1 of type 'Linux' and of size 2 GiB.

Command (m for help): p
Disk /dev/sdb: 10 GiB, 10737418240 bytes, 20971520 sectors
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: 0x5a1b2c3d

Device     Boot Start     End Sectors Size Id Type
/dev/sdb1        2048 4196351 4194304   2G 83 Linux

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
3.2 使用gdisk创建分区示例记录
$ sudo gdisk /dev/sdc

GPT fdisk (gdisk) version 1.0.5

Partition table scan:
  MBR: not present
  BSD: not present
  APM: not present
  GPT: not present

Creating new GPT entries in memory.

Command (? for help): n
Partition number (1-128, default 1): 
First sector (34-20971486, default = 2048) or {+-}size{KMGTP}: 
Last sector (2048-20971486, default = 20971486) or {+-}size{KMGTP}: +5G
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): 
Changed type of partition to 'Linux filesystem'

Command (? for help): p
Disk /dev/sdc: 20971520 sectors, 10.0 GiB
Model: VBOX HARDDISK   
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 8D1F3B4A-5C6D-4E7F-9012-3A4B5C6D7E8F
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 20971486
Partitions will be aligned on 2048-sector boundaries
Total free space is 15728573 sectors (7.5 GiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048        10487807   5.0 GiB    8300  Linux filesystem

Command (? for help): w

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/sdc.
The operation has completed successfully.
4. 重要注意事项
​​数据安全​​:
操作前务必备份重要数据
确保操作的是正确的磁盘设备
w命令会立即写入更改,无法撤销
​​分区后操作​​:
# 让内核重新读取分区表
sudo partprobe /dev/sdX

# 对新分区进行格式化
sudo mkfs.ext4 /dev/sdX1

# 挂载新分区
sudo mkdir /mnt/newpart
sudo mount /dev/sdX1 /mnt/newpart
​​恢复选项​​:
fdisk:没有内置恢复功能
gdisk:可以使用b命令恢复备份GPT表
​​转换分区表类型​​:
# 将MBR转换为GPT(使用gdisk)
sudo gdisk /dev/sdX
# 输入'w'时会询问是否转换为GPT

# 将GPT转换为MBR(使用fdisk)
sudo fdisk /dev/sdX
# 可能需要先删除所有GPT分区
通过以上详细步骤和示例记录,您应该能够熟练使用fdisk和gdisk进行磁盘分区管理操作。

fdisk和gdisk的主要区别


特性fdiskgdisk
​​分区表类型​​ 主要用于MBR(MS-DOS)分区表 专为GPT(GUID分区表)设计
​​分区数量限制​​ 最多4个主分区或3主分区+1扩展分区 最多128个分区(理论更多)
​​磁盘大小限制​​ 最大2TB 最大8ZB(zettabytes)
​​分区类型代码​​ 使用1字节十六进制代码 使用16字节GUID
​​兼容性​​ 所有系统都支持 需要UEFI/现代BIOS支持
​​备份功能​​ 无自动备份 自动创建备份GPT表
​​分区对齐​​ 需要手动注意 自动处理对齐
​​交互界面​​ 较简单 功能更丰富

​​何时使用哪种工具​​:


  • 使用fdisk:传统BIOS系统、MBR分区表、小于2TB的磁盘
  • 使用gdisk:UEFI系统、GPT分区表、大于2TB的磁盘、需要更多分区的场景

​​注意​​:在操作分区表前,请确保已备份重要数据,错误的操作可能导致数据丢失。

 

 

posted @ 2025-07-30 10:12  你说夕阳很美  阅读(417)  评论(0)    收藏  举报