It appears that virt-manager does not read the hard drive image format of a pre-existing image when creating a new virtual machine and instead chooses the "raw" format. Since virt-manager seems to store it's setting internally, you cannot just edit the ~/.libvirt/qemu/VMNameHere.xml file.
You must export the libvirt vm settings to xml, fix the hard drive image formatting, and import the vm settings back into libvirt.
Get vm name:
Code:
virsh -c qemu:///session list --all
If your vm is in the system account instead of your user account replace qemu:///session with qemu:///system
Export vm settings:
Code:
virsh -c qemu:///session dumpxml VMName > ~/Desktop/VMName.xml
Update the hard drive format in the xml file:
Code:
From
<devices>
<emulator>/usr/bin/kvm</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='raw'/>
<source file='/storage/vmimages/Windows7_x64-01/qcow2-60GB_HDD1.qcow2'/>
<target dev='hda' bus='ide'/>
</disk>
To
<devices>
<emulator>/usr/bin/kvm</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/storage/vmimages/Windows7_x64-01/qcow2-60GB_HDD1.qcow2'/>
<target dev='hda' bus='ide'/>
</disk>
Remove old vm settings in virt-manager:
Open virt-manager and delete the problem vm but make sure to leave the hard drive image
Import in the fixed xml file:
Code:
virsh -c qemu:///session define ~/Desktop/VMName.xml
The vm will automatically appear in virt-manager.
The vm should now work fine.
Other notes:
This qcow2/raw issue occurs to every hard drive image I load into a vm using virt-manager and so I must edit and reimport the xml each time.
You might be able to shutdown libvirt-bin and qemu-kvm services, edit the ~/.libvirt/qemu/VMNameHere.xml file and reboot as a shorter method but I didn't verify this works.
Hopefully this will save some several hours of searching.