Something has changed, these steps no longer work. I was running into some issues on a Win 2022 VM.
In summary, all that was needed was
- Take your migrated VM and boot it using IDE
- Uninstall VMWare Tools; Install qemu-guest-agent, shut down VM
- Add a new disk (1GiB in size is enough) as virtio0
- Boot the VM, ensure 1GiB disk from prior step is visible
- Shutdown VM, switch drive to virtio
- Adjust boot order to make sure drive added in step (5) is the primary boot
That was it. But now, the same steps yield
INACCESSIBLE_BOOT_DEVICE. I personally wanted to switch to virtio scsi single with thread=1 for best performance.
What did work is booting it in IDE, then once it was up and running, doing this (I pulled the drivers from the virtio iso file, a link to which is available on the proxmox site)
Bash:
pnputil /add-driver vioscsi.inf /install
pnputil /add-driver viostor.inf /install
Once that was done, I detached the boot volume that was attached as an ide drive to ide1 and attached it to virtio0. Actually, these steps should be doable before even shutting down the VM in VMWare, that way it should all just work once the VM is booted up in proxmox as the drivers are there already.
You can skip all this and just run it in IDE - but for me it was not option due to the insane performance hit. It was 1/5th the speed for me.