So a few days ago i was firmware and driver patching a S2D cluster for a client that is Bare Metal Deployed from VMM. For those not familiar with Bare Metal Deployment, it deployes a VHDX file to the c:\ drive and changes the bcdboot order so that it points to the VHDX file to boot from.
Firmware upgrades is something i have done a million times and never had any issues with booting before. And it happend on the 2nd node i was upgrading. No matter what i tried with recovery options from the repair boot, there was no fixing it.
Then i rememberd that this has a diffrent boot solution then a normal windows server that is deployed from the ISO and that normal repairs would not work.
So i googled my way trough how to try and fix the boot order.
I tested several things but the thing that actually worked was to mount the virtual disk in diskpart and then change the boot order to point to windows in that vdisk.
Microsoft’s guide here actually proved to be the correct way to do it.
The first thing i did was go into powershell under Advanced Options and Command Promt
Once inside i ran the following commands.
list volume
select volume 3 (if it's volume3)
assign letter=d
exit
d:\
cd C:\windows\system32
bcdboot v:\windows /s H: /f UEFI
After this you can exit and reboot and it will boot into Windows as normal.