对硬盘进行分区时,剩余的未分配空间很小。这是什么意思,为什么我不能使用它?

Sen*_*aku 11 hard-drive mbr gparted partitioning gpt

我经常在硬盘驱动器的分区方案中遇到一个小的未分配空间,当我想创建一个最大大小的分区时,即使我在分区对话框中将“可用空间以下”设置为零。(见下面的第一张图。)

2048个扇区的空闲空间有什么用?选择的分区表是GPT。这个小空间是否意味着相当于 GPT的MBR?如果是这样,为什么它在空间的末尾,而不是在硬盘的开头?


分区创建 gParted - 未分配空间 未分配空间详情

Rod*_*ith 11

我不知道为什么 libparted 这样做,但我有三个假设:

  • 它可能是过去时代的遗物。当使用旧式柱面对齐时,现代磁盘上的扇区数很少能计算出精确的柱面数——也就是说,最后一个柱面将是部分的。因此,当使用柱面对齐对 MBR 磁盘进行分区时,通常的做法是在磁盘末尾保留一些未使用的扇区。libparted 用于执行此操作的算法最终可能会在 GPT 磁盘上创建 1MiB 间隙。如果是这样,这可以被认为是一个错误,尽管是一个非常小的错误。
  • 这可能是一个舍入错误。在最新版本的 libparted 中,分区起点在 1MiB 边界上对齐。开发人员可能打算让分区在最后一个可用扇区结束,但舍入错误可能导致它下降了 1MiB 的分区对齐值。
  • 这可能是故意的。磁盘末尾的间隙可用于BIOS 引导分区(用户有时必须在分区后添加,因为他们没有意识到他们需要它)或调整分区表的大小。不幸的是,对于这个假设,libparted 不能以这两种方式中的任何一种方式使用这个空间,尽管gdisk可以。

我已经按照可信度从低到高的顺序列出了这些选项。请注意,我是GPT fdisk ( gdisksgdiskcgdisk) 的作者,因此我非常熟悉 GPT 分区的需求。我什至为 libparted 贡献了几行代码,但我不熟悉导致这种行为的 libparted 的具体领域,因此我的假设具有推测性质。