I have a backup of my System's partitions that I want to restore to a machine, this destination system doesn't support UEFI mode, in which WIndows 10 was first installed.

My Windows 10 system booted from the EFI system partition, where the BCD datastore is located, how should I convert it to a classical System reserved partition?

I see many documents on how to go from BIOS to EFI, but not any from the reverse procedure.

I unfortunately do not have the possibility to enable UEFI mode on the destination hardware.

I'm trying to restore my Windows 10 machine that I have a backup of the image of on a completely different machine, a KVM based virtual machine to be precise.

I'm not asking on how to change the hardware settings on KVM but how to convert an ESP partition that is restored alongside my C: partition to a standard System served one that could boot on legacy harware presented by KVM to the OS.

The VirtIO drivers are already installed in the OS if this info is needed.

References I've looked at:

https://msdn.microsoft.com/fr-fr/library/windows/hardware/dn898504(v=vs.85).aspx https://msdn.microsoft.com/fr-fr/library/windows/hardware/dn898510(v=vs.85).aspx

And of course my previous question where the answer is unfortunately not working anymore since update 1607 of Windows 10. boot windows installed with UEFI on bios only host

What I tried :

  1. Restore only the first partition on a MBR disk
  2. Set that partition as active
  3. Regenerate boot bcd files with BCD as @snayob explained

    PS C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\amd64\BCDBoot> .\bootsect.exe /nt60 F: /mbr Target volumes will be updated with BOOTMGR compatible bootcode.

    F: (\?\Volume{833d781b-d99f-11e6-80ec-8223a3a1c06a})

    Successfully updated NTFS filesystem bootcode.


    Successfully updated disk bootcode.

    Bootcode was successfully updated on all targeted volumes. PS C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\amd64\DISM> cd "C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\amd64\BCDBoot" .\bcdboot.exe F:\Windows /s F: /v /f BIOS BFSVC: ServiceBootFiles MuiOnly:n Res:y Fonts:y BootMgrOvw:nBootStatOvw:n DbgTransports:y CreateSetupObj :n .\bcdboot.exe : BFSVC Error: Failed to open file F:\Windows\boot\Resources\BOOTRES.DLL for read! Error code = 0x780 At line:2 char:1

    • .\bcdboot.exe F:\Windows /s F: /v /f BIOS
    • ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      • CategoryInfo : NotSpecified: (BFSVC Error: Fa...or code = 0x780:String) [], RemoteExcept ion
      • FullyQualifiedErrorId : NativeCommandError

    BFSVC Warning: Failed to determine source OS version. BFSVC Error: Failed to open file F:\Windows\boot\PCAT\bootmgr for read! Error code = 0x780 BFSVC Error: Failed to validate boot manager checksum (F:\Windows\boot\PCAT\bootmgr)! Error code = 0xc1 Failure when attempting to copy boot files.

  • Convert the GPT to MBR, which I suggested, in your other question – Ramhound Jan 19 '17 at 12:56
  • @Ramhound well, in this case it seems to not work anymore from Windows 10 update 1607 and later, hence my question now, have things evolved with windows bootloader? – kuzko Jan 19 '17 at 14:37
  • It does indeed work. I just recently did it. The Windows Bootloader hasn't changed significantly since Windows XP was released. The most recent change, but the significant of this change is small, was when Microsoft added support for UEFI. – Ramhound Jan 19 '17 at 14:41
  • unfortunately no, first the diskpart command is refusing to convert the disk : DISKPART> convert mbr Virtual Disk Service error: The specified disk is not convertible. CDROMs and DVDs are examples of disks that are not convertable. – kuzko Jan 19 '17 at 15:42
  • You can't use DISKPART to do the conversion if you want to keep your data. You also can't convert to MBR if the system virtual hdd is larger then 3TB (well you can but the largest partition would be under 3TB). – Ramhound Jan 19 '17 at 15:43

Windows 10 adapts pretty well on hardware change.

For example you can use the same Windows 10 VHD installation on native computer and in Hyper-V.

So you need just to copy your Windows 10 partition - only partition where \windows folder is placed.

  1. Make destination disk MBR style, create only one single partition, make partition active, map it to any drive letter say Z: (it will be future c: drive)

  2. Copy Windows partition from backup to destination disk (single partition) eventually on file by file basis (depends on software used for making backup).

Then write MBR and PBR using bootsect.exe

  1. bootsect /nt60 Z: /mbr

Then write boot files using bcdboot.exe

  1. bcdboot Z:\windows /s Z:

  • Thank you for your time, the bootsect goes successfully but I get a "Failure when attempting to copy boot files." when using the bcdboot command. – kuzko Jan 23 '17 at 10:19
  • Add option "/f BIOS" at end of bcdboot command given above. – snayob Jan 23 '17 at 10:26
  • The same error happens when I run the command "bcdboot E:\windows /s E: /f BIOS" – kuzko Jan 23 '17 at 16:34
  • You have to execute bcdboot command on elevated admin prompt. How come you don't have read access to F: or E: drive? What OS is on C:, what OS is on F:, what bit-version? You cannot mix bit version of executables. I see you are executing 64bit BCDboot from Windows 10 kit on what OS? – snayob Jan 25 '17 at 16:10
  • I use a Windows server 2012 R2 on the C: drive, the resotred OS that I mapped the disk to F: is a Windows 10. Ont the restoring machine (2012) the Windows ADK 10 version 1607 is installed. The restored OS is 64 bit as well as the WS2012R2, my powershell prompt is always elevated and run in ISE. – kuzko Jan 25 '17 at 17:18

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.