自定义安装Ubuntu后如何从UEFI引导菜单中删除Windows?


12

我在Windows 10附带的带有单个HDD的笔记本电脑上使用“其他...”选项安装了Ubuntu 18.04,在安装过程中,我删除了除分区以外的所有EFI分区。然后,我创建了一个/根文件系统分区和一个/home分区。一切顺利。

除了现在,我在UEFI引导菜单中还有一个额外的Windows条目,该条目由Grub获取。我可以手动编辑/etc/default/grub以隐藏现已失效的Windows启动选项,但是我也想摆脱EFI系统中的条目。我如何摆脱Windows的最后残留痕迹?

Answers:


21

查找UEFI引导条目

要删除UEFI中现在无用的Windows启动项,首先需要找到它。这可以直接从主要的Ubuntu OS中完成。无需从实时USB / DVD引导。安装的Ubuntu已经具有必需的命令行实用程序。

通过按Ctrl+ Alt+ 打开终端T,然后输入:

sudo efibootmgr

出现提示时输入密码,然后按Etner。光标不会移动,您也不会看到任何星号(*****)。这在Ubuntu终端中很正常。您将看到一些输出,例如:

BootCurrent: 0002
Timeout: 2 seconds
BootOrder: 0002,0001,000
Boot0000* Dell
Boot0001* Windows Boot Manager
Boot0002* ubuntu

请注意,除了0“ Dell” ,还有两个Windows条目,“ Windows Boot Manager”有1 个条目。由于删除了EFI以外的所有原始分区,因此无法再启动“ Dell”或“ Windows Boot Manager”。我可以同时删除01。但是对于这个答案,我将展示如何仅删除Windows Boot Manager条目。

注意:您要删除的条目可能与此示例不同。使用从您自己的计算机(而不是上面的示例)获得的输出来确定要删除的条目。

删除过时的启动项

现在您知道要删除该条目1(在本示例中),在终端中输入:

sudo efibootmgr -b 1 -B

注意,1在上面的命令中。此命令将删除条目:

Boot0001* Windows Boot Manager

EFI分区中删除相应的文件夹

我们快完成了。最后一步确保UEFI不会重新生成我们刚刚删除的条目。为此,您必须删除一个文件夹,该文件夹与在先前步骤中删除的条目相对应。

现在,您找到要删除的文件夹的名称和位置。使用以下命令列出EFI分区子文件夹中的所有文件夹:

sudo ls /boot/efi/EFI

您将看到一些输出,例如:

Dell Windows ubuntu

要删除Windows文件夹,请使用以下命令:

sudo rm -r /boot/efi/EFI/Windows

要验证文件夹是否已删除,请sudo ls /boot/efi/EFI再次使用命令。

最后更新grub以隐藏grub菜单

在此阶段grub,即使您仅安装了Ubuntu ,在启动笔记本电脑时,仍会显示菜单以选择各种操作系统。/etc/default/grub使用以下命令编辑文件。如果需要,可以使用任何其他编辑器。

sudo nano /etc/default/grub

使这两行看起来像这样:

GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0

如果该行GRUB_TIMEOUT_STYLE=hidden不存在,则如上所述添加该行。

完成后,按Ctrl+ X,然后按Y和保存并退出编辑器Enter

最后一步是使用以下命令更新grub:

sudo update-grub

现在,笔记本电脑应该直接启动Ubuntu,而不显示grub菜单。如果您需要进入未来的恢复模式,请Esc在笔记本电脑启动时按一下以显示grub菜单。

参考:此答案基于我如何在BIOS引导菜单中删除“ Ubuntu”?(UEFI)

希望这可以帮助


2
ESP应该已经安装在上/boot/efi,我看不出要在其他地方安装ESP的原因。sudo ls /boot/efi/EFI并且sudo rm -r /boot/efi/EFI/Windows应该这样做。
mook765 '18

@ mook765谢谢。我已经编辑了答案。
user68186

efibootmgr在某些实现中可能会出错。在那些系统上,您可能必须bcfg在UEFI v2 shell中使用。
鲍勃

@鲍勃谢谢!随时使用添加另一个答案bcfg。我不熟悉UEFI Shell。
user68186

@ user68186我考虑添加一个答案,但是Arch Wiki确实比以往任何时候都能够更好地解释它,并且我不再可以轻松尝试尝试的机器,因此充其量只能作为Wiki的摘要。
鲍勃'18

-1

打开终端。cd /boot/efi/EFI。删除 Microsoft文件夹- sudo rm -R Microsoft。您也可以删除Boot文件夹- sudo rm -R Boot

要从grub2删除Windows条目,sudo gedit /boot/grub/grub.cfg。查找菜单项,Windows启动管理器(或类似的名称描述),并删除直到大括号(包括大括号)的行,然后保存。

任务完成。重新开始。


2
这个答案有几个问题:首先,仅删除文件夹可能是不够的。请参阅@Silversonic对答案的评论。第二,不应sudo像图形程序那样直接使用图形程序,gedit因为它可能会破坏用户的偏好。如果要与一起使用,最好先使用sudo -i打开root外壳。第三,不建议直接编辑。建议先编辑,然后再编辑。geditsudogrub.cfg/etc/default/grubsudo update-grub
user68186 '18

askubuntu.com/questions/1009574/...不使用sudo gedit,看看 askubuntu.com/questions/437323/is-it-possible-to-edit-grub-cfg以获得更多关于编辑grub.cfg
user68186 '18

足够了。没有问题。它可以100%工作。我已经做过很多次了,而且每次都可以使用。使用sudo -i然后使用gedit还是sudo gedit都没有区别。后者不会破坏您的用户首选项。你从哪里得到的?如果您知道自己在做什么,则可以轻松地编辑grub.cfg;如果不确定,可以首先备份grub.cfg。您正在学究。如果您已经知道所有答案,那么为什么要首先提出问题???
保罗·本森

@PaulBenson我无法对其余内容发表评论,但提出一个您知道答案的问题,然后不仅可以进行自我回答,而且可以积极地鼓励自己进行回答。
恢复莫妮卡
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.