意外删除了启动 efi fat32 如何为旧的 ubuntu 安装一个?

意外删除了启动 efi fat32 如何为旧的 ubuntu 安装一个?

我的硬盘上有最新版本的 Ubuntu,我用 gpart 删除了 Windows 8。我注意到一个名为 boot efi 的分区,它是 fat32,所以我假设它是另一个与 Windows 关联的分区,然后删除了它。

然后,我收到 BIOS 错误,提示没有操作系统,所以我安装了旧版本的 Ubuntu。现在它可以立即加载我刚刚安装的旧版本,但我无法让它加载我的新 Ubuntu 版本,即我与 Windows 8 一起安装的版本。我如何制作一个 efi 文件来加载包含我所有工作的那个文件?

这个新安装的旧版 Ubuntu 有一个 efi 文件,因此它会立即加载到其中。438.91GB 是我在发生这一切之前使用的主要 Ubuntu 版本。见图:

在此处输入图片描述

答案1

如果您安装了另一个 UEFI 启动及其 efi 启动文件,并且拥有相同版本的 grub,则您只需使用新的 UUID 编辑 efi 分区中的 grub.cfg 即可。

在进行任何更改之前,请备份 ESP - Efi 系统分区。您只需复制文件即可,它应该可以正常工作。否则,您必须运行修复来恢复 efi 启动文件。

您的 /boot/efi/EFI/ubuntu 中应该有一个小型 grub.cfg。这是我的,它包含主安装和驱动器的 UUID,以及该安装的分区。更改为您的主安装的 UUID 和分区号。

search.fs_uuid 45de38c8-6748-4634-b207-628d9aa8b42b root hd0,gpt3 
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg

查看 UUID

sudo blkid -c /dev/null -o list

答案2

Oldfred 和 ubfan1 的建议都值得注意。这是另一个选择:安装我的rEFInd 启动管理器。与 GRUB 不同,它每次启动时都会扫描引导加载程序和 Linux 内核,因此您不必担心配置文件中包含每个操作系统和每个内核。您可以在安装之前使用 CD-R 或 USB 闪存驱动器版本测试 rEFInd(两者的图像均可在下载页面上找到)。

请注意,rEFInd 将拾取您安装的两个 Ubuntu 内核,因此菜单可能有点混乱。您可以通过设置适当的分区标签来澄清这一点,或者,一旦您知道旧安装可以正确启动,删除新安装的分区。当然,现在您意识到您不应该删除您的EFI 系统分区 (ESP)/dev/sda1,在您的情况下,它在 GParted 中被标识为已设置其“启动标志” 。

相关内容