Comment 5 for bug 613549

Revision history for this message
Jamin W. Collins (jcollins) wrote :

Made the requested apparmor change, checked the dmesg output before attempting to clone the VM, found the following new entry:

[90351.748748] type=1505 audit(1281033561.731:23): operation="profile_replace" pid=7783 name="/usr/sbin/libvirtd"

Looks good so far.

First attempt to clone the VM and set the new drive to the desired LVM device name resulted in an warning dialog:

"Cloning will overwrite the existing file

Using an existing image will overwrite the path during the clone process. Are you sure you want to use this path?"

Answered yes and continued on. Cloning errors with the following:

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/clone.py", line 756, in _async_clone
    CloneManager.start_duplicate(self.clone_design, meter)
  File "/usr/lib/pymodules/python2.6/virtinst/CloneManager.py", line 634, in start_duplicate
    _do_duplicate(design, meter)
  File "/usr/lib/pymodules/python2.6/virtinst/CloneManager.py", line 659, in _do_duplicate
    dst_dev.setup(meter)
  File "/usr/lib/pymodules/python2.6/virtinst/VirtualDisk.py", line 1076, in setup
    self._do_create_storage(progresscb)
  File "/usr/lib/pymodules/python2.6/virtinst/VirtualDisk.py", line 968, in _do_create_storage
    self._clone_local(progresscb, size_bytes)
  File "/usr/lib/pymodules/python2.6/virtinst/VirtualDisk.py", line 1015, in _clone_local
    fd = os.open(self.path, os.O_WRONLY | os.O_CREAT)
OSError: [Errno 2] No such file or directory: '/dev/vms/ldap'

However, on the VM host:
# ls -l /dev/vms/ldap
lrwxrwxrwx 1 root root 18 2010-08-05 12:46 /dev/vms/ldap -> ../mapper/vms-ldap
# ls -l /dev/mapper/vms-ldap
brw-rw---- 1 root disk 251, 16 2010-08-05 12:46 /dev/mapper/vms-ldap

As you can see the device does in fact exist and this is backed up by the output of lvs:

# lvs | grep ldap
  ldap vms -wi-a- 10.00g

Now, removing the logical volume and starting fresh results in the following:

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/clone.py", line 756, in _async_clone
    CloneManager.start_duplicate(self.clone_design, meter)
  File "/usr/lib/pymodules/python2.6/virtinst/CloneManager.py", line 634, in start_duplicate
    _do_duplicate(design, meter)
  File "/usr/lib/pymodules/python2.6/virtinst/CloneManager.py", line 659, in _do_duplicate
    dst_dev.setup(meter)
  File "/usr/lib/pymodules/python2.6/virtinst/VirtualDisk.py", line 1076, in setup
    self._do_create_storage(progresscb)
  File "/usr/lib/pymodules/python2.6/virtinst/VirtualDisk.py", line 938, in _do_create_storage
    self._set_vol_object(self.vol_install.install(meter=progresscb),
  File "/usr/lib/pymodules/python2.6/virtinst/Storage.py", line 1161, in install
    raise RuntimeError("Libvirt version does not support "
RuntimeError: Libvirt version does not support storage cloning.

After which point virt-manager is fairly unresponsive, all statistics for the VMs are hung, and has to be forcibly exited.