在 Ubuntu 上镜像 EFI 系统分区 (ESP)

在 Ubuntu 上镜像 EFI 系统分区 (ESP)

当设置 RAID-1 Ubuntu 系统(即在 RAID-1 镜像上的位置//boot位置)时,我不清楚 Ubuntu 的答案是使 EFI 系统分区(ESP,即/boot/efi)也成为冗余。

Fedora 解决方案,即只需将其放在超级块 1.0 RAID-1, 显然不支持全部从而导致grub-install失败。

似乎有一些支持让 Ubuntu 安装程序创建 2 个 ESP 并将文件安装到它们。但根据最近的错误报告,目前还不清楚定期包更新如何支持该方案:

https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1876974也可以看看

那么,我如何在两个磁盘上设置 ESP(当目标是使用 Ubuntu 20.04 LTS 进行 RAID-1 设置时)以使它们冗余并使它们在以后的 Ubuntu 更新中保持同步?

这里的目标是仍然能够启动 Ubuntu 系统,即即使一个磁盘坏了。

我的(或其他相关的)配置文件必须如何/etc/fstab寻找这样的设置?

例如,当第一个 ESP 安装在哪里时,/boot/efi第二个 ESP 需要安装在哪里才能被 Ubuntu 软件包安装后脚本识别?

在安装程序无法正确设置 ESP 后,需要哪些grub-install/ /reinstall 命令来修复 ESP 设置?dpkg-reconfigure

答案1

Ubuntu 对冗余 ESP 的解决方案是仅创建并安装其中两个,并且重新配置grub,而不是在超级块 1.0 RAID-1 上创建一个。

第二个安装点的名称并不重要。由于单个 ESP 通常安装在 下方/boot/efi,因此将第二个 ESP 安装在类似的地方/boot/eficopy是很自然的。

两个 ESP 都必须通过自动安装,/etc/fstab以防发生 grub 软件包更新。

重要的是两个 ESP 都具有正确的 GPT 类型(即C12A7328-F81F-11D2-BA4B-00A0C93EC93B)。每个大小为 200 MiB 就足够了。

初始设置需要重新配置 grub:

dpkg-reconfigure grub-efi-amd64

然后,grub 重新配置脚本会检查所有具有 ESP GPT 类型的分区,并允许用户选择两者。更改后,未来的软件包更新/重新安装将更新两个 ESP。

请注意(截至 2020 年),重新配置仅适用于grub-efi-amd64,不适用于grub-efi-amd64-signed(重新配置不会提示任何内容)。

因此,可能需要先安装正确的 grub,例如:

apt-get install grub-efi-amd64
apt-get remove grub-efi-amd64-signed

答案2

它似乎确实可以与 grub-efi-amd64-signed 一起使用,但令人困惑的是,要获得识别 efi 分区的提示,您必须调用 dpkg-reconfigure shim-signed。

相关内容