dual EFI entries after GPT conversion

Anonymous
2023-02-18T01:49:50+00:00

For reasons too lengthy to detail here, I was unable to use MBR2GPT for converting my current boot disk. Instead, I used Hasleo Disk Clone to clone the disk to another SSD while also converting it to GPT. This worked fine and the new drive correctly shows up as GPT with the shiny new MSR and EFI partitions. However, it left the protected/system EFI directory intact on the drive. My UEFI has been set to UEFI only with CSM=Disabled and yet I can still see entries for both EFI instances. Booting to the GPT partition works fine, but booting to the EFI directory fails. Is it possible (and safe) to either archive/rename or delete the EFI directory on C:\ so that it is no longer detected by the UEFI and disappears from the boot menu? I'm loathe to take any of the additional steps towards a Win11 upgrade without sorting this out first.

Windows for home | Windows 10 | Install and upgrade

Locked Question. This question was migrated from the Microsoft Support Community. You can vote on whether it's helpful, but you can't add comments or replies or follow the question.

0 comments No comments
Answer accepted by question author
Anonymous
2023-03-07T05:38:10+00:00

(1) Even looking at the log, I'm unsure what's up with /SetREImage. But I think it is unnecessary. We'll revisit it if necessary.

(2) It looks like /Disable followed by /Enable would get the job done all by themselves. /Disable moved WinRE.wim from partition 3 into the staging area, namely C:\Windows\system32\Recovery....

"

2023-03-06 17:24:41, Info [ReAgentc.exe] winreCopyWIMBack moved WIM file from \?\GLOBALROOT\device\harddisk3\partition3\Recovery\WindowsRE\ to C:\Windows\system32\Recovery\Winre.wim successfully!

"

Then /Enable wanted to move it into partition 4, which it did recognize to be the Recovery partition. But it found that partition to be too small...

"

2023-03-06 17:24:49, Info [ReAgentc.exe] Checking partition at offset 497942528000, partition number: 4

2023-03-06 17:24:49, Info [ReAgentc.exe] MeetPartitionRequirements Partition details: {Offset: 497942528000, Free space: 467849216, Total space: 487256064}

2023-03-06 17:24:49, Info [ReAgentc.exe] MeetPartitionRequirements WinRE WIM size: 423565200

2023-03-06 17:24:49, Info [ReAgentc.exe] MeetPartitionRequirements Required free space: 478091152

2023-03-06 17:24:49, Warning [ReAgentc.exe] MeetPartitionRequirements Not enough free space req = 478091152 avail = 467849216 offset = 497942528000

2023-03-06 17:24:49, Info [ReAgentc.exe] skip partition because it does not meet WinRE requirements

"

(3) So, let's make it bigger. Mine is 848 MB. Your Disk Management (DM) shows the Recovery partition of 465 MB is followed by 1.56 GB of unallocated space...

Image

Unfortunately, DM won't let you make it larger because it is a system partition. Can you easily add 383 MB to it using AOMEI Partition Assistant? If not, we can try this...

DiskPart <<<Enter DiskPart

Select Disk 3 <<<Focus on the EVO 970

List Part <<<Show its partitions

Select Part 4 <<<Focus on its Recovery partition

Detail Part <<<Show it has the Recovery type code

SET ID=ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 Override <<<Basic Data Partition

Detail Part <<<Show the new type code

Exit <<<Leave DiskPart

The 2nd Detail Part should show the new type. It is now a Basic Data Partition. Reboot to be sure the whole system knows. Then open Disk Management, right-click what was the Recovery partition, & see whether you can extend volume to 848 MB. Then make it a Recovery partition again this way...

DiskPart <<<Enter DiskPart

Select Disk 3 <<<Focus on the EVO 970

List Part <<<Show its partitions

Select Part 4 <<<Focus on what was its Recovery partition

Detail Part <<<Show it has the Basic type code

SET ID=de94bba4-06d1-4d40-a16a-bfd50179d6ac Override <<<Recovery Partition

Detail Part <<<Show the new type code

Exit <<<Leave DiskPart

I would Reboot again. Then, try...

ReagentC /Disable

ReagentC /Enable

ReagentC /Info

I hope that will do it. Good luck.

Was this answer helpful?

1 person found this answer helpful.
0 comments No comments
Answer accepted by question author
Anonymous
2023-02-23T12:27:49+00:00

(1) This should move {bootmgr} back to the top of DisplayOrder...

BCDEdit /Set {FWBootMGR} DisplayOrder {BootMGR} /Addfirst

That is where it belongs. I don't know how it got to the bottom. Do a full reboot for it to register in BIOS. Then, show us a new BCDEdit /Enum All.

That's nasty that BIOS adds one back after you have deleted it.

(2) The order of the GUIDs in DisplayOrder does not have to be the same as they are in the body of the BCD. In the body, they are in the order the boot entry was created. Moving one to the top of DisplayOrder should also move it to the top in BIOS Setup (after a full reboot). It then becomes the one that will boot by default. That is, it's the one that boots unless you chose another by using the one-time BIOS Boot Options menu. I think in your Asrock that is invoked with F11. (And DEL or F2 goes to BIOS Setup).

(3) I'm confused about your BIOS. I don't have one that complex.

(a) I don't know why it's got 4 Boot Options.

(b) Are you sure it is Boot Option #1 that is executing? Maybe disable ...#2 to be sure.

(c) Show us the contents of ...#2 as you showed ...#1 below.

(d) What is that item that is disabled within ...#1?

Our goal is to have you boot to the EVO that has Windows on it. So, that is the drive that needs to be at the top of the Boot Order in your Boot Option #1. Is it...?...

Image

The way to know that it is the correct Windows partition that is booted is that your C: partition will be 463 GB...

Was this answer helpful?

1 person found this answer helpful.
0 comments No comments
Answer accepted by question author
Ramesh 181.8K Reputation points Volunteer Moderator
2023-02-23T03:26:03+00:00

Rebuilding the BCD should be enough, not the entire boot files, even though rebuilding the entire boot files doesn't do any harm.

And wondering why you're trying to create a Recovery drive with system files? Is it for backup/restore purposes or only for accessing WinRE? If it's for accessing WinRE, you can uncheck "Backup system files..." and create the media.

Regarding your question about C:\EFI folder, you can simply rename it. If Windows reboots correctly, that folder can be deleted. Do this only after creating the USB setup disk or Recovery drive.

Was this answer helpful?

1 person found this answer helpful.
0 comments No comments

56 additional answers

Sort by: Most helpful
  1. Ramesh 181.8K Reputation points Volunteer Moderator
    2023-02-21T03:09:25+00:00

    Wouldn't it be easier to rename "BCD" and regenerate a new one by running bootrec /rebuildbcd?

    How to Rebuild the EFI Boot Partition, BCD and Boot Files: https://www.winhelponline.com/blog/rebuild-efi-partition-bcd-boot-files/

    Was this answer helpful?

    0 comments No comments
  2. Anonymous
    2023-02-21T01:38:36+00:00

    Thank you PCR. For the v3.30 UEFI on my Asrock Steel Legend, I can only disable boot entries - I cannot delete them. Also, it seems like the ordering of entries is not consistent between the BCD {fwbootmgr] and my UEFI display. However, we'll blame Asrock and not bother Microsoft support with that.

    I attempted to use your BCDedit command above with /DeleteValue and received a syntax error.

    C:\Windows\system32>bcdedit /? /deletevalue ## I checked the help info on this flag

    This command deletes a data element from an entry in the boot configuration data store.

    bcdedit [/store <filename>] /deletevalue [<id>] <datatype>

    It looks like the GUID should follow the /deletevalue flag and DisplayOrder is at the end as DataType?

    In my past research on BCDedit, it seemed like the /delete flag would be the right option since the additional /cleanup flag also addresses the display order. I tried the variation below and it completed successfully. However, the system decided to regenerate the entries with new ID values!

    The following command deletes the specified operating system entry from the

    store and removes the entry from the display order:

    bcdedit /delete {cbd971bf-b7b8-4885-951a-fa03044f5d71} /cleanup 
    

    C:\Windows\system32>bcdedit /enum firmware

    Firmware Boot Manager


    identifier {fwbootmgr}

    displayorder {f868bb9b-afaa-11ed-8500-a8a1594c6c15}

                        {f868bb9c-afaa-11ed-8500-a8a1594c6c15} 
    
                        {f868bb9d-afaa-11ed-8500-a8a1594c6c15} 
    
                        {bootmgr} 
    

    timeout 3

    Windows Boot Manager


    identifier {bootmgr}

    device partition=\Device\HarddiskVolume10

    path \EFI\MICROSOFT\BOOT\BOOTMGFW.EFI

    description Windows Boot Manager

    locale en_US

    inherit {globalsettings}

    flightsigning Yes

    default {current}

    resumeobject {8aa54c62-2e50-11e3-a87c-d9faf047cf21}

    displayorder {current}

    toolsdisplayorder {memdiag}

    timeout 3

    Firmware Application (101fffff)


    identifier {f868bb9b-afaa-11ed-8500-a8a1594c6c15}

    device partition=\Device\HarddiskVolume5

    path \EFI\MICROSOFT\BOOT\BOOTMGFW.EFI

    description Windows Boot Manager

    Firmware Application (101fffff)


    identifier {f868bb9c-afaa-11ed-8500-a8a1594c6c15}

    device partition=F:

    path \EFI\MICROSOFT\BOOT\BOOTMGFW.EFI

    description Windows Boot Manager

    Firmware Application (101fffff)


    identifier {f868bb9d-afaa-11ed-8500-a8a1594c6c15}

    device partition=C:

    path \EFI\MICROSOFT\BOOT\BOOTMGFW.EFI

    description Windows Boot Manager

    Notice how the {fwbootmgr} display order is {f...b, {f...c, [f...d then {bootmgr} but that the enumerated order moves the {bootmgr} entry to the beginning instead of being at the end. This in fact turns out to be the order that the Asrock UEFI displays them in. So I'm now baffled not only by why the order is different, but why removing the extra entries failed.

    Was this answer helpful?

    0 comments No comments