Windows 7-10 在 UEFI 系统分区上占用了多少空间?

Windows 7-10 在 UEFI 系统分区上占用了多少空间?

Windows 7-10 在 UEFI 系统分区(ESP)上实际占用了多少空间?

我的理由:

我正在一台新电脑上安装 Linux,电脑的硬盘是空白的。如果需要的话,我希望稍后能选择在上面安装 Windows,而且现在格式化分区表时我想知道 ESP 需要多大,以防我决定喝下那杯苦水。我知道有建议分配约 200MiB 的空间,但我可以放心地假设存在一个巨大的安全裕度,我知道我不需要。我确实只有一个小型 SSD,所以这里并不是由 GB 组成的。

对于那些说 200 MB 不多的人来说,我先发制人地闭嘴,想想这节省了 50%,你就会明白我为什么关心。整个系统由 200MB 或更少的小部件组成,而这些组件中的每一个都全面减少 50% 是巨大的。

不管我自己的目的如何,总的来说,了解这一点是件好事,而且我相信其他人出于各种原因也需要这些信息。

答案1

下面是我的某个系统中几个引导加载程序的数字:

  • OpenSUSE(GRUB):3.5 MB
  • Mint 17.2(GRUB):3.4 MB
  • rEFInd 0.10.0:1.3 MB
  • Windows 7的:18 英里
  • Windows 10:23 英里

尽管操作系统引导加载程序占用的空间很小,但我建议将 ESP 保持在 550 MiB,原因如下:

  • 操作系统引导加载程序的需求可能会发生变化。它们可能不会发生数量级的变化,但在短期到中期内可能会增加一倍或三倍。如果您最终保留了重复的文件,情况尤其如此,例如当您将引导加载程序的副本安装到后备文件名时。对于 rEFInd,更新会导致旧图标目录 (840 KiB) 的备份副本,因此 rEFInd 所需的空间几乎增加了一倍。
  • 您可能需要将内核存储在 ESP 上。某些 Linux 引导加载程序和引导管理器(例如 ELILO、SYSLINUX 和 gummiboot/systemd-boot)必须从启动它们的同一分区读取 Linux 内核(或者至少很难从其他地方读取内核)。如果您决定尝试这样的引导加载程序,则 ESP 上每个内核版本需要 30-50 MiB。
  • 一些 EFI 无法处理小于 512 MiB 的 FAT32 分区。(请注意,是 512 MiB,而不是 512 MB;请参阅这里了解差异。)ESP 正式应该是 FAT32,而不是 FAT16 或 FAT12。特别是,一些 EFI 似乎忽略了小 FAT32 分区上的一些文件,这会导致文件未找到问题。如果你运气不好,你一开始不会遇到这个问题,所以你会认为一切都很好,但是当你需要访问一些很少使用的文件(例如,用于恢复操作)时,它会失败。使用 FAT16 或 FAT12 有时可以解决这个问题;但是......
  • 某些程序(包括某些 EFI 和 Microsoft Windows 安装程序(至少对于 Windows 7 如此;我不确定后续版本))在处理 FAT16(可能还有 FAT12)ESP 时存在问题。特别是 Windows,它拒绝识别 FAT16 ESP。如果您尝试在具有 FAT16 ESP 的计算机上进行安装,Windows 安装程序将自动在您现有的 FAT16 ESP 之外创建 FAT32 ESP,然后在重新启动后阻塞。我遇到过一个拒绝识别 FAT16 ESP 的 EFI。

在这些因素中,最安全的方法是创建大小至少为 512 MiB 的 FAT32 ESP。考虑到 MB 与 MiB 混淆的可能性,以及某些工具(如 Linux 的mkdosfs)以略高于 512 MiB 的奇怪值从 FAT16 切换到 FAT32 的事实,我通常将 550 MiB 作为我的推荐值。这个数字很容易记住,并且保证 FAT32 ESP,即使存在 MB 与 MiB 混淆。

当然,你可以尝试更小的 ESP。它可能会起作用;但也可能似乎工作正常,但会产生问题。550 MiB ESP 不应该是那么大的负担,即使在较小的 SSD 上也是如此。例如,这是 64 GiB SSD 的 0.8%。如果丢失不到 1% 的存储空间都是一件难事,那么您确实需要更多的存储空间!

答案2

我刚找到一个朋友,他正在运行 Windows 7。他的 /boot/efi/Microsoft 分区是 17.2MiB。Refind 又占用了 7.1 MiB,总空间远低于 32 MiB。Windows 8 或 10 占用的空间不太可能比这个多得多,但无论如何,知道这一点还是不错的。64MiB 分区应该足够了。

相关内容