I have Windows 8 pre-installed, and then I installed GRUB with Ubuntu. Ubuntu is not my thing, so now I want to remove it along with GRUB. From what I have learned, with UEFI, GRUB does not overwrite the windows bootloader in the EFI partition and is stored elsewhere. How would I remove GRUB and make my PC use the Windows bootloader instead? It should be noted that I created a separate /boot partition when installing Ubuntu.
-
1So for those who have dual boot windows and ubuntu on the same or different disks and don't want the grub loader to show up but default to windows bootup instead and keep ubunut as a second option to start from the UEFI by boot overloading, jsut change the boot order in your UEFI to have windows as first and ubuntu as second and this will do the trick– Ilja KOMar 24, 2022 at 9:53
13 Answers
This answer is for those with UEFI who have deleted the Ubuntu partitions before removing grub
You will be doing this from Windows 10. No bootable media required.
Where bootrec /fixmbr
, bootsect /nt60
and the Ubuntu live with the boot-repair
suggestions have failed, this has worked for me:
(This answer borrowed verbatim from here)
- Run a
cmd.exe
process with administrator privileges - Run
diskpart
- Type:
list disk
thensel disk X
where X is the drive your boot files reside on - Type
list vol
to see all partitions (volumes) on the disk (the EFI volume will be formatted in FAT, others will be NTFS) - Select the EFI volume by typing:
sel vol Y
where Y is theSYSTEM
volume (this is almost always the EFI partition) - For convenience, assign a drive letter by typing:
assign letter=Z:
where Z is a free (unused) drive letter - Type
exit
to leave disk part - While still in the
cmd
prompt, type:Z:
and hit enter, where Z was the drive letter you just created. - Type
dir
to list directories on this mounted EFI partition - If you are in the right place, you should see a directory called
EFI
- Type
cd EFI
and thendir
to list the child directories insideEFI
- Type
rmdir /S ubuntu
to delete the ubuntu boot directory
Assuming you only ever had two operating systems (Win 10 & Ubuntu) you should now be able to boot directly to Windows without hitting the black grub screen.
-
5I preferred this solution because I did not want to create a bootable device and it worked perfectly Apr 25, 2017 at 10:15
-
27
-
5This worked for me, but I still have a question: does this actually remove grub or is in the background still something going on where grub hands things over to the windows boot loader?– BramJan 29, 2018 at 13:20
-
4This is the solution that works. MBR does not exist anymore because of GPT.– dev_nutMar 20, 2018 at 2:37
-
2For those having a scary "System BootOrder not found. Initializing defaults" error, which causes a reboot loop, I had to F2 and select "Windows Boot Manager". Everything else is working like a charm!– tomsihapMar 2, 2019 at 13:15
To restore Win 10 default bootloader follow these steps:
- Log into Win 10
- Open Command Prompt (Admin)
c:\> bootsect /nt60 <drive name>: /mbr
<drive name>
is the drive letter where the Master Boot Record (MBR) will be updated
For example to update C master boot record this is the command:
c:\> bootsect /nt60 c: /mbr
For more help about bootsect command see here - https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/bootsect-command-line-options
-
5This is by far best solution, one minute, no install disk, usb needed Dec 24, 2016 at 15:38
-
2Some CISCO Talos annoyware was preventing me from doing this from within my OS, but as of Windows 10 you no longer need an install disk to do this. I have just done this operation without one; all you need to do is log out so you're on the log in screen, then you start holding down Shift, and press the power icon in the bottom right, then click Restart, now let go of Shift. This will open the same menu as the repair disk. You just have to go to Troubleshoot > Advanced options > Command Line and run
bootsect /nt60 c: /mbr
. Grub will be gone in an instant. Mar 11, 2017 at 5:02 -
12Does not appear to work for me. Grub appears until I press exit. Updated NTFS filesystem bootcode. The update may be unreliable since the volume could not be locked during the update: Access is denied. \??\PhysicalDrive0 Bootcode is only updated on MBR partitioned disks. A different partitioning scheme is used on this disk. Bootcode was successfully updated on all targeted volumes. PS C:\WINDOWS\system32>– MenashehMay 24, 2017 at 4:31
-
1What does the /mbr do? I looked for documentation on bootsect, and I couldn't find anything about /mbr.– user483903Jun 16, 2017 at 17:44
-
2Solution to the error: The update may be unreliable since the volume could not be locked during the update: Access is denied. \??\PhysicalDrive0. 1. Reboot and press F12 to open your bios screen (It could be F8 or F2 depending on your model). 2. You should see Ubuntu Grub as the first bootloader and Windows as the second one. 3. Follow the instructions in your BIOS to change the order. This video might help - youtube.com/watch?v=46OofQo1W_4 Jun 25, 2020 at 20:18
Remove Boot Loader EFI / System Partion in Windows 10
Quick Guide
Open PowerShell as Administrator
mountvol S: /S
S:
cd .\EFI\
dir
rd /S Ubuntu
Details
Administrator PowerShell
Enter powershell into the windows search of the start menu. Look for a blue icon with the label "Windows PowerShell", right click on the that and select "Run as Administrator" within the context menu.
Mount EFI/System Partition As Volume
To Mount the EFI System Partition on the given drive use the mountvol command by using the /S parameter. You can chose any free drive letter you want. For example "S".
mountvol S: /S
Access Mounted Volume
Now the partition is mounted. We can access the mounted volume by changing to the drive by the cd command and the drive letter S: as parameter
cd S:
To ensure we are at the root of this volume we should execute:
cd \
We can now utilize the dir command to list the directories under the current path to ensure the we are indeed on the UFI partition drive.
dir
The output should look similar to this:
Directory: S:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2019-01-17 12:55 EFI
-a---- 2018-10-16 10:57 31 startup.nsh
Delete Boot Loaders
Your boot loaders are location in the EFI directory. Change to it by using the cd command and list the entries via the dir command.
cd .\EFI\
dir
Your output depends on the boot loaders you have installed, here is a example with Windows and 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
Now you can delete unwanted loaders via the command Remove-Item and the parameter -Recurse.
DO NOT DELETE THE BOOT DIRECTORY OR THE WINDOWS DIRECTORY!
Remove-Item -Recurse .\ubuntu
-
3
-
3Note from present self to future self: This is the ONLY solution that worked– KhoPhiJul 18, 2020 at 12:32
-
5In PowerShell instead of command 'rd /S ubuntu', I had to use 'Remove-Item ubuntu'.. Thanks for sharing this solution!– BlueDevJul 18, 2020 at 17:23
-
2This is the correct answer for systems with EFI, especially if you installed linux on a separate drive which is the optimal way to go. Goodness, so many complicated answers out there and its really simple to do.– SeamusOct 21, 2020 at 22:36
-
1Did you maybe mean to write
rd /s ubuntu
instead ofrd /S ubuntu
? There is no/S
option in the manual of rd and it didn't work for me. I usedRemove-Item ubuntu
instead, like @BlueDev did.– gerasNov 30, 2020 at 22:16
You can restore the Windows bootloader with a Windows 8/8.1 DVD. These instructions are inspired by Manindra Mehra's answer, but I expanded it with full working details (verified with a Windows 8.1 DVD).
Put the DVD in your optical drive and boot from it.
Press a key when it displays
Press any key to start from CD or DVD
.Select your language etc. and click
Next
.Click
Repair your computer
.Click
Troubleshoot
.Click
Advanced Options
.Click
Command Prompt
.In the command prompt window, type
bootrec /fixmbr
Click the red
X
to close the command prompt.Click
Turn off your PC
.Turn the PC back on and it should boot directly into Windows.
This leaves the Ubuntu partition on your hard drive or SSD. To remove it:
Hit
Windows
+X
and selectDisk Management
.Find the Ubuntu partition. It will probably be a large partition without a drive letter.
Be sure you have the correct partition!
Right-click the partition and delete or reformat it with a Windows filesystem.
To do so you will need a windows installation cd/dvd
- put it in your optical drive and boot from it
- on the installation screen where it asks you to install windows, click on Repair Your Computer on the lower left corner of your screen
- Now go to command prompt (It probably will show a window saying "Trying to repair windows automatically", close it) and type
BootRec.exe /fixmbr
- after it finishes GRUB is gone and you can now boot into windows directly
- you have an Ubuntu partition left in your computer, that doesn't show in "My Computer", to access that, right click on "My Computer" and Select "Manage" and go to "Disk Management"
- Select the Ubuntu partition and format it to a file system that windows can use.
-
For completeness, also remove ubuntu from the efi boot menu. I think this should be added as step 7. May 11, 2017 at 2:12
-
Please fix step 3 by explaining how to go to command prompt. Michael Geary's answer is more complete. This answer led me to reset my PC unnecessarily once because I didn't know how to go to command prompt. May 14, 2017 at 16:02
With UEFI you have both a Windows folder & an Ubuntu folder in the efi partition. the UEFI reads the efi entries and adds them to its own NVRAM to remember them. You have to remove ubuntu folder from efi partition first or UEFI will re-add it. Then you have to remove UEFI entry from UEFI.
You should have these folders in the efi partition. Delete only the ubuntu folder. Live installer should show folders. And if only Windows you have to mount from inside Windows the efi partition as it is not normally mounted.
/EFI/Boot
/EFI/Microsoft
/EFI/ubuntu
You should not have to install Ubuntu but can use live installer DVD or flash drive. Some UEFI systems may let you do the UEFI edit from UEFI menu.
from liveDVD or flash and use efibootmgr
sudo efibootmgr -v
The "-v" option displays all the entries so you can confirm you're deleting the right one, and then you use the combination of "-b ####" (to specify the entry) and "-B" (to delete it). Examples #5 is delete:
sudo efibootmgr -b XXXX -B
See also
man efibootmgr
-
This was helpful in directing what I needed to do. I could delete the ubuntu partition in Windows using informaition from here: superuser.com/questions/662823/… Feb 3, 2017 at 17:59
-
From a live usb stick, starting with efibootmgr -v, then using -b 0002 -B worked for me after 'fixmbr' from windows didn't seem to work, and that solution seemed a lot easier than some of the other solutions.– CasperrwAug 12, 2019 at 10:27
-
This is mind-blowingly the easiest way to get rid of a boot entry. THANK YOU. Links are broken by the way.– TekMay 1, 2021 at 19:34
-
Removed broken links, add suggestion for example in man page for efibootmgr. A few Manufacturers, do not recognized efibootmgr and then your only choice is to go into UEFI menu (not UEFI one time boot menu) and on boot tab edit entries.– oldfredMay 1, 2021 at 20:52
What worked for me is:
- Boot to Windows
- Win + X
- Command Prompt (as admin)
bcdedit /set {bootmgr} path \EFI\Microsoft\Boot\bootmgfw.efi
- Reboot
No CD's, USB's, DVD's. No long tutorials.
On UEFI all you have to do is:
Place Windows boot entry in NVRAM as first.
How to do this - several solutions.
Easiest solution is to use firmware functionality and reorder NVRAM boot entries.
You can also use a USB memory stick for this job. It takes three applications: Unetbootin, FreeDOS and Testdisk for DOS.
- First download Unetbootin and use it to make a bootable USB memory stick. Choose Freedos when prompted for a distribution to install on it.
- Download Testdisk for DOS (don't pick the beta, but pick the stable version).
- Unzip the files testdisk.exe and CWSDPMI.exe, and put them on the bootable memory stick (not in a folder, just straight on it).
- Boot your computer from the memory stick. At the Default window, simply press Enter.
- Now FreeDOS is being launched. Choose:
FreeDOS Safe Mode (don't load any drivers)
and Press Enter. - Then type:
C:
and Press Enter. - Now type:
testdisk
and Press Enter. - Select
[No Log]
and Press Enter. - Select the hard drive concerned: usually the second option (the first option is the memory stick itself) and Press Enter.
- Select
[Intel]
and Press Enter - Select
[MBR Code]
and press Enter. When prompted, typey
(yes) and press Enter again.
Now you're done! Reboot your computer normally. Your computer should boot up Windows now.
-
1Welcome to AskUbuntu! As it appears this was a copy paste, please consider linking to the original page at the end of your answer.– TheSchwaFeb 18, 2016 at 10:37
If All Else Fails!
The guy above me's method does not work on newer EFI computers. I solved the problem. Here is how I did it. WARNING, you have to reinstall Linux / grub first!
Steps: (this is if nothing else works and takes a long time)
1: Reinstall Ubuntu / Linux mint (this is just so you can use GRUB to boot into Windows).
1.5: Restart and boot into windows (if you can't boot to Windows, then live boot from the CD or USB and run the following in a console:
If you have a windows repair disk you can select the UEFI firmware option and load Windows from there (to avoid reinstalling Linux)
Boot repair (if needed right now)
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && (boot-repair &)
1g: Select recommended repair and follow the on screen instructions.
2g: After your done, reboot. You should see the grub menu, even though you can boot to Windows from here, this is not what we want yet... But find the option that boots into Windows.
2: Once your booted into Windows, run your disk partition editor and delete All partitions related to Linux / grub. Especially make sure the small grub partition is removed. Reboot
2.5: Make sure the windows loader is the first selected boot device. (most likely is). Disable the Ubuntu option. Continue boot.
3: If you've done everything right up to this point you should see (depending on your computer) your splash screen for a second and then it will turn into an error screen saying that there was an error with the boot. ("Winload.exe is missing or corrupted" most likly).
3.5: Don't be alarmed (I was). The next step will restore your original bootloader.
4: Restart and boot to your Linux CD or USB.
5: Once booted, run boot repair commands from above again. This time when running it. It will act differently, there is no grub bootloader detected to reinstall and should run faster than before.
6: Once complete, restart.
7: Enjoy your GRUB free system!
This worked for me when nothing else did, I ran bootrec.exe. Nothing worked. This saved my computers life. Hope it saves yours!
For system with GPT partition table, the method provided by @Ganesh Kondal won't work. Using bootsect /nt60 C: /mbr
will show that it worked while it really doesn't. Using bootrec /fixmbr
will lead to error that "the system cannot find the file specified". If any of the above situation applies, do the following (Using Windows 10 as an example):
- at log in prompt, hold shift, click on power button, choose restart, let go of shift
- choose troubleshoot -> advanced options -> command line
- at command line, type in
bcdboot <drive name>:\windows
for more detailed information, also look at this webpage:https://www.tenforums.com/general-support/74226-bootmgr-error-cant-find-fix.html
It may be impossible to do that. The temporary solution is to remove the GRUB menu, and use BCDedit.
Extract from ubuntuhandbook (https://ubuntuhandbook.org/index.php/2020/06/hide-grub-boot-menu-ubuntu-20-04-lts/)
You can do the job easily via Grub-Customizer (available in Ubuntu Software) under General Settings tab. However, you need to also disable “look for other operating systems” option.
Any time you want to show the Grub menu, press ESC while booting up will NO longer show dual-boot (multi-boot) systems other than Ubuntu.
Not necessary, your bootloader will be clobbered by the windows-only one next time microsuck force-shoves an "update" down your throat.