我最近尝试将 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/sdb
andsudo 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'.
- 返回论坛搜索此错误我尝试遵循此处的建议https://askubuntu.com/questions/254491/failed-to-get-canonical-path-of-cow。当我尝试:
grub-install --recheck --root-directory=/mnt /dev/sda
我得到:
sudo grub-install --recheck --root-directory=/mnt /dev/sda
Install for x86_64-efi platform
grub-install: error: cannot find EFI directory.
- 所以我回到错误搜索并在这里找到类似的帖子:找不到 EFI 目录:grub 安装问题
这次我尝试
grub-install --efi-directory=/dev/sda7
并得到:
grub-install --efi-directory=/dev/sda7
Installing x86_64-efi platform
grub-install: error: failed to get canonical path of `udev`.
- 来自这里的建议https://bbs.archlinux.org/viewtopic.php?id=240818所以我然后使用
grub-install --efi-directory=/boot
它给出
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。
现在重新安装。我在重新安装时遇到分区错误,但擦除并重新安装有效。