答案1
您应该能够通过 Live Ubuntu CD 执行此操作。
安装 efibootmgr:
sudo apt-get install efibootmgr
然后在内核中添加EFI支持
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
然后删除您不需要的选项。在此示例中,Ubuntu 是条目 5。可以调用以下命令删除条目 5 并将其从 BootOrder 中删除。
(注意:执行以下命令前请确保输入正确的启动项编号)
sudo efibootmgr -b 5 -B
更多详细信息请参见此处:http://linux.die.net/man/8/efibootmgr
注意:对于任何改变引导加载程序的事情,请确保您有一个可以引导的良好磁盘映像。
现在您还应该删除ubuntu
EFI 分区中的子目录,以防止 UEFI 固件恢复 BootOrder 中的条目。
为此,首先找到您的 EFI 分区。运行sudo fdisk -l
以查看所有连接的驱动器上的分区。EFI 分区位于EFI Partition
“类型”列下。
假设您的 EFI 分区是/dev/sda2
,那么将其安装在任意位置的空文件夹中。
sudo mkdir /mnt/efipart
sudo mount /dev/sda2 /mnt/efipart
现在我们必须找到Ubuntu
此分区中的目录或任何其他发行版的名称。它通常位于 下EFI/distro_name
。
通过以下方式删除该目录及其内容(请确保您删除了正确的目录)sudo rm -r ubuntu
。
答案2
这个答案逐字引用自这里)
cmd.exe
以管理员权限运行进程- 跑步
diskpart
- 键入:
list disk
然后sel disk X
其中 X 是启动文件所在的驱动器 - 键入
list vol
以查看磁盘上的所有分区(卷)(EFI 卷将以 FAT 格式格式化,其他将为 NTFS) - 通过键入以下内容选择 EFI 卷:
sel vol Y
其中 Y 是SYSTEM
卷(这几乎总是 EFI 分区) - 为方便起见,请通过键入以下内容分配驱动器号:
assign letter=Z:
其中 Z 是可用(未使用)的驱动器号 - 键入
exit
以离开磁盘部分 - 在
cmd
提示符下,键入:Z:
并按回车键,其中 Z 是您刚刚创建的驱动器号。 - 键入
dir
以列出此已安装的 EFI 分区上的目录 - 如果你在正确的位置,你应该看到一个名为
EFI
- 输入
cd EFI
然后dir
列出里面的子目录EFI
- 键入
rmdir /S ubuntu
删除 ubuntu 启动目录
答案3
总结:
运行实时 Ubuntu 并输入:
sudo apt-get install lilo
sudo lilo -M /dev/sda mbr
解释:
就我而言,我被困住了grub rescue
。我试图修复一个朋友的笔记本电脑,他从双启动选项中删除了所有 Ubuntu 分区,以为这是清除 Ubuntu 的标准方法。通常情况下,@kamal 提到的答案如上所述有效。但就我而言,这次有点不同/奇怪。
文件夹中没有名为电喷。我看到 EFI 文件夹中有四个 EFI 文件。它们都代表 CPU 架构,看起来都像 Windows EFI 文件。我不想冒险删除错误的 EFI 文件。
通常,Ubuntu EFI 文件如下所示:elilo.efi。但在我的例子中,没有这样的 EFI 文件,也没有具有特定发行版名称的目录。
我希望我早点知道这个命令,否则会浪费很多时间。通常博客中不会提到它。祝你好运。