从数据盘删除EFI系统分区

从数据盘删除EFI系统分区

我的电脑中有一个 SSD 和一个 HDD。
我使用 SSD 作为保存操作系统(Ubuntu 和 Windows)的驱动器。
我以 BIOS/传统模式(MBR 格式)将它们安装在我的 SSD 上,并且我的 HDD 上仍然有一个 ESP,我之前有操作系统,删除它安全吗?是否会对硬盘上的其他分区造成任何问题?我只使用 HDD 作为数据盘。

答案1

它应该是安全的,但如果你想绝对确定,请暂时注释掉/etc/fstabUbuntu 中涉及数据磁盘的所有条目,关闭系统,暂时从 HDD 上拔下数据线,然后验证你的操作系统是否仍然可以启动。如果两个操作系统仍然可以正常启动,那么您可以完全确定 ESP 可以被删除。如果出现问题,只需重新插入数据线即可。

测试完成后,记得取消/etc/fstabUbuntu 中一开始注释掉的条目的注释。

如果您的系统确实以传统模式启动,那么 ESP 分区绝对不是一个因素:它本质上只是 GPT 分区磁盘中的一个普通 FAT32 分区,具有特定的分区类型 UUID。

理论上,支持 UEFI 的系统可以配置为首先从一个磁盘上的 ESP 读取 UEFI 驱动程序,然后启动传统兼容层,从另一个磁盘以传统 BIOS 模式启动,UEFI 固件在没有驱动程序的情况下无法直接访问;但这将是一个非常特殊的配置,我认为大多数 UEFI 固件都不允许发生这种配置。因此,如果您有这样一个特殊的配置,您可能已经比开发系统/主板的工程团队之外的任何其他人了解该特定 UEFI 实现的更多细节。

删除 ESP 可能会也可能不会影响分区编号,具体取决于您用于删除的工具是仅将 GPT 分区表中的 ESP 插槽标记为未使用还是完全重建 GPT 分区表。实际上,这意味着如果您在 Ubuntu 中通过设备名称引用 HDD 上的分区/dev/sd*,则可能需要将该磁盘的分区号调整 1。如果您使用卷标或 UUID 来识别 Ubuntu 中的分区/etc/fstab,则在任何情况下都无需执行任何操作。

答案2

根据硬盘上的内容,最简单的检查方法是断开硬盘连接,看看所有操作系统是否都能顺利启动。

删除 ESP(如从表中删除分区而不创建新分区)有 2 个主要影响:

  1. 分区上的数据丢失
  2. 该磁盘上的分区编号将发生变化

在继续之前,检查所有操作系统是否都以 BIOS/传统模式启动。

为了保护 (1),请检查您的 Linux/*nix 操作系统是否未将分区用于某些用途(/boot或其他用途),在fstab.

对于 (2) - GPT 磁盘上是否还留有任何操作系统?如果是这样,您可能需要检查引导加载程序如何在该磁盘上找到正确的分区。我不知道有哪个 Linux 发行版已将 GRUB 配置为通过数字找到正确的分区 - 所有发行版都应该使用 UUID,对于其他操作系统可能有所不同(我认为基于 UUID 的分区引用仅出现在 Windows 8 中,但不确定)。如果您要在 Linux/*nix 中挂载 HDD 上的任何分区,请检查您的 fstab 条目(如果您使用的是 UUID 或其他与数字无关的方法),否则您的挂载将会中断。

相关内容