Troubleshooting Porter migrations
This document describes what Porter changes inside the guest operating system, the post-conversion behavior that is expected rather than a fault, and the issues most commonly encountered on a first migration.
What Porter changes in the guest
Windows guests
On the way in, Porter injects the VirtIO drivers so that the disk and network devices function under KVM.
Once Porter starts the VM, the VM restarts approximately four times on its own. This is the normal result of the virt-v2v conversion as Windows works through the injected drivers, and it is not a fault. After those driver reboots settle, the VM reaches its first real start and the firstboot cleanup script runs as SYSTEM. The script:
- Removes VMware Tools.
- Installs the VirtIO guest tools, including the QEMU guest agent and SPICE, from the attached CD-ROM.
- Performs one final reboot.
The whole sequence takes a few minutes.
The cleanup script produces no on-screen output. It runs as a background task, writes to a log, and reboots. The only record of what it did is C:\porter-cleanup.log, so that file is what you check to confirm the script ran and to see what it changed.
Linux guests
A Linux conversion, run with --linux, is a stripped-down version of the same process. virt-v2v still injects the VirtIO drivers, but there is no firstboot cleanup script, no ISO mount, and no guest-tools installation step.
Reading the cleanup log
Use reacher to read the cleanup log from the SC//Reliant host.
sudo reacher exec win "Get-Content C:\porter-cleanup.log"
The following is example output from a successful run of remove-vmware-tools.ps1.
test.user@sit0001red0:~$ sudo reacher exec win "Get-Content C:\porter-cleanup.log"
Executing command on 'win' (Windows 10 Home)
✓ Running via PowerShell:
Get-Content C:\porter-cleanup.log
Command executed successfully.
[2026-07-24 15:41:27] === Porter VMware cleanup started ===
[2026-07-24 15:41:27] Disabling VMware services...
[2026-07-24 15:41:28] Stopping VMware services...
[2026-07-24 15:41:28] Killing VMware processes...
[2026-07-24 15:41:28] Stopping VMware kernel drivers...
[2026-07-24 15:41:28] Deleting VMware service registrations...
[2026-07-24 15:41:29] Deleted service: vmci
[2026-07-24 15:41:29] Stopping EventLog and WMI to release file locks...
[2026-07-24 15:42:03] Waiting for all VMware processes to fully exit...
[2026-07-24 15:42:03] All VMware processes exited after 0s
[2026-07-24 15:42:03] Deleting VMware files...
[2026-07-24 15:42:03] Restarting EventLog and WMI...
[2026-07-24 15:42:03] Removing VMware registry keys...
[2026-07-24 15:42:03] Removing VMware uninstall registry entries...
[2026-07-24 15:42:04] Removing VMware MSI installer entries...
[2026-07-24 15:42:04] Removing VMware OEM INF files from Windows INF directory...
[2026-07-24 15:42:04] Removing VMware PnP devices...
[2026-07-24 15:42:05] Removing PnP device: VMware VMCI Bus Device (PCI\VEN_15AD&DEV_0740&SUBSYS_074015AD&REV_10\3&61AAA01&0&3F)
[2026-07-24 15:42:05] Removed successfully
[2026-07-24 15:42:05] Removing PnP device: NECVMWar VMware SATA CD00 (SCSI\CDROM&VEN_NECVMWAR&PROD_VMWARE_SATA_CD00\4&224F42EF&0&000000)
[2026-07-24 15:42:05] Removed successfully
[2026-07-24 15:42:05] Removing PnP device: VMware Virtual disk SCSI Disk Device (SCSI\DISK&VEN_VMWARE&PROD_VIRTUAL_DISK\4&1656F219&0&000000)
[2026-07-24 15:42:05] Removed successfully
[2026-07-24 15:42:05] Cleaning VMware driver class registry entries...
[2026-07-24 15:42:05] Removing class entry: CurrentControlSet\Control\Class\{4d36e97d-e325-11ce-bfc1-08002be10318}\0029 (VMware VMCI Bus Device)
[2026-07-24 15:42:06] Cleaning VMware ghost device Enum registry entries...
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\ACPI\PNP0F13
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\ACPI\VMW0001
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\ACPI\VMW0003
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\SCSI\Disk&Ven_VMware&Prod_Virtual_disk
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\HID\VID_0E0F&PID_0003&MI_00
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\HID\VID_0E0F&PID_0003&MI_01
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\PCI\VEN_15AD&DEV_0405&SUBSYS_040515AD&REV_00
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\PCI\VEN_15AD&DEV_0740&SUBSYS_074015AD&REV_10
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\PCI\VEN_15AD&DEV_077A&SUBSYS_077A15AD&REV_00
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\PCI\VEN_15AD&DEV_07E0&SUBSYS_07E015AD&REV_00
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\USB\VID_0E0F&PID_0003
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\USB\VID_0E0F&PID_0003&MI_00
[2026-07-24 15:42:06] Removing Enum key: CurrentControlSet\USB\VID_0E0F&PID_0003&MI_01
[2026-07-24 15:42:06] Looking for virtio-win-guest-tools on CD drives...
[2026-07-24 15:42:09] Installing virtio guest tools from D:...
[2026-07-24 15:42:27] virtio guest tools installed successfully (exit code: 0)
[2026-07-24 15:42:27] Fixing BCD boot manager...
[2026-07-24 15:42:27] bcdedit displaybootmenu no: The operation completed successfully.
[2026-07-24 15:42:27] bcdedit timeout 0: The operation completed successfully.
[2026-07-24 15:42:27] === Porter VMware cleanup finished ===
[2026-07-24 15:42:27] Cleanup complete - self-deleting script
Common issues
| Problem | Likely cause | Resolution |
|---|---|---|
Permission denied, or Porter will not touch the disk | Porter is not running as root. | Run the command with sudo. |
| Cannot connect to the ESXi host | SSH is not enabled on the ESXi host, or the hostname or IP address is incorrect. | Enable SSH on the ESXi host and verify the address. |
| Authentication fails or the password is rejected | A typo in the password, or the wrong account is being used. | Re-enter the password, or verify the path to the password file. |
| Porter cannot find the VM | The VM name is not an exact match. | Copy the exact VM name from the ESXi host, and check for staging copies of the VM. |
| Porter runs out of space partway through | The temporary or output directory filled up. | Free space, or point --temp-dir or --output-dir at a larger volume. |
| A Windows VM has no drivers after boot | The VM was converted with --linux or --no-drivers by mistake. | Re-run the conversion without those flags, and supply the VirtIO ISO. |
| The post-migration script did not run | The path is incorrect, or the script is not present on the VM. | Supply the real Windows path to a script that exists on the guest. |
| The conversion appears to be stuck | Large disks simply take time. | Allow it to continue and watch the log. Use --debug if you need more detail. |