重新安装 ubuntu 时出现“无法在 /dev/sda 中安装 GRUB”致命错误

重新安装 ubuntu 时出现“无法在 /dev/sda 中安装 GRUB”致命错误

我最近尝试将 Ubuntu 重新安装到我的 Lenovo X1 Carbon,但遇到以下问题(我的所有数据均已备份):

  • 我尝试从 live disk 安装 ubuntu。我选择“重新安装”并遵循默认设置,直到最后出现以下错误:
unable to install GRUB in /dev/sda
Executing `grub-install /dev/sda` failed.
This is a fatal error.
  • 由于我以前的版本有问题,我认为这些可能已经在重新安装中转移,所以我尝试了Erase Ubuntu 14 and replace with Ubuntu 20。这给了我同样的错误。我尝试遵循这篇文章中的建议:https://askubuntu.com/questions/459620/unable-to-install-grub-in-dev-sda-when-installing-grub即:
  • 手动删除以前的分区并创建新分区。这给出了同样的错误。
  • 通过引导终端和内部终端安装 grub Try Ubuntu。使用sudo grub-install /dev/sdbandsudo grub-install /dev/sda在这两种情况下我都得到了
$ grub-install /dev/sda
grub-install: error: cannot find EFI directory.

所以遵循这里的建议找不到 EFI 目录:grub 安装问题我安装了efi系统。现在当我使用时sudo grub-install /dev/sdb出现错误:

sudo grub-install /dev/sda
Install for x86_64-efi platform
grub-install: error: failed to get canonical path of `cow'.
sudo grub-install --recheck --root-directory=/mnt /dev/sda
Install for x86_64-efi platform
grub-install: error: cannot find EFI directory.
grub-install --efi-directory=/dev/sda7
Installing x86_64-efi platform
grub-install: error: failed to get canonical path of `udev`.
sudo grub-install /dev/sda
Install for x86_64-efi platform
grub-install: error: failed to get canonical path of `cow'.

这和我之前遇到的错误是一样的,所以看起来我一直在兜圈子。

我尝试过从 TryUbuntu 内部和通过实时磁盘运行启动修复。这些执行成功,但当我重新启动并尝试访问 Ubuntu 时,我遇到了与以前相同的错误。

我知道每个论坛都有自己的论坛,但我觉得我在它们之间兜圈子。谁能将每个错误拼凑起来来帮助我?

一些背景-我重新安装的原因是几年前我的笔记本电脑在更新过程中崩溃了(我没有意识到电池电缆已关闭。)。我的朋友花了一个下午手动修复零件,让它再次工作。从那时起,有一些事情我无法正常工作(例如打印机驱动程序和日历同步)。因为这些对我的研究来说不是问题,所以我在没有它们的情况下继续研究直到我的博士学位结束。我最近在尝试使用 Firedrake 时遇到了一些错误。由于我现在已经完成了博士学位,这似乎是备份所有数据并重新安装 Ubuntu 的安全时机。希望重新安装能够解决之前崩溃的问题。

答案1

我正在跟进我自己的问题,即我们如何设法让事情顺利进行。

事实证明,问题的根源在于安装在 EFI 中,但系统位于 MBR 中。通过尝试仅在 BIOS 设置中使用旧版启动来检查这一点。如果这不起作用,那么这就是你的问题。

我们做了什么来解决这个问题。

  • 将 BIOS 更改回两者。使用实时驱动器重新启动,然后通过尝试 Ubuntu 访问终端。

  • 按照此处的说明进行操作: https://polarclouds.co.uk/mbr-gpt-no-data-loss/当您运行 gdisk 命令时,应该有一个 MBR 分区和一个损坏的 GPT 分区。

  • 重新启动(通过尝试 Ubuntu 再次使用实时驱动器访问终端)

  • 使用 检查类型是否已更改sudo fdisk -l。现在应该是 type:GPT 而不是 type:dos。

现在重新安装。我在重新安装时遇到分区错误,但擦除并重新安装有效。

相关内容