Migrating Win2022 VM from Esxi (boot fail)

wav3front

Member
Aug 31, 2024
54
2
8
HI,

I imported a Windows 2022 VM from Esxi to ProxMox.
It does not boot, and I get this error:

"inaccessible boot device"

I understand that I need to install VirtIO drivers, but how it that done, since I cannot boot into Windows?

Thanks
Alex
 
Yes. Always use the virtio disk and networking. Get it booted, install the virtio driver ISO. Add a temp 1GB Virtio disk as a second Hard Disk. Boot it up make sure the drivers are working. Then power it off, remove the temp 1GB Hard Disk. Change the boot disk over to viritio and adjust the Options to set it to boot.
 
Alternatively, if you already have a second drive to migrate over from ESXi, set that one to virtio already while keeping the first one on sata (I usually use sata over EDI for disks).
Regarding multiple disks though, whatever route you go, the disk will most likely show up as offline on the first boot after the switch, so prepare accordingly (aka, if some service uses/requires that drive, set the service to disabled before the reboot and only re-enable after you've fixed the drive)
 
Adding my own findings here after struggling with this.

Several places talk about adding a VirtIO Block disk and installing drivers for it. I did that, but that doesn't install the pass-through SCSI controller drivers, which is what's required for using the VirtIO SCSI controller. Some places also talk about adding so and so on a "different controller". I found this confusing, because you can only choose one controller for the whole machine. I later realized that this was referring to SCSI vs SATA (or something else), rather than different SCSI controllers.

So, here's what worked for me:

- Set the SCSI controller to VirtIO SCSI single.
- Import the disks as SATA. (select Prepare for VirtIO-SCSI if using web interface)
- Add a temporary SCSI disk.
- Mount the VirtIO driver ISO. (add a SATA CD drive if necessary)
- Start the virtual machine.
- Open Device manager and install drivers for the SCSI Controller, or just use the guest tools installer to install everything.
- Shut the virtual machine down.
- Make a note of your boot order.
- Reattach your SATA disks as SCSI disks.
- Remove the temporary disk.
- Restore your boot order.

Everything should now work. Go ahead and start the machine. During some other trials when I got "inaccessible boot device", I was able to get it up and running by just booting into safe mode once, so that might be worth trying.
 
Last edited:
Hardware / select the existing Hard Disk, click Detach. Double click the unattached disk and use IDE for controller type. Then go to Options and fix the Boot Order for IDE. Power it up.
Thanks a lot, it still working on dec 2025
 
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
  1. Take your migrated VM and boot it using IDE
  2. Uninstall VMWare Tools; Install qemu-guest-agent, shut down VM
  3. Add a new disk (1GiB in size is enough) as virtio0
  4. Boot the VM, ensure 1GiB disk from prior step is visible
  5. Shutdown VM, switch drive to virtio
  6. 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.