VMWare Converter Getting Error "FAILED: An error occurred during the conversion: 'std:: exception" During P2V/V2V
search cancel

VMWare Converter Getting Error "FAILED: An error occurred during the conversion: 'std:: exception" During P2V/V2V

book

Article ID: 440929

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

When performing a Physical-to-Virtual (P2V) or Virtual-to-Virtual (V2V) conversion of a Linux Ubuntu 20.04 VM, the task fails at approximately 97% during the reconfiguration phase.

The following error is displayed in the VMware vCenter Converter Standalone GUI: FAILED: An error occurred during the conversion: 'std::exception Error: Unable to clone the volume mounted on '/var' from [hostname]

Reviewing the vmware-converter-worker.log or vmware-converter-helper.log reveals the following specific failure: InitrdNativePatcher failed to generate initrd image: /usr/lib/vmware-converter/initrdGenUbuntu.sh failed with return code: 1 mktemp: failed to create directory via template '/var/tmp/mkinitramfs_XXXXXX': No such file or directory

Cause

This issue occurs because the Ubuntu operating system's mkinitramfs tool, which is executed by the Converter to make the destination VM bootable, requires the /var/tmp directory to exist.

If the /var volume is intentionally excluded from the conversion job to save space or if there is a mount point conflict on the source (e.g., bind mounts) that prevents /var from being correctly mapped, the reconfiguration process cannot create the necessary boot files.

Resolution

Option 1: Include a Minimal /var Structure (Recommended)

To ensure the conversion succeeds while still excluding large amounts of data:

  1. Restart the Conversion Wizard.
  2. In the Data to copy section, ensure the volume containing /var is checked.
  3. To save space, manually uncheck only the large data subdirectories (e.g., /var/lib/mysql/var/log), but ensure the base /var directory and specifically /var/tmp are included.

Option 2: Work with your source's Guest OS vendor to ensure that /var/tmp is mapped correctly.