Issue with a Windows 7 Boot issue - involving the BCD perhaps
The requested system device cannot be identified due to multiple indistinguishable devices potentially matching the identification criteria
You've probably got multiple EFI system partitions, whether on the same drive or one on each of two drives. This confuses Windows repair tools more than it confuses the EFI itself.
You can confirm this using diskpart
inside the WinRE environment (available with install or recovery media), and use diskpart
's set id=
command to change one of the types and make it no longer an EFI system partition. After that the repair tools will happily work on the remaining EFI system partition. (I suggest changing just one hex digit of the EFI type to make it easy to put back later if needed)
The BCD is not expected to be on the Windows partition. It should exist in the EFI system partition beneath the Microsoft directory, and some of the data even gets stored by EFI in NVRAM.
Here is an actual example, from my laptop, of a partition scheme which confuses Windows repair tools. It arose because the laptop came with a rotating hard disk, and I installed an mSATA SSD large enough to use as system partition, then using the standard partition layout for the SSD. Having done so, there are now two EFI system partitions.
Microsoft DiskPart version 6.3.9600
Copyright (C) 1999-2013 Microsoft Corporation.
DISKPART> list disk
Disk ### Status Size Free Dyn Gpt
-------- ------------- ------- ------- --- ---
Disk 0 Online 465 GB 60 MB *
Disk 1 Online 202 GB 0 B *
DISKPART> select disk 0
Disk 0 is now the selected disk.
DISKPART> list part
Partition ### Type Size Offset
------------- ---------------- ------- -------
Partition 1 Recovery 400 MB 1024 KB
Partition 2 System 200 MB 401 MB
Partition 3 Reserved 128 MB 661 MB
Partition 4 Primary 452 GB 789 MB
Partition 5 Primary 12 GB 453 GB
DISKPART> select part 2
Partition 2 is now the selected partition.
DISKPART> detail part
Partition 2
Type : c12a7328-f81f-11d2-ba4b-00a0c93ec93b
Hidden : Yes
Required: No
Attrib : 0X8000000000000000
Offset in Bytes: 420478976
Volume ### Ltr Label Fs Type Size Status Info
---------- --- ----------- ----- ---------- ------- --------- --------
* Volume 3 FAT32 Partition 200 MB Healthy Hidden
DISKPART> select disk 1
Disk 1 is now the selected disk.
DISKPART> list part
Partition ### Type Size Offset
------------- ---------------- ------- -------
Partition 1 OEM 6000 MB 1024 KB
Partition 2 Recovery 300 MB 6001 MB
Partition 3 System 100 MB 6301 MB
Partition 4 Reserved 128 MB 6401 MB
Partition 5 Primary 196 GB 6529 MB
DISKPART> select part 3
Partition 3 is now the selected partition.
DISKPART> detail part
Partition 3
Type : c12a7328-f81f-11d2-ba4b-00a0c93ec93b
Hidden : Yes
Required: No
Attrib : 0000000000000000
Offset in Bytes: 6607077376
Volume ### Ltr Label Fs Type Size Status Info
---------- --- ----------- ----- ---------- ------- --------- --------
* Volume 6 FAT32 Partition 100 MB Healthy System
The string c12a7328-f81f-11d2-ba4b-00a0c93ec93b
positively identifies an EFI system partition. When I wish to hide one from repair tools, I use select disk
and select partition
and then
set id=c12a7328-f81f-11d2-ba4b-00a0c93ec930
Notice that I've changed the ID just enough to make it different, while still obvious to a technician that this is an EFI system partition.
Related videos on Youtube
winter
Updated on September 18, 2022Comments
-
winter almost 2 years
First of all, thank you to whoever reads this. I'm getting pretty upset and worried about the fact that my desktop is now definitely not booting into Windows 7, which it was very nicely before I was an idiot and used Boot-Repair (the linux tool, in an attempt to get Ubuntu working.) So here's what's happening:
I start the computer, doesn't matter the boot order so long as there's nothing in the disc drive, and I get
Windows failed to start, da da da,
File: \EFI\Microsoft\Boot\BCD Status: 0xc000000f Info: An error occured while attempting to read the boot configuration data.
So obviously it's a BCD issue. I got my install disc and went into command line to try and find anything wrong with either mounting and/or the BCD file. I found some interesting and frustrating stuff...
In system recovery, when windows is trying to fix it itself, it says it will repair
bootmgr
andfwbootmgr
. Then, it says that:The following startup options will be added: Name: Win 7 home premium (recovered) Path: Windows
(And here we have what I haven't seen before...)
Windows device: Partition=\\\?\GLOBALROOT\Device\HarddiskVolume5
Also, it will copy the current BCD to
\\\?\GLOBALROOT\Device\HarddiskVolume1\EFI\Microsoft\Boot\BCD.Backup.0003
And then I try to let it do its thing and it says Failed to save startup options. Next it can't find a system image when it tries to look for a backup.
So I've gotten to cmd line and I start
diskpart
, where I list volumes and find that:- Volume 1 is DELLUTILITY, FAT32, with name C:
- Volume 2 is RECOVERY, name D:
- 3 is a new partition I made to try and house Ubuntu, called E:
- 4 has no letter is named ESP and is also FAT32.
- Then vol 5, which is labelled OS and also... HAS NO LETTER??? Might that be a problem? I can assign it C:, but it doesn't stay when I reboot.
I try and run
bootrec /rebuildbcd
, and it detects a windows install\\\?\GLOBALROOT\Device\Windows
there. It asks if I want to add it to boot devices, and I press y... Then it says:The requested system device cannot be identified due to multiple indistinguishable devices potentially matching the identification criteria
This error comes up when working with various different things in cmd line relating to boot and BCD.
Additional info:
C:\Windows\Boot\EFI\
has no BCD in it. Potential problem, I'd think, but I don't know how to get it there or where to find it...When running
bcdboot
, I getBFSVC: FAiled to create a new system store. Status = [c000003a]
Here is my record from boot-repair in Ubuntu.
Please, any help would be so much appreciated. I really don't want to wipe my drive.
-
James Griffin almost 9 yearsJust to say that I have had the same problem, and have been Ubuntu only for some months because of it. Running something like boot-repair had changed the flags of my Windows OS partition and my Windows install disc was getting confused because of it. Thank you Jakob and Ben.
-
Ben Voigt over 10 years@JakobR: The EFI system partitions (not drives) are FAT32. You may or may not have other FAT32 partitions. In
diskpart
,select disk
andlist partition
will show EFI system partitions asSystem
. I'll port some output from my own system. -
winter over 10 yearsAlright, I found them. There are two (I meant partitions, you're correct of course - they aren't drives.) Two of them say system, and those two correspond with DELLUTILITY and OS from
list volume
. -
Ben Voigt over 10 years@JakobR: I'm pretty sure that
ESP
is an EFI system partition. Wouldn't be terribly surprised to find thatDELLUTILITY
is one as well. You don't have a second disk do you? Perhaps the disk you're running the recovery tools from? -
winter over 10 yearsActually... I was wrong. DELLUTILITY corresponds with Partition 2, which is labeled Primary. It's the ESP and the OS that are labeled system. However, the OS is NFTS, not FAT32.
-
Ben Voigt over 10 yearsCheck the type GUID? An NTFS partition definitely should not have the magic value for ESPs.
-
Ben Voigt over 10 years@Jakob: That definitely should change. On both the preinstalled Windows partition and the one I made from a clean Windows install, the ID is
ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
. So select the NTFS "OS" partition and useset id=ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
-
winter over 10 yearsWell, sir, you have just saved me from a sleepless night. So thank you indeed for that! I'm still learning everything I can about computers and such, and you seem to be quite a knowledgeable person about such things; seeing as you were so kind and helpful to me today, I'll ask you next time I've got some sort of puzzle or issue that's got me stumped. (Everything's running well; I'm messaging you from that computer.) Again, thank you so much. There is no way I would have found that fix myself. Good night, internet stranger! :)
-
Admin almost 9 yearsNote, set id-c12a7328-f81f-11d2-ba4b-00a0c93ec930 should be, set id c12a7328-f81f-11d2-ba4b-00a0c93ec930
-
Ben Voigt almost 9 years@TD1: Thanks for spotting the erroneous hyphen, it was supposed to be an equals sign. I've fixed my answer.
-
samayo over 7 years@BenVoigt Why did you change the last digit
...93b
to...930
? -
Ben Voigt over 7 years@samayo: Was something unclear about the last sentence of the answer?
-
samayo over 7 yearsSorry, I was depressed earlier and didn't notice.