简介
使用 parted 工具,扩展分区以使用未使用的磁盘空间,或者缩小分区以将其容量用于不同目的。
先决条件
- 在缩小分区前备份数据。
- 如果要创建的分区大于 2TiB,使用 GUID 分区表(GPT) 格式化磁盘。
- 如果您想缩小分区,首先缩小文件系统,使其不大于重新定义大小的分区。
安装parted 工具
若系统未安装 parted
磁盘分区工具,会提示命令不存在:
localhost:~# parted /dev/sda
-ash: parted: not found
各系统的 parted
工具安装命令:
# debian, ubuntu
apt install parted
# centos
yun install parted
# alpine
apk add parted
调整分区大小
查看分区设备编号
使用 fdisk -l
或 df -h
命令,查看分区设备编号。
如磁盘编号为 /dev/sda
, 该磁盘有3个分区,编号为 /dev/sda1
, /dev/sda2
, /dev/sda3
启动 parted 工具交互界面
对目标磁盘启动 parted
工具,block-device
请替换为实际的磁盘编号,如: /dev/sda
parted block-device
查看要操作的磁盘分区的序号
(parted) print
重新调整磁盘分区大小
(parted) resizepart 3 30GiB
3
为实际要操作的磁盘分区序号
30GiB
为调整分区大小后,新结束点的位置。30GiB
是从磁盘起始位
计算的,不可理解为调整后磁盘空间实际大小为30GiB
。例如/dev/sda1
1G,/dev/sda2
4G, 则/dev/sda3
为 25G
您可以使用大小后缀,如 512MiB、20GiB 或 1.5TiB。默认的大小是 MB。
查看操作结果
(parted) print
退出 parted 交互程序
(parted) quit
操作示例
localhost:~# parted /dev/sda
GNU Parted 3.6
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: ATA VBOX HARDDISK (scsi)
Disk /dev/sda: 34.5GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 316MB 315MB primary ext4 boot
2 316MB 4526MB 4210MB primary linux-swap(v1) swap
3 4526MB 20.0GB 15.5GB primary ext4
(parted) resizepart 3 30GB
Warning: Partition /dev/sda3 is being used. Are you sure you want to continue?
Yes/No? yes
(parted) print
Model: ATA VBOX HARDDISK (scsi)
Disk /dev/sda: 34.5GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 316MB 315MB primary ext4 boot
2 316MB 4526MB 4210MB primary linux-swap(v1) swap
3 4526MB 30.0GB 25.5GB primary ext4
(parted) quit
Information: You may need to update /etc/fstab.
5.5. 使用 parted 重新定义分区大小 https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/9/html/managing_storage_devices/proc_resizing-a-partition-with-parted_getting-started-with-partitions