sudo apt-get install efibootmgr
sudo modprobe efivars
sudo efibootmgr
来检查您的启动项。它会返回类似以下内容:BootCurrent: 0004
Timeout: 2 seconds
BootOrder: 2001,0003,0005,0006,0000
Boot0000* Lenovo Recovery System
Boot0001* EFI Network 0 for IPv6 (B8-88-E3-84-F3-EF)
Boot0002* EFI Network 0 for IPv4 (B8-88-E3-84-F3-EF)
Boot0003* Windows Boot Manager
Boot0004* EFI USB Device (SanDisk)
Boot0005* ubuntu
Boot2001* EFI USB Device
sudo efibootmgr -b 5 -B
sudo mkdir /mnt/efipart
sudo mount /dev/sda2 /mnt/efipart
Ubuntu
或其他发行版的名称。它通常位于EFI/distro_name
下面。sudo rm -r ubuntu
来删除该目录及其内容。boot-repair
,但没有结果。其他人说运行 bootrec.exe /fixmbr
,也没有结果。还有人说只删除 Ubuntu 文件夹...但它一直回来...另外有人说只需使用 efibootmgr
删除启动项...但它也会回来。什么都没用。但突然间,我读到了你的帖子,意识到必须同时删除文件夹和启动项?突然就成功了!这就是你一直在寻找的答案。 - Silversonicsudo efibootmgr
时,有没有办法看到一个条目位于哪个磁盘上? - Ricksudo rm -r ubuntu
只有在首先cd
到正确的目录后才能起作用。最好在命令中使用绝对路径:sudo rm -r /mnt/efipart/EFI/ubuntu
。 - mook765cmd.exe
进程
运行diskpart
输入:list disk
,然后输入sel disk X
,其中X是您的引导文件所在的驱动器
输入list vol
以查看磁盘上的所有分区(卷)(EFI卷将以FAT格式化,其他卷将为NTFS)
通过输入sel vol Y
来选择EFI卷,其中Y是SYSTEM
卷(这几乎总是EFI分区)
为方便起见,通过输入assign letter=Z:
为其分配一个驱动器号,其中Z是空闲的驱动器号
输入exit
以退出磁盘工具
仍然在cmd
提示符中,输入:Z:
并按Enter键,其中Z是您刚刚创建的驱动器号
输入dir
以列出此已安装的EFI分区上的目录
如果您在正确的位置,应该会看到一个名为EFI
的目录
输入cd EFI
,然后输入dir
以列出EFI
内部的子目录
输入rmdir /S ubuntu
以删除ubuntu引导目录TL;DR:
运行实时Ubuntu并输入:
sudo apt-get install lilo
sudo lilo -M /dev/sda mbr
解释:
在我的情况下,我遇到了grub rescue
的问题。我试图修复一个朋友的笔记本电脑,他误以为删除所有Ubuntu分区是清除Ubuntu的标准方法。通常情况下,@kamal提到的答案就像上面所说的那样有效。但在我的情况下,这次有点不同/奇怪。
在名为EFI的文件夹中没有Ubuntu目录。我在EFI文件夹里看到了四个EFI文件。它们都代表着CPU架构,并且看起来都像Windows的EFI文件。我不想冒险删除错误的EFI文件。
通常,Ubuntu的EFI文件看起来像这样:elilo.efi。 但在我的情况下,既没有这样的EFI文件,也没有以特定发行版命名的目录。
要是我之前知道这个命令,就能节省大量时间了。它通常在任何博客中都没有提到。祝好运。