无法将分区大小调整 1 或 3 MiB

Typ*_*war 2 partitioning gparted

我正在尝试以完全适合 4 MiB 物理盘区的方式调整分区大小。这意味着分区扇区的总和必须达到精确的数字才能满足此标准。通过这样做,我可以将该分区转换为 LVM 分区。

现在的分区如下所示:

sudo fdisk -l /dev/sda
Disk /dev/sda: 32 GiB, 34359738368 bytes, 67108864 sectors
Disk model: VBOX HARDDISK   
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: gpt
Disk identifier: 9A97A1D8-0BC8-494B-9B88-1EC4F8AAE7CE

Device        Start      End  Sectors  Size Type
/dev/sda1      2048   512000   509953  249M BIOS boot
/dev/sda2    999424 65107967 64108544 30.6G Linux filesystem
/dev/sda3  65107968 67106815  1998848  976M Linux swap
Run Code Online (Sandbox Code Playgroud)

我正在使用我制作的电子表格来查看分区需要的大小。现在的分区是:

部门 字节 米布 聚乙烯醇
64108544 32823574528 31303 7825.75

所以我需要将其四舍五入为 7825 PE,这样它就变成:

部门 字节 米布 聚乙烯醇
64102400 32820428800 31300 7825

在 GParted 中将其大小从 31303 MiB 调整为 31300 MiB 不起作用。它变成 31299 MiB。

也许有一些我不知道的基础知识?至少我希望 GParted 不会提供在 1-3 MiB 之间调整大小的选项。

这同样适用于 resize2fs。


GParted 无法做到这一点的原因是什么?

有没有办法将大小划分为 1 或 3 MiB?

Rin*_*ind 5

分区需要对齐,未对齐时会出错,因此工具会自动对齐。parted gparted 的后端具有自动对齐功能,但也可以选择将其关闭。

parted /dev/sda
align-check opt n
Run Code Online (Sandbox Code Playgroud)

其中 n 是分区。手册中还提供了以下选项:

-a 对齐类型, --align 对齐类型

为新创建的分区设置对齐方式,有效的对齐类型有:

  • 无 使用磁盘类型允许的最小对齐方式。
  • 柱面 将分区与柱面对齐。
  • 最小 使用磁盘拓扑信息给出的最小对齐方式。该值和 opt 值将使用磁盘提供的布局信息将逻辑分区表地址与磁盘上的实际物理块对齐。最小值是将分区正确对齐到物理块所需的最小对齐方式,这可以避免性能下降。
  • 最佳 使用磁盘拓扑信息给出的最佳对齐方式。这以保证最佳性能的方式与物理块大小的倍数对齐。

大多数工具使用默认的 1Mb 对齐方式。但...

  • 在 MBR 磁盘上:大小或偏移参数向上舍入到柱面对齐。
  • 在 GPT 磁盘上:大小或偏移参数向上舍入以进行扇区对齐。