调整分区的大小

调整分区的大小也是一个非常危险的操作,特别是如果分区已经包含了文件系统。

用于调整分区大小的命令是resizepart

(parted) resizepart
Partition number? 1
End?  [1075MB]? 100%

创建分区

现在,让我们在设备上创建我们的第一个分区:我们必须提供“”,,“(可选)”,“。
再次如果没有直接提供,那么这些值将交互方式。
创建分区的命令是“mkpart”:

(parted) mkpart
Partition type?  primary/extended? primary  选择分区类型
File system type?  [ext2]?   文件系统类型
Start? 1MiB   分区起始点和分区终点
End? 1025MiB

在非交互式模式下运行:

$sudo parted -s /dev/sdb mkpart primary 1MiB 1025MiB

再次运行print命令,我们可以看到刚刚创建的分区:

(parted) print
Model: Generic- SD/MMC/MS PRO (scsi)
Disk /dev/sdb: 7743MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number  Start   End     Size    Type     File system  Flags
 1      1049kB  1075MB  1074MB  primary

删除分区

使用rm命令删除分区

(parted) rm
Partition number? 1
如何使用GNU Parted在Linux上进行分区

如何使用Linux上的GNU Parted分区管理器管理分区。

用分区表初始化设备

首先查看驱动器的当前状态。
以“交互模式”运行parted(需要root权限):

$sudo parted /dev/sdb

将打开parted提示符:

GNU Parted 3.2
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)

可以使用help命令查看可以使用的命令。

查看驱动器的当前状态,使用“print”命令:

Error: /dev/sdb: unrecognised disk label
Model: Generic- SD/MMC/MS PRO (scsi)
Disk /dev/sdb: 7743MB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags:

由于 /dev/sdb不包含分区表,所以只显示有关磁盘模型,总大小和扇区大小的信息。

因此我们必须在其上创建分区表。
执行命令是mklabel
如果命令未指定我们要创建哪个分区表,则parted将在提示符下提问:

(parted) mklabel
New disk label type? msdos

在本例中,我们创建了一个传统的msdos分区表。其他有效值包括“aix”、“amiga”、“bsd”、“dvh”、“gpt”、“loop”、“mac”、“pc98”和“sun”。
如前所述,我们还可以将分区表的类型指定为mklabel命令的参数:

(parted) mklabel msdos

如果要以非交互方式执行相同的操作,使用“-s”选项(--script的缩写):

$sudo parted -s /dev/sdb mklabel msdos

检查分区对齐

分区的对齐是优化性能的一个非常重要的因素
在分开中,我们可以检查两种类型的对齐,“minimal(最小)”和“optimal(最佳)”。
在最小模式中,程序检查分区对物理块的最小对准值,
而在最佳模式下,检查分区是否与物理块大小的倍数对齐,以提供最佳性能。

用于执行这些检查的命令是align-check

(parted) align-check
alignment type(min/opt)  [optimal]/minimal?
Partition number? 1
1 aligned

在交互模式下运行命令后,系统将提示我们提供要检查的对齐类型(默认情况下最佳)和分区号(1)。
在这种情况下,parted确认分区正确对齐。

命令的非交互式版本是:

$sudo parted -s /dev/sdb align-check optimal 1

如何知道上面的命令是否成功,通过检查其退出代码:

$echo $?
0

输出0表示命令执行成功

日期:2020-07-07 20:56:26 来源:oir作者:oir