Partner links

How to delete GRUB files from a Boot EFI partition in Windows 10

Figure

After several failed attempts to dual-boot Ubuntu 15.04 and Windows 10 on a single hard drive and on a computer with UEFI firmware, and not knowing what caused the first failed attempt, I figured that subsequent failed attempts must have been due to an existing Ubuntu GRUB folder in the Boot EFI folder.

Especially since the machine always froze when the installer is attempting to install GRUB

So I thought that If I could just delete the ubuntu folder from the Boot EFI folder, that the installation would complete – successfully. Ultimately, it didn’t, but I figured out how to delete GRUB files from inside Windows 10, from the command line.

This post documents how it was done. It involved, from the command line, listing and selecting the detected hard drives, listing the partitions on the hard drive, then, finally, listing and deleting the target folder. Another reason you might want to do this, is if you deleted the Linux partitions, which would not automatically delete the GRUB files from the Boot EFI folder.

 

NFTs were hot in 2021. They will be even more so this year and beyond. NFT South is a conference where NFT enthusiasts will meet to explore and celebrate the different use cases of NFTs. It’s going to be a fun event. Get your ticket today!

 

To start, log into Windows 10, click on the menu and type cmd. Then right-click on the terminal application’s icon and select run as administrator. Figure 1 show the commands (underlined) used to accomplish the first step – listing and selecting the hard drive. To make it possible to copy-and-paste, for those who might need to, I’ve provided the commands in the code block after the last image.

In this figure, the target disk is shown as a 465 GB hard drive, with GPT partition.

Windows 10 diskpart

Figure 1: Using diskpart to list hard drives detected on Windows 10

After the target disk has been selected, its partitions are listed, so that the partition (volume) that corresponds to the Boot EFI folder can be identified. In Figure 2, that partition is Volume 2. It’s usually the only volume with FAT32 in the Fs (file system) column, and System in the Info column. After it has been identified and selected, you assign it a drive letter to make it easier to work with. In this example, I assigned it a drive letter D. After that, exit diskpart.

Listing Windows 10 partitions

Figure 2: Listing disk partitions on Windows 10

The final task involves changing into the Boot EFI folder, listing its contents to identify what subfolder the GRUB files would be. It will be in the EFI folder. The GRUB files for the distribution that was installed will be under a folder of the same name as the distribution. For example, if Ubuntu was installed, as in this example, the name of the folder will be ubuntu. Delete the folder using the rmdir /s command. That’s the Windows 10 equivalent of the Unix/Linux rm -r command. Note: If the ls command is not available in your shell, use the dir command instead.

Delete Ubuntu Boot EFI GRUB files

Figure 3: Deleting non-empty Ubuntu GRUB directory in Windows 10

All the commands used are given in this code block. Note that this procedure is not necessarily the best or only way to go about do this, so if you know of a better method, post a comment.

## These commands are used to identify and select the hard drive

diskpart

list disk

sel disk 0

## These commands are used to list the partitions, select the Boot EFI partition, 
## then assign it a drive letter

list vol

sel vol 2

assign letter=D:

exit

## These commands are used to change into the Boot EFI folder and delete the GRUB folder

cd /d D:

ls

ls EFI

cd EFI

ls

rmdir /s ubuntu

Share:

Facebook
Twitter
Pinterest
LinkedIn

Partner links

Newsletter: Subscribe for updates

Subscribe
Notify of
guest
199 Comments
Inline Feedbacks
View all comments
Kevin Ross
Kevin Ross
6 years ago

I completed the steps, rebooted and received `Reboot and Select proper boot device`. My setup was almost identical to the steps involved, and Microsoft was left in the EFI. I think this was grub 2 so I’m thinking I might need to boot to USB and update it.

Kevin Ross
Kevin Ross
Reply to  Kevin Ross
6 years ago

I figured out there was a submenu under the bios `Boot` menu that was still referencing the now deleted `ubuntu`. I switched it to `Windows` and it worked.

Bob
Bob
6 years ago

Hi buddy, my friend and I installed Android 6.0 using Gpart tool and Flash Drive on a dummy Windows 10 test PC. Later we deleted the HDD volume where the GRUB files were from Windows Disk Management Tool,and upon boot up of course, we have the GRUB Loading…Error 22.

Since this is just a test PC to experiment on, any method on how to fix this error 22 without using Windows Boot Disc or USB,assuming we don’t have other means to boot into Windows.

Anaji Patekar
Anaji Patekar
6 years ago

Well…!!!!
This is very useful Tutorial.

Thanks…

Vijesh
Vijesh
6 years ago

I tried searching for the solution in internet from 2 days. I tried so many other methods, which did not work. But now I came across your site and tried your solution. Well it worked! Thank you. Its such a compact solution for the problem. I should have come across your site at the beginning.
Thankss a lotttttt!!!!!!!!!!!!!

Ruben
Ruben
6 years ago

I have a problem with line no. 24 (ls) my pc says- ‘ls’ is not recognized as an in
operable program or batch file. What should i do?

Gumper
Gumper
Reply to  finid
6 years ago

Thank you finid. Using dir worked. 🙂

Vijesh
Vijesh
Reply to  Ruben
6 years ago

Well, it works totally fine. You might have done a mistake. Because of that don’t tell others not to try! I tried it just now and it works like a charm.

Vijesh
Vijesh
Reply to  Vijesh
6 years ago

By mistake I replied to your comment. I wanted to reply for the person who told that this is not working! Sorry..

Tomasz
Tomasz
6 years ago

Well, this script generally does:
mountvol Z: /s
rmdir /s Z:\ubuntu
mountvol Z: /d

now your procedure actually took me one step farther away from solution. Earlier i could use grub to chainload microsoft efi, now i don’t even have this, and my disk is totally unbootable. This deserves a huge ‘do not try this any more’ warning sign.

XU
XU
Reply to  finid
6 years ago

I have the same problem.
After executed your given commands, I couldn’t reach grub> which I can rely on “chainholder” help to enter into Windows10; The laptop automatically entered into “Setup” after reboot in every time.
It looks I have to reset the whole system now.

TS
TS
6 years ago

Hi just wanted to let you know:
Your process of listing disks before volumes in diskpart is meaningless; the “list” command takes ‘disk’ or ‘vol’ as an argument to decide which to show you… entire drives or individual volumes. Same for “select”; it takes ‘disk’ or ‘vol’ then an integer to signify which disk or volume to select. Selecting an entire disk first has literally no bearing on selecting an individual volume afterwards; all volumes are accessible regardless. If you wanted to perform the operation on an entire disk, you would use “sel disk x” and perform the operation. Obviously here we only want a single partition, so you can just skip straight over selecting a disk.

kamda cyrial
kamda cyrial
6 years ago

hey man i did every thing as instructed but when i try the ls function it says ls is not recognised as an internal or external command. please help me what can i do

Pete
Pete
6 years ago

Very helpfup guide, thank you very much! I used “dir” instead of “ls” as well and it worked.

Heaven Computer
Heaven Computer
6 years ago

Hey, I gave new drive letter J and yeah it worked well but now it also got displayed on My Computer with memory of 256MB, so now how do I Unassign the letter?

bufalo1973
bufalo1973
Reply to  Heaven Computer
6 years ago

Unassign -> remove letter=…

Steve
Steve
7 years ago

Dude you’re awesome! You just saved me hours worth of work! It definitely works with windows 10,the only catch is instead ‘ls’ use ‘dir’. Thanks again!

Manizhakhon
Manizhakhon
Reply to  Steve
6 years ago

Thanks a lot! I used “dir” instead of “ls” as well and it worked.

Rodolfo
Rodolfo
7 years ago

from within CMD, it Worked but had to use “dir” instead of “ls”

Doityo
Doityo
7 years ago

This does not work for me. I am able to assign a letter (Z) to the system drive that contains the EFI folder, but then when I try doing “cd /d Z:” the response I get is “Access is denied”. Any ideas?

medionsoul
medionsoul
Reply to  Doityo
6 years ago

I hoe you found before i tell you but you just have to run cmd as admin 🙂

MariusApo
MariusApo
7 years ago

hmm,i do have aquestion,what is that ls command,is not a batch or command in windows 10 : ‘ls’ is not recognized as an internal or external command,operable program or batch file.
maybe u should try that again and find another thing than ls,maybe dir ?
i do wander why ppl stop actually doing that or why they use something like this from maybe an older windows version ?
anyway,i managed to fix the thing,i hope without the ls but with dir,even tho i am not like this cases in here with just a dual boot,i am a multiboot guy,i have like 5 linux distros besides windows,why ? i love more distros and i keep them and use them all,the wose that i had to do is find and still not sure if i did right,is the slackware bootloader,as it is lilo and not grub,i hope that the folders were goofiboot and slackware,as i intend to delete it and get on fedora,it is hard to keep lilo and grub,it gives many errors

Lord Cinister
Lord Cinister
7 years ago

OHHHH THANK YOU!
Spot on, it worked like a charm! The forums are full of people trying to fix this problem and I will spread the word of your cure! I was sweating bullets and now I dance the dance of relief! Thank you…

Get the latest

On social media

Security distros

Hacker
Linux distros for hacking and pentesting

Crypto mining OS

Bitcoin
Distros for mining bitcoin and other cryptocurrencies

Crypto hardware

MSI GeForce GTX 1070
Installing Nvidia GTX 1070 GPU drivers on Ubuntu

Disk guide

LVM
Beginner's guide to disks & disk partitions in Linux

Bash guide

Bash shell terminal
How to set the PATH variable in Bash
Categories
Archives
199
0
Hya, what do you think? Please comment.x
()
x