GParted 在外部硬盘末端留下 1MB 未分配空间,可以覆盖/替代吗?

GParted 在外部硬盘末端留下 1MB 未分配空间,可以覆盖/替代吗?

我只说外部高清,内置高清没有这个问题。

我创建了一个 GPT 表,然后创建了一个 NTFS 卷。它显示磁盘末尾有 1MB 未分配空间。我知道这是 GPT 表的备份,但我不想让它在那里。无论如何我都会备份我的数据。这仅用于数据存储。我在使用 MBR 时遇到过这个问题,并且卷之间有间隙。我最近转向了 UEFI 并想在所有驱动器上使用 GPT,但我还不太熟悉 UEFI/GPT 的内部工作原理。

我不想争论为什么我想要回 1MB,我只是想要。我想加密卷,但不能,因为之后无法轻松调整大小。

如果有人能说出其他可以让我覆盖此问题并让我拥有所有空间的工具,谢谢。我曾尝试在 Windows 中对其进行分区,但 Gparted 总是显示此问题。我不明白为什么外部与内部的处理方式不同。GPT 不应该有间隙。也许有人也可以解释这个空间是否/为什么必不可少。

编辑:我按照建议摆弄 gdisk。但是 gdisk 会创建一个 Linux 和 Windows 都会识别为有效的符合 GPT/UEFI 标准的分区吗?如果是这样,为什么 Gparted 会留下空间?我仍然不明白为什么外部与内部的处理方式不同。标准就是标准,要统一。

答案1

GPT 要求卷末尾有辅助标签;没有该标签的磁盘已损坏,可能无法被所有系统识别。使用损坏的格式来获得少量空间(至少几百 GB 的磁盘)是没有意义的。

但是,实际的 GPT 标签大小只有大约 68 KB。现代分区软件通常会将开始出于性能原因,每个分区的边界都在 1MB 以内,因为这是任何实际磁盘扇区或闪存擦除块大小的倍数,但实际上没有必要将最后一个分区的末尾置于 1MB 边界上。GParted 可能默认这样做,但gdisk允许您创建一个一直延伸到最后一个可用扇区的分区(距磁盘末尾 68k)。

但请注意,开始分区意味着在磁盘开头,即 GPT 标签和第一个分区之间,还有大约 1MB 的未使用空间。如果您知道磁盘的物理扇区或擦除块大小,则可以将分区与其对齐,而不是使用 1MB 边界,以便将第一个分区的开头移近磁盘的开头。(但这似乎比它的价值更麻烦。)

答案2

我注意到一段摘录https://wiki.archlinux.org/index.php/Btrfs#Partition_offset

GRUB 可以启动 Btrfs 分区,但是模块可能比其他文件系统大。并且 grub-install 生成的 core.img 文件可能不适合 MBR 和第一个分区之间的驱动器的前 63 个扇区(31.5KiB)。最新的分区工具(如 fdisk 和 gdisk)通过将第一个分区偏移大约 1MiB 或 2MiB 来避免此问题。

这似乎意味着这不是其他答案似乎表明的扇区/边界/等对齐问题,而是一种保护措施。支持这一论点的其他迹象:在我使用 btrfs 格式化 SSD 时发生了这种情况,在我指定分区在可用空间的开头对齐之后……但 1MB 的空白空间位于我的分区之前。所以,也许这是分区工具预计 MBR 可能需要额外空间?而分区工具只是没有向用户提供有关发生了什么的反馈?

答案3

我在 Gparted 中调整分区大小时遇到​​了一个问题,即有一个额外的未分配 1MiB 分区。在某些情况下,我能够通过使用对齐至:圆柱体选择而不是对齐至:MiB(这是默认值)。

答案4

我在增加根目录的大小时遇到​​了同样的问题。当我删除交换内存并将其扩展到根目录内存时,剩下 1mb。我能够解决这个问题,方法是将当前的交换内存删除为未分配内存,然后通过减小 Windows 的 NTFS 驱动器大小并创建新的未分配内存集来创建新的交换分区。请注意,现在有两个不同的未分配内存分区,一个来自当前已删除的未分配交换,另一个是从 ntfs 创建的。现在首先不要扩展根目录大小,而是从新的未分配内存(即来自 NTfS 的未分配内存)创建新的交换分区,在创建新的交换内存后,现在尝试扩展根分区,它将占用旧交换的未分配内存,并且不会留下 1mb 的未分配内存。

相关内容