我预先安装了Windows 8,然后在Ubuntu上安装了GRUB。 Ubuntu不是我的事,所以现在我想将其与GRUB一起删除。据我了解,使用UEFI,GRUB不会覆盖EFI分区中的Windows Bootloader,而是存储在其他位置。如何删除GRUB,使我的PC改用Windows引导程序?应该注意的是,在安装Ubuntu时我创建了一个单独的/ boot分区。

#1 楼

该答案适用于那些使用UEFI且已在删除grub之前删除了Ubuntu分区的人。您将在Windows 10中执行此操作。

bootrec /fixmbrbootsect /nt60和使用boot-repair建议的Ubuntu均失败了,这对我有用:

(这个答案是从这里逐字逐句写出来的)


以管理员权限运行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:然后按Enter键,其中Z是您刚刚创建的驱动器号。
键入dir以列出此已挂载EFI分区上的目录
如果在右侧位置,您应该看到一个名为EFI的目录

键入cd EFI,然后键入dir以列出EFI内的子目录

键入rmdir /S ubuntu删除ubuntu引导目录

假设您只有两个操作系统(Win 10和Ubuntu),您现在应该能够直接启动Windows,而不会出现黑屏。

评论


我更喜欢此解决方案,因为我不想创建可启动的设备,并且效果很好

– Efi Kaltirimidou
17年4月25日在10:15

哇,一切都恰好在您说的地方!

– stackOverlord
18年1月28日在0:28

这对我有用,但是我仍然有一个问题:这实际上是删除grub还是在后台仍然发生了什么事情,其中​​grub将东西移交给Windows引导加载程序?

–布拉姆
18年1月29日在13:20

这是有效的解决方案。由于GPT,MBR不再存在。

– dev_nut
18-3-20的2:37

美丽!!经过数小时的尝试,唯一对我有用的东西!

–安东
18年5月6日在18:30

#2 楼

要还原Win 10默认引导加载程序,请按照以下步骤操作:


登录Win 10
打开命令提示符(管理员)
c:\> bootsect /nt60 <drive name>: /mbr

<drive name>是将更新主引导记录(MBR)的驱动器号

例如,要更新C主引导记录,这是以下命令:

c:\> bootsect /nt60 c: /mbr

有关bootsect命令的更多帮助,请参见此处-
https://docs.microsoft.com/zh-cn/windows-hardware/manufacture/desktop/bootsect-command-line-options

评论


这是迄今为止最好的解决方案,只需一分钟,无需安装磁盘,需要USB

– Pavel Niedoba
16 Dec 24'在15:38

某些CISCO Talos恼人的软件阻止了我在自己的操作系统中执行此操作,但是从Windows 10开始,您不再需要安装磁盘来执行此操作。我刚刚进行了一次没有任何操作的操作;您所需要做的就是注销,然后进入登录屏幕,然后开始按住Shift键,然后按右下角的电源图标,然后单击“重新启动”,现在放开Shift键。这将打开与修复盘相同的菜单。您只需要转到疑难解答>高级选项>命令行,然后运行bootsect / nt60 c:/ mbr。 Grub会立即消失。

– SeinopSys
17 Mar 11 '17 at 5:02

似乎不适合我。 Grub出现直到我按退出。更新了NTFS文件系统引导代码。由于更新期间无法锁定卷,因此更新可能不可靠:访问被拒绝。 \ ?? \ PhysicalDrive0引导代码仅在MBR分区磁盘上更新。此磁盘上使用了不同的分区方案。引导代码已在所有目标卷上成功更新。 PS C:\ WINDOWS \ system32>

– Menasheh
17年5月24日下午4:31

/ mbr有什么作用?我正在寻找有关bootsect的文档,但找不到关于/ mbr的任何信息。

–user483903
17年6月16日在17:44

错误的解决方案:由于更新期间无法锁定卷,因此更新可能不可靠:拒绝访问。 \ ?? \ PhysicalDrive0。 1.重新启动,然后按F12键打开您的BIOS屏幕(取决于型号,可能是F8或F2)。 2.您应该看到Ubuntu Grub是第一个引导程序,而Windows是第二个引导程序。 3.按照BIOS中的说明更改顺序。这部影片可能会有所帮助-youtube.com/watch?v=46OofQo1W_4

– jerrymouse
20 Jun 25'20:18



#3 楼

您可以使用Windows 8 / 8.1 DVD还原Windows Bootloader。这些说明的灵感来自于Manindra Mehra的回答,但我将其扩展为完整的工作细节(已通过Windows 8.1 DVD进行了验证)。
在显示Press any key to start from CD or DVD时按一个键。
选择语言等,然后单击Next
单击Repair your computer
单击Troubleshoot
单击Advanced Options
单击Command Prompt
在命令提示符窗口中,键入bootrec /fixmbr
,单击红色的X关闭命令提示符。
单击Turn off your PC
重新打开PC,它应该直接启动进入Windows。

这会将Ubuntu分区保留在硬盘或SSD上。要删除它:


点击Windows + X并选择Disk Management
找到Ubuntu分区。
请确保您具有正确的分区!
右键单击该分区,然后使用Windows文件系统将其删除或重新格式化。


#4 楼

为此,您需要Windows安装cd / dvd


将其放入光盘驱动器并从其启动
在安装屏幕上,要求您安装Windows,单击屏幕左下角的“修复计算机”
现在转到命令提示符(它可能会显示一个窗口,提示“正在尝试自动修复窗口”,将其关闭),然后键入BootRec.exe /fixmbr

完成后,GRUB消失了,您现在可以直接启动进入Windows了。
您的计算机上还有一个Ubuntu分区,该分区未显示在“我的电脑”中,要访问该分区,请右键单击“我的”计算机”,然后选择“管理”,然后转到“磁盘管理”。
选择Ubuntu分区并将其格式化为Windows可以使用的文件系统。


评论


为了完整起见,还要从efi引导菜单中删除ubuntu。我认为这应该作为步骤7添加。

–杨艺博
17年5月11日在2:12

请通过解释如何转到命令提示符来修复步骤3。迈克尔·吉尔(Michael Geary)的答案更为完整。这个答案使我不必要地重置了PC,因为我不知道如何进入命令提示符。

–Felo Vilches
17年5月14日下午16:02

#5 楼

在Windows 10中删除Boot Loader EFI /系统分区
快速指南
以管理员身份打开PowerShell
mountvol S: /S
S:
cd .\EFI\
dir
rd /S Ubuntu

详细信息
管理员PowerShell
在Windows搜索中输入powershell开始菜单中的查找带有标签“ Windows PowerShell”的蓝色图标,右键单击该图标,然后在上下文菜单中选择“以管理员身份运行”。
将EFI /系统分区作为卷安装
安装EFI系统给定驱动器上的分区通过使用/ S参数使用mountvol命令。您可以选择任何所需的免费驱动器号。例如“ S”。
mountvol S: /S

访问已安装的卷
现在已安装分区。我们可以通过cd命令和驱动器号S:更改为驱动器来访问已安装的卷:作为参数
cd S:

要确保我们位于该卷的根目录,我们应该执行:
cd\

通过dir命令键入以列出当前路径的条目,以确保您位于正确的位置。
dir

它应如下所示:
Directory: S:\


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       2019-01-17     12:55                EFI
-a----       2018-10-16     10:57             31 startup.nsh

删除引导加载程序
您的引导加载程序位于EFI目录中。
使用cd命令更改为引导加载程序,并通过dir命令列出条目。
cd .\EFI\
dir

您的输出取决于在已安装的引导装载程序上,这是Windows和Ubuntu的示例。
Directory: S:\EFI


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       2018-12-06     06:55                Ubuntu
d-----       2018-12-05     05:21                Microsoft
d-----       2019-01-17     12:55                Boot

现在您可以通过命令rd和参数/ S删除不需要的装载​​程序。
不要删除引导目录或Windows目录!
Remove-Item -Recurse .\ubuntu


评论


对于我而言,只有您的回答有效。谢谢!

–yushulx
20-05-27在7:18

从现在的自我到未来的自我的注意:这是唯一有效的解决方案

– KhoPhi
20年7月18日在12:32

在PowerShell中而不是命令“ rd / S ubuntu”中,我不得不使用“ Remove-Item ubuntu”。感谢您共享此解决方案!

– BlueDev
20年7月18日在17:23

这是使用EFI的系统的正确答案,尤其是如果您将Linux安装在单独的驱动器上,这是最佳的选择。天哪,那里有很多复杂的答案,而且确实很简单。

– Seamus
20-10-21在22:36



您是否打算写rd / s ubuntu而不是rd / S ubuntu? rd手册中没有/ S选项,它对我不起作用。我改用了Remove-Item ubuntu,就像@BlueDev一样。

– Geras
20-11-30在22:16

#6 楼

使用UEFI,您在efi分区中既有Windows文件夹又有Ubuntu文件夹。 UEFI读取efi条目并将其添加到其自己的NVRAM中以记住它们。您必须先从efi分区中删除ubuntu文件夹,否则UEFI将重新添加它。然后,您必须从UEFI中删除UEFI条目。

您应该将这些文件夹放在efi分区中。仅删除ubuntu文件夹。实时安装程序应显示文件夹。而且,如果只有Windows,则必须从Windows内部挂载efi分区,因为它通常无法挂载。

/EFI/Boot
/EFI/Microsoft
/EFI/ubuntu


您不必安装Ubuntu,但可以使用实时安装程序DVD或闪存驱动器。某些UEFI系统可能会让您从UEFI菜单进行UEFI编辑。

从liveDVD或Flash中使用efibootmgr

sudo efibootmgr -v


“ -v”选项显示所有条目,因此您可以确认要删除右,然后使用“ -b ####”(用于指定条目)和“ -B”(用于删除条目)的组合。示例#5是delete:

http://linux.dell.com/cgi-bin/gitweb/gitweb.cgi?p=efibootmgr.git;a=blob_plain;f=README;hb= HEAD

http://software.intel.com/zh-cn/articles/efi-shells-and-scripting/

评论


这对指导我需要做的事情很有帮助。我可以从此处使用信息删除Windows中的ubuntu分区:superuser.com/questions/662823/…

– flickerfly
17年2月3日在17:59

从活动的USB记忆棒开始,从efibootmgr -v开始,然后使用-b 0002 -B在Windows的“ fixmbr”似乎不起作用之后对我有用,并且该解决方案比其他一些解决方案容易得多。

– Casperrw
19年8月12日在10:27

#7 楼

对我有用的是:


引导到Windows
Win + X
命令提示符(以管理员身份)
bcdedit /set {bootmgr} path \EFI\Microsoft\Boot\bootmgfw.efi
重新引导


#8 楼

没有CD,USB,DVD。没有冗长的教程。

在UEFI上,您要做的只是:

Place Windows boot entry in NVRAM as first.

如何执行此操作-几种解决方案。

最简单的解决方案是使用固件功能并对NVRAM引导项重新排序。

评论


对于想知道在哪里找到它的人,请进入BIOS设置。

– Gripmaster
20 Mar 14 '20在16:31

#9 楼

您也可以使用USB记忆棒进行此项工作。它需要三个应用程序:Unetbootin,FreeDOS和DOS的Testdisk。


首先下载Unetbootin并将其用于制作可引导的USB记忆棒。当提示您安装发行版时,选择Freedos。
下载DOS的Testdisk(不要选择beta,而是选择稳定的版本)。
解压缩文件testdisk.exe和CWSDPMI.exe,并将它们放在可启动的记忆棒上(不是直接放在文件夹中)。
从记忆棒上启动计算机。在“默认”窗口中,只需按Enter。
现在正在启动FreeDOS。选择:FreeDOS Safe Mode (don't load any drivers)并按Enter。
然后键入:C:并按Enter。
现在键入:testdisk并按Enter。
选择[No Log]并按Enter。
选择相关的硬盘驱动器:通常是第二个选项(第一个选项是记忆棒本身),然后按Enter。
选择[Intel],然后按Enter
选择[MBR Code],然后按Enter。出现提示时,键入y(是),然后再次按Enter。

现在您完成了!正常重启计算机。您的计算机应该立即启动Windows。

评论


欢迎来到AskUbuntu!由于这似乎是复制粘贴,因此请在回答的最后考虑链接到原始页面。

– TheSchwa
16 Feb 18'在10:37

#10 楼

如果其他所有方法都失败!


我上面的方法无法在较新的EFI计算机上运行。我解决了问题。这是我的方法。警告,您必须首先重新安装Linux / grub!

步骤:(如果没有其他效果,并且需要很长时间)

1:重新安装Ubuntu / Linux mint(这只是为了使您可以使用GRUB引导到Windows)。

1.5:重新启动并引导至Windows(如果无法引导至Windows,则从CD或USB进行实时引导并在控制台中运行以下命令:

如果您有Windows修复盘,可以选择UEFI固件选项并从那里加载Windows(以避免重新安装Linux)

引导修复(如果需要,请立即进行)


sudo add-apt-repository ppa:yannubuntu/boot-repair

sudo apt-get update

sudo apt-get install -y boot-repair && (boot-repair &)


1g:选择建议的维修并按照屏幕上的说明进行操作。

2g:完成后,重新启动。即使可以,您也应该看到grub菜单。从此处启动到Windows,这不是我们想要的...但是找到引导进入Windows的选项。


2:一旦启动进入Windows,请运行磁盘分区编辑器并删除与Linux / grub相关的所有分区,尤其要确保删除了grub小分区。重新启动

2.5:确保Windows loader是第一个选择的启动设备(很可能是)。 Ubuntu选项。继续启动。

3:如果您到目前为止,您已经完成了所有操作,您应该看到(取决于您的计算机)您的启动屏幕一秒钟,然后它将变成一个错误屏幕,说明启动存在错误。 (最有可能是“ Winload.exe丢失或损坏”)。

3.5:不要惊慌(我曾经)。下一步将还原您的原始引导程序。

4:重新启动并引导到Linux CD或USB。

5:一旦启动,请再次从上方运行启动修复命令。这次运行时。它将采取不同的操作,没有检测到要重新安装的grub引导加载程序,并且应该比以前运行得更快。

6:完成后,重新启动。

7:享受GRUB免费系统!

当我什么都没做的时候,这对我有用,我运行了bootrec.exe。没事。这节省了我的计算机生命。希望它能保存您的!

#11 楼

对于具有GPT分区表的系统,@ Ganesh Kondal提供的方法无效。使用bootsect /nt60 C: /mbr将显示它确实起作用,而实际上却没有。使用bootrec /fixmbr将导致错误:“系统找不到指定的文件”。如果出现上述情况,请执行以下操作(以Windows 10为例):在登录提示符下,按住shift键,单击电源按钮,选择重新启动,然后松手shift
选择故障排除->高级选项->命令行
,在命令行中输入bcdboot <drive name>:\windows


以获取更多详细信息,另请参阅此网页: https://www.tenforums.com/general-support/74226-bootmgr-error-cant-find-fix.html