DualBoot/VM

I had my windows boot drive passed to a KVM/QEMU vm so I could use it as a vm or a boot target for dual booting. Everything was working (including nested virtualization for wsl) but after a windows update every time I try to boot as a vm I get a boot device not found error. Now if I boot the pc to windows it works correctly; I have tried remaking the vm multiple times and get the same error every time. I have tried both /dev/sda and /dev/sda2, /dev/sda1, /dev/sda3

Does anyone know of a good solution or what caused it to just stop working?

1 Like

It sounds like your drives boot sector has been changed by windows. If that is an EFI boot partition then (theoretically) you should still be able to look around and see something. Do you have a copy the Boot Sector or Boot partition somewhere?

Depending on how your boot selection is made, you could try using the partition UUID (not the dirve UUID) to explicitly specify the next boot step. The error you describe sounds like the device order has changed somehow, or that some partitions are no longer recognised as bootable.

In the past I have kept a copy of the boot sector (and the partition table) specifically to replace
anything windows might change (for what ever reason). The individual partition boot sectors are usually unaffected any such windows “shenanagins”.

Hope this at least gives you somewhere to start looking

Cheers

Paul

1 Like

I will check just found it strange to be able to boot bare metal but virtual gives bsod. I will try to read the efi files and see if I can pass the partitions through or something

Is it possible “Fast Startup” might be the culprit? It’s been known to mess things up in a dual boot environment/to the MBR (but your situation isn’t exactly dual boot from the same disk).

https://wiki.archlinux.org/title/Dual_boot_with_Windows#Fast_Startup_and_hibernation