在为我的 Ubuntu 服务器安装新的 SSD 时,我犯了一个严重的错误,格式化了错误驱动器上的分区。我不小心格式化了包含操作系统的 HDD 的 ESP 分区。这导致 Ubuntu 根本无法启动,PC 只是告诉我reboot and select proper boot device
。
我在 Google 上搜索了所有地方,找到一些帖子告诉我使用 Ubuntu Live usb 并选择“拯救损坏的系统”,但这些帖子都很旧了,Ubuntu 服务器和普通图像都没有显示该选项。我正在使用 Rufus 将图像写入 GPT,因此我能够通过 UEFI 启动 usb。另一篇帖子提到在选择“安装 ubuntu”后选择“重新安装 ubuntu”,但我没有该选项。
我尝试通过 Ubuntu live usb 和独立 live usb 进行启动修复,但它返回 3 个命令,其中最后一个失败。单击继续后,它告诉我 grub 仍然存在并让我重试。我也在 Google 上搜索了这个问题,他们建议编辑最后一个命令,但这也没有用。
有人能给我指出正确的方向并告诉我这是否可行吗?现在是凌晨 5 点,我已经连续 4 个小时试图让我的服务器恢复运行,希望我的解释足够清楚。
答案1
您只需将引导加载程序从安装介质复制到 EFI 分区即可。将 grubx64.efi 放入 .../EFI/boot/grubx64.efi 和 .../EFI/ubuntu/grubx64.efi 中,获取根的 UUID,并将其放入 ...EFI/ubuntu/grub.cfg 中的 grub.cfg 存根文件中(并更改 hd1(磁盘)和 gpt2(分区)以匹配您的根。这是一个示例存根 grub.cfg
search.fs_uuid your-root-uuid-here root hd1,gpt2
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg
安装介质上的引导加载程序位于 /EFI 目录中。挂载您的 EFI,例如在 /mnt/xxx,然后将文件复制到 /mnt/xxx/EFI/boot 等。您可能需要删除 14.04 标签,这里没有任何内容是特定于操作系统的,并且 14.04 已终止使用并且超出了范围。