在非英语的 Ubuntu-it.org wiki 页面中声明 UEFI 分区必须始终放在磁盘的开头。
英语 Ubuntu 社区帮助 Wiki 页面中的情况并非如此。
那么,出于某种原因,UEFI 分区是“必须”还是“应该”(假设前一页中的措辞不当)首先出现?如果是,为什么?或者这完全无关紧要?
在非英语的 Ubuntu-it.org wiki 页面中声明 UEFI 分区必须始终放在磁盘的开头。
英语 Ubuntu 社区帮助 Wiki 页面中的情况并非如此。
那么,出于某种原因,UEFI 分区是“必须”还是“应该”(假设前一页中的措辞不当)首先出现?如果是,为什么?或者这完全无关紧要?
此答案中的关键词“应该”、“必须”和“可以”(大写)将按照RFC 2119中的描述进行解释。
一个 (U)EFI 系统分区(从现在开始是 ESP):
并且
唯一的官方限制是:
因此,ESP 必须驻留在磁盘的前 2.2 TB 中的任何位置,但ESP 绝对没有必要成为第一个分区或驻留在磁盘的开头。
(只是华盛顿州雷德蒙德的一些大公司对系统集成商的建议不同)...
我会把它作为磁盘上的最后一个分区(如果 < 2.2TB),因为它只用于加载其他操作系统,但这只是个人的、完全主观的意见!
EFI 规范明确指出对此细节没有限制:
(2.5 版,第 540 页。)
实际上,建议将 ESP 放在首位,因为此位置不太可能受到分区移动和调整大小操作的影响。例如,假设 ESP 存在于 OS A 和 OS B 分区之间,您决定删除 OS B 并将其空间分配给 OS A。在这种情况下,您需要先移动 ESP,然后才能扩展 OS A 分区. 此外,某些工具(例如
efibootmgr
)用作/dev/sda1
ESP 的默认位置。因此,如果您将 ESP 放在别处然后忘记覆盖默认值,您可以创建一个无法启动的条目。在大多数情况下,将 ESP 放在磁盘末尾的效果几乎一样,但这种方法存在一些微妙的问题。一方面,如果更改分区数,ESP 的编号可能不再与其在磁盘上的位置匹配,或者某些分区工具可能会重新编号。这两种结果都可能导致混淆或需要重新配置。还有,如果你使用RAID,加上磁盘空间,磁盘末尾的一个ESP会突然变成中间一个,这可能需要你移动它。
许多预装的 Windows 系统将 ESP 放在 #2 的位置,而 #1 被一个小的制造商特定的分区占据。这样的配置工作正常,而且由于制造商的分区也不太可能被移动或删除,这个配置并不比将 ESP 放在#1 位置差。我不会特意“修复”这样的配置,但如果给我一张空白磁盘并告诉我开始安装操作系统,我自己也不会那样做。
总的来说,如果你有一些令人信服的理由在第一个位置之外创建一个 ESP,请随意这样做;但是如果您从一张空白磁盘开始并且没有其他令人信服的理由,我会把 ESP 放在第一位。