2

When running bcdedit on a not local store it's impossible to set the device parameter of the bootloader to a not locally available device. How to do it?

In particular: I'm trying to set an external BCD to correct parameters running bcdedit in a VM in Parallels. That is necessary because the external BCD points to another partition making a windows boot not possible (Error: Bootloader can't be found).

The partition Windows 7 is on is /dev/sda4 or \Device\Harddisk0\Partition4. However, the partition in the virtual machine Windows is running on is also Partition4 but being contained in an image file the VM uses as a harddrive.


Setting the device parameter with the volume/partition GUID taken by gdisk, diskutil or blkid like this

bcdedit /store externalBCD /set {default} device \\Volume{77AA5A80-B903-458A-9A48-C8F07BFC1081}

or like this

bcdedit /store externalBCD /set {default} device partition=Volume{77AA5A80-B903-458A-9A48-C8F07BFC1081}

does not work. The error is "The device in this form is invalid" (Translated from German) or "Failed to set up Elementdata" (Translated from German)

Setting the device parameter with a Devicetree like this

bcdedit /store externalBCD /set {default} device partition="\Device\Harddisk0\Parition4"

just changes it to C:, which will not work on the BCD outside the VM, because the partition Windows is on won't be mapped to C: outside the VM.

0

As it turns out, the BCD internally stores the partition by the volume's GUID. When using bcdedit, it will translate the GUID to any "simpler" path. So even when the BCD is moved to a different system, as long as the volume GUID stays the same, the setting will still work.

  • Could you elaborate on how to use bcdedit to specify a partition by GUID, even when that partition doesn't exist on the current system? Did you change the GUID of the partition on one of the systems so that it matched? – GuyGizmo Feb 16 '18 at 4:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.