Windows Efi Bootloader
- Windows 10 Restore Efi Bootloader
- How To Repair Windows 10 Bootloader
- Fix Windows Efi Bootloader
- Restore Windows 10 Bootloader
- Windows Efi Boot Manager Utility
Sep 09, 2019 Your Windows 10 computer wouldn’t boot properly if the EFI bootloader is corrupt. Fortunately the bootloader problem(s) can be fixed easily using either Windows’ automatic repair or by running the repair commands in the Command Prompt window. This article provides effective method and detail guide for you to fix computer EFI boot for Windows 10/8/7 with ease. If you are having problems with EFI bootloader and fail to boot your Windows 10/8/7 system, follow to find solution and fix this problem with ease now. Aug 27, 2019 Clover EFI Bootloader can boot OS X, Windows, and Linux on Mac or PC with UEFI or BIOS firmware. Boot OS X, Windows, and Linux in UEFI or legacy mode on Mac or PC with UEFI or BIOS firmware; Boot using UEFI firmware directly or CloverEFI UEFI firmware emulation.
A file with the EFI file extension is an Extensible Firmware Interface file.
EFI files are boot loader executables, exist on UEFI (Unified Extensible Firmware Interface) based computer systems, and contain data on how the boot process should proceed.
EFI files can be opened with EFI Developer Kit and Microsoft EFI Utilities but frankly, unless you're a hardware developer, there's little use in 'opening' an EFI file.
Where Is the EFI File in Windows?
On a system with an installed operating system, the boot manager that exists as part of the motherboard UEFI firmware will have an EFI file location stored in the BootOrder variable. This might actually be another boot manager if you have an installed multi-boot tool but is usually just the EFI boot loader for your operating system.
Most of the time, this EFI file is stored on a special EFI system partition. This partition is usually hidden and does not have a drive letter.
On a UEFI system with Windows 10 installed, for example, the EFI file will be located at the following location, on that hidden partition:
or
You'll see the bootx64.efi file if you have a 64-bit version of Windows installed or the bootia32.efi file if you're using a 32-bit version. See 64-bit & 32-bit: What's the Difference? for more on this if you're not sure.
On some Windows computers, the winload.efi file acts as the boot loader and is usually stored in the following location:
If your system drive is something other than C or Windows is installed to a folder other than Windows, then the exact path on your computer will differ respectively, of course.
On a system without an installed operating system, with a blank BootOrder variable, the motherboard's boot manager looks in predefined places for an EFI file, like on discs in optical drives and on other connected media. This occurs because, if that field is empty, you don't have a working OS installed and so you're likely going to install one next.
For example, on a Windows 10 installation DVD or ISO image, the following two files exist, which your computer's UEFI boot manager will quickly locate:
and
Like with the Windows installation drive and path from above, the drive here will be different depending on the media source. In this case, D is the letter assigned to my optical drive. Additionally, as you may have noticed, both 64-bit and 32-bit EFI boot loaders are included on the installation media. This is because the install disc contains both architecture types as installation options.
Where Is the EFI File in Other Operating Systems?
Here are some of the default EFI file locations for some non-Windows operating systems:
macOS uses the following EFI file as its boot loader but not in all situations:
The EFI boot loader for Linux will differ depending on the distribution you have installed, but here are a few:
You get the idea.
Still Can't Open or Use the File?
Take note that there are some file types that are spelled very much like '.EFI' that you might actually have and can therefore open with a regular software program. This is most likely the case if you've simply misread the file extension.
For example, you might really have an EFX eFax Fax Document file that has nothing to do with Extensible Firmware Interface files and is instead a document that opens with a fax service. Or maybe your file uses the .EFL file extension and is an External Format Language file or an Encryptafile Encrypted file.
If you are sure that you can open the file you have, then it's most likely not in the same format that's described on this page. Instead, double-check the file extension for your file and research the program that can open it or convert it to a new format.
You might even try uploading it to a file converter service like Zamzar to see if it will recognize the file type and suggest a conversion format.
Windows 10 Restore Efi Bootloader
I installed Windows 7 and Windows 8 in EFI mode on a hard disk some days ago. Today, the bootloader got missing/corrupted.
I currently have the Windows 8 installer on a flash drive and tried using the Automatic Repair option to repair the bootloader but it didn't do anything. The Startup Repair option is also missing in the Windows 8 installer.
How I can repair/recreate the EFI bootloader from the Command Prompt?
BCDEDIT
returns the following message:
10 Answers
I've spent a lot of time trying to get my Windows 8 PC to boot again after cloning to a new SSD and try to summarise how I finally got it all working -
Firstly, boot from a UEFI Windows 8 recovery disk (CD/DVD/USB) - I found that the automated recovery process didn't find the correct Windows partition, nor when I managed to add it to BCD settings would it make it reliably bootable e.g. using BCDEDIT I got it to find and launch the Windows partition but it refused to cold boot or would not 'keep' the settings after a 2nd reboot or power off.
Go into the Advanced options and run the Command Prompt.
Enter diskpart
to use the DiskPart tool to ensure you have all the right partitions and to identify your EFI partition - the key thing here is that your EFI partition is formatted as FAT32:
Then assign a drive letter to the EFI partition:
Exit DiskPart tool by entering exit
and at the command prompt run the following:
Delete or rename the BCD file:
Use bcdboot.exe
to recreate BCD store:
The /f ALL
parameter updates the BIOS settings including UEFI firmware/NVRAM, /l en-gb
is to localise for UK/GB locale. The localisation defaults to US English, or use en-US.
Reboot and cross your fingers.
This gave me headaches. I was going in circles for a long while. There isn't a lot of reliable info about fixing UEFI/Windows 8 at the time of writing.
[EDIT]
To re-enable Hyper-V, I also had to run the following from an Administrator Command Prompt within Windows after rebooting:
How To Repair Windows 10 Bootloader
fixer1234The other answers are helpful but this is what I had to do to fix mine.
I had a 1.5 TB hard drive with Windows 7 installed on it. I then installed Windows 8 onto a 150 GB SSD I bought. The 1.5 TB hard drive failed and I could hear it making a noise, my computer would no longer start, saying 'please insert system disk'. I thought that the bootloader was missing as it must have been on the 1.5 TB disk. It turns out it was but the problem then was the guides I followed would not rebuild the bootloader or whatever it is called as i did not have an EFI partition on the smaller 150 GB disk (this may have existed on the failed disk), it only had 1 partition which filled the entire disk.
I did not want to lose all my data so I entered the Command Prompt by booting from my Windows 8 install USB drive (noting that you cannot boot the UEFI version of this if that appears, select to boot from the just the USB drive without the UEFI appearing before it).
Once in Command Prompt (see the other answers for instructions) you need to shrink the partition. To do this, enter the following commands, pressing Enter after each one:
These commands will create the EFI partition. Double-check everything by typing list vol
. You should see a 200 MB partition. You now need to assign it a letter. Do this by typing assign
,then list vol
again to see what letter has been assigned.
Now this is done you need to copy the boot files to this newly created partition:
Note: you must replace C:
with the drive letter of the partition that contains Windows, and B:
with the letter assigned to the EFI partition you just created.
Ac97 sound driver windows xp. Like a lot of other users it seems, I have had to reinstall windows XP and found that the sound device on the motherboard is not recognised.The standard windows XP Home audio codec, legacy audio drivers have loadedThe MPU-401 microsoft media device refuses to load leaving a media control devices that has mciqtz32.dll.The AC'97 multimedia audio controller partly loads leaving a non functional multimedia audio controller without a driverI have tried, over the last 4 years every version of reloading that is mentioned, including updated drivers. I've uninstalled and re-installed with and without the Bios AC 97 card, the Bios virus protection, the norton 360, the audio service disabled/stopped/startedsystem restore on/off.
I also entered the following commands:
These both came back successful, no idea if they really did anything but who cares. Windows is now fully recovered.
IndrekOkay, I've had time to put together a proper outline here. It's long, but it's pretty complete and should help you see what's going on.
First, one way this can happen:
- Your BIOS loses its settings.
- No problem, all that stuff's stored in the EFI partition.
- ..except for the SATA IDE vs AHCI setting, for obvious reasons.
- Were you using SATA-AHCI? You're probably using SATA-IDE now.
- Did you try to boot before you figured that out?
- If you did, it failed. Did you let Windows try to fix it?
- If you did, BLAM, it may very well have destroyed the Boot Configuration Database.
- Make sure you're using the correct SATA setting you were using last time.
Here's what you've probably done by now. IF ANY OF THIS DOES NOT MATCH, CAREFULLY EVALUATE WHETHER THIS IS IN FACT YOUR PROBLEM, and READ this for ideas but don't FOLLOW it without thinking first.
You have HOPEFULLY ignored all the crap about fixing the Master Boot Record (MBR), partition table, partition flags, and other garbage that DOES NOT APPLY to an EFI boot scenario. AT ALL. At best, you would be able to completely rebuild a new, unrelated, NON-EFI boot solution. That might not be trivial, however, because:
You have figured out that Windows is certain it does not have a Boot Configuration Database, but it is, unfortunately, either completely clueless or VERY certain about where it goes-- you can't quite tell which.
You're aware that the boot store is normally (somewhere)BootBCD and that the file is HIDDEN; view it using 'dir /a:hs'.
You've familiarized yourself a bit with BCDEDIT.EXE and figured out that it will let you 'mock up' a Boot Configuration Database in a staging file using '/CREATESTORE' (and please don't name it 'BCD'), that you can explicitly use the staging file with the '/STORE' option, that you can add a menu entry for the Windows Boot Manager using '/CREATE {bootmgr}', and that you SHOULD be able to import it using '/IMPORT'..
..but when you try to do this, you can't. You look into the /SYSSTORE option, which sounds right, but you can't get it to use another store because it's 'ambiguous'. You have a hunch that it knows where the store is-- or should be-- but you can't find it.
You've tried to use 'MOUNTVOL' to mount the EFI partition, but it doesn't even show in the list, so you can't.
If ALL of that applies fairly closely to you, here is what MAY be going on:
Windows can tell you're set up for EFI (you have booted the DVD via a UEFI boot, you have an EFI partition, etc.).
It therefore knows WHERE TO LOOK for the BCD file-- however, it either somehow has the location wrong (not this problem, but similar) or the BCD has been deleted.
Apparently, because it knows where it SHOULD be, this breaks /SYSSTORE-- and actually, that's probably correct behavior, because otherwise you'd put it in the wrong place.
As near as I can tell, MOUNTVOL deliberately hides the EFI partition (or is somehow incapable of noticing it). This prevents mounting the filesystem, which prevents finding the correct subdirectory, verifying that the database exists, etc.
So here, finally, is what you need to do about it. The good news is that it's probably a lot simpler than you're hoping by now.
- You do indeed have to mount the EFI partition.
Actually, I have a hunch that's not strictly correct-- I strongly suspect the EFI partition is already mounted by some internal subsystem, which is why BCDEDIT gets cranky-- it doesn't see the database, but it knows where it should go. Whatever it does not have, however, is a drive letter. So-- what to do?
Well..how far back do your DOS roots go? Do you remember the ASSIGN command? Guess what.
Start DISKPART.
If you are not familiar with DISKPART, the way it basically works is a hierarchy of sets; you must select exactly one element at one level to proceed to the next. So, 'LIST DISKS', and then 'SELECT DISK n' where n is whatever's appropriate for you.
Use 'LIST PARTITION' and 'LIST VOLUME' (note non-plural) to get some insight and identify your EFI partition.
It is usually a 100MB FAT32 partition marked 'SYSTEM'. Keep in mind that your disk should be using a GPT partition table by now, so you may see quite a few partitions. Some of these are for emergency recovery-- fat lot of good they do for EFI problems, eh? Oh well.
Notice that the EFI partition, and a few others, do not have drive letters. If you're so inclined, you can also view the GPT partition attributes, which may give you a few tangentially-related 'Aha' moments as well.
'SELECT PARTITION n' where n is the EFI partition. (I expect you could select the volume instead if you need to.)
'ASSIGN'. That's it. Don't specify a drive letter; just 'ASSIGN'.
'LIST VOLUME'. You should now see a drive letter assigned to the EFI partition.
'EXIT' DISKPART.
And now.. a big fat warning. You will probably go directly to S: (or whatever you got from ASSIGN) and notice a /Boot partition. 'AHA!' You will say. 'There is no BCD file here!' First.. remember that file is hidden. Second.. dig around a bit more, and you will notice that while there is:
S:EFIBoot
there is also:
S:EFIMicrosoftBoot
You need to check both of these for problems.
S:EFIBoot is for the motherboard, and contains the Windows Boot LOADER (and possibly other things for other operating systems). This has this name because the motherboard has no idea if you're going to have Windows or not, and needs a fixed path that makes sense.
- Inspect S:EFIBoot. For Windows 7 Professional, 64-bit, you should see:
bootx64.efi
If you have installed an EFI shell (always a good idea), you might additionally see 'shellx64.efi'.
NOTE: Dual-boot Linux users using 'chainloader+1' WILL NOT see an extra entry here.
- Inspect S:EFIMicrosoftBoot using both 'dir' and 'dir a:h'. For Windows 7 Professional, 64-bit, you should see a bunch of language templates ('en_US', etc.) and the following files:
bootmgr.efibootmgfw.efimemtest.efiBCDBCD.Backup.001BCD.Backup.002
..except that you probably don't see BCD, do you? But those backup files sure look tempting.
Determine which backup file you want to use. Whatever recent changes it's missing are nowhere near as important as your ability to boot the system, so go for the one that's most intact. Probably you will see one large one and one fairly small one. The small one is already corrupt, and is an artifact of the failed repair process-- don't use it. If they're both large, use the older one. IN ANY CASE, make ADDITIONAL BACKUP COPIES OF THE BACKUPS somewhere else.
Copy the backup you've decided to use to 'BCD'.
Exit the shell, shutdown cleanly, and reboot.
Tell Windows to start NORMALLY. At this point, it should start.
Q: What if you don't HAVE a backup BCD?
A: Well, that really shouldn't happen. It likely means you're either in the wrong directory, support EFI but weren't actually using it, or somehow rebuilt your entire EFI partition without all of the required Windows materials (possible, especially when using multiple versions of Windows). In that case, you'll need to copy the EFI materials from the DVD, then either modify or rebuild the Boot Configuration Database using BCDEDIT.
Q: Can you give me an example of a scenario where 'BCDEDIT /SYSSTORE' can be used to do anything at all on an EFI system?
A: So far, no.
Anyway, hope this helps solve some problems for people, or at least gets them thinking. As a very important final point, please note that you can mount and inspect your EFI partition under Windows normally using the DISKPART ASSIGN technique above. You should do this at least once, to get a complete backup of your EFI partition, BEFORE you run into this kind of trouble. I recommend one backup into a subdirectory on your C: drive, and one on a USB flash drive.
Sorry that's so long-winded. I need to turn this into a proper article at some point, but there are so many people who are SO frustrated that I felt the need to document my experience as completely and rapidly as I could.
Cheers, Matt 'Breakpoint' Heck
Pimp Juice ITWindows 8 is still not out in final form, so problems are to be expected.You are in an area new to most of us, where the commands we used to use may not work anymore.To the commands listed by @soandos, I add this one that completely rebuilds the BCD :
Try also to use the Advanced boot menu from Windows 8 and let us know what happens.
If nothing works, the article Repairing Windows 7 when they fail to boot has some advice on using bcdedit to correct boot errors. It would in any case be interestingto see what is the output of bcdedit on your computer.
[EDIT]
These links might contain some helpful ideas :
Recovering the Windows Bootloader from the DVD
Windows 7 Boot Manager Recovery Problem
Windows 7 Suddenly Won’t Boot – Repairing the Windows 7 Bootloader
The easiest way:
Follow the steps from the post above to locate BCD file and go to its directory.
If BCD file is hidden, type
attrib bcd -s -h -r
and press Enter. This will allow you to modify and overwrite the file.Type
ren bcd bcd.old
and press Enter. This renames the current BCD file.Type
Bootrec /RebuildBCD
and press Enter to force Windows 8 to rebuild the boot menu from scratch.Exit command prompt and shut down. Remove Windows Recovery Media and reboot. You're done!
Under DISKPART I had only vol 0 or D (the DVD) and vol 1 or C (the Windows NTFS partition). Nothing worked for me until I made vol 1 ACTIVE.
After exiting DISKPART I only typed:
then the system was properly repaired. I didn't use
because I was using GAG (gestor de arranque gràfico) on MBR for multiboot.
After 6 hours of struggling, I managed to fix my Windows 8 boot issue.
Today, after a usual restart, I got the message MBR not found
or similar to that, I dont remember any more. I tried bootrec
commands, Windows automatic repair (it couldnt find any installed Windows), a million other ways and nothing.
The problem was when I executed bootrec /rebuildbcd
it went normaly, and then when I had to enter yes
if I want to save the configuration, I got the message, the file is not accessible because it is used by a another process
.
After hours of mind cracking, I have finally solved it.
In this order..
First, I booted the easeup partition master and FORMATED the system reserved volume which I assigned as active later (in which my boot folder was). When I rebooted I got an error
NTLDR missing
.Then I booted in Windows recovery, opened a command prompt and entered
bootrec /fixmbr
,/fixboot
,/scanos
,/rebuildbcd
(which now executed fine :] )I exited
cmd
and clicked on automatic repair.Then, I was able to select Windows 8. When I rebooted, I could see the Windows 8 logo.
My scenario; I did not loose the EFI system partition, but switching drives and installing Windows seems to have screwed up the Windows Boot Manager UEFI boot entryfor the first drive; had to use the UEFI entry that points to the drive directly to boot. I think Ifixed it by correcting/adding the 'device partition=DeviceHarddiskVolumeX' setting (X=2 in my case; my 2nd partition is the EFI system partition, mapped to Z: with diskpart.exe):
Bcdedit /set {bootmgr} device partition=Z:
view with:bcdedit.exe /enum firmware
Use:bootrec /fixmbr
(updates the MBR, probably won't do anything in this case, but won't hurt either)
bootrec /fixboot
to re-write the boot sector of the system partition.
bootrec /scanos
to scan for the OSes that are on the drive and add them to bootloader.
Just run the commands in order.
soandossoandosI've managed to fix it by using the following command in the recovery console:
Ƭᴇcʜιᴇ007Fix Windows Efi Bootloader
protected by Daniel Beck♦May 11 '13 at 8:24
Restore Windows 10 Bootloader
Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).
Would you like to answer one of these unanswered questions instead?