[Libguestfs] Issues with p2v & virt-v2v Windows

Richard W.M. Jones rjones at redhat.com
Thu Feb 7 08:59:07 UTC 2013


On Wed, Feb 06, 2013 at 09:48:15AM -0500, Jason A. Kates wrote:
> It looks to me that the windows 2008 image I am attempting to convert is
> not being detected as windows but is being updated as a Linux system.
> 
> When PXE booted the server with the p2v image I ended up with this
> error:
> Failed to launch guestfs appliance. Try running again with
> LIBGUESTFS_DEBUG=1 for more information
> 
> The system image transferred and I was able to create an XML file to
> boot it under kvm with IDE disks.
> 
> I undefined it and attempted to convert the system into another storage
> pool to help in the debugging and I ended up with the same error.
> 
> This is what I ran:
> 
> LIBGUESTFS_TRACE=1 LIBGUESTFS_DEBUG=1 virt-v2v -i libvirtxml -os
> external  --network default window2008_r1.xml 2>&1 | tee virt-v2v.log
> 
> 
> This is the log file that was produced:
> "
> libguestfs: new guestfs handle 0x32df9a0
> libguestfs: trace: add_drive_opts
> "/run/media/jkates/WD-3TB-DSK-B/p2v/window2008_r1-cciss_c0d0"
> "format:raw" "iface:ide" "name:hda"
> libguestfs: trace: add_drive_opts = 0
> libguestfs: trace: add_drive_opts "/tmp/JxIRaWzMVf" "readonly:true"
> "format:raw" "iface:ide"
> libguestfs: trace: add_drive_opts = 0
> libguestfs: trace: set_network true
> libguestfs: trace: set_network = 0
> libguestfs: trace: launch
> libguestfs: [00000ms] febootstrap-supermin-helper --verbose -f checksum
> '/usr/lib64/guestfs/supermin.d' x86_64
> supermin helper [00000ms] whitelist = (not specified), host_cpu =
> x86_64, kernel = (null), initrd = (null), appliance = (null)
> supermin helper [00000ms] inputs[0] = /usr/lib64/guestfs/supermin.d
> checking modpath /lib/modules/3.6.11-5.fc17.x86_64 is a directory
> picked vmlinuz-3.6.11-5.fc17.x86_64 because
> modpath /lib/modules/3.6.11-5.fc17.x86_64 exists
> checking modpath /lib/modules/3.7.3-101.fc17.x86_64 is a directory
> picked vmlinuz-3.7.3-101.fc17.x86_64 because
> modpath /lib/modules/3.7.3-101.fc17.x86_64 exists
> checking modpath /lib/modules/3.7.5-101.fc17.x86_64 is a directory
> picked vmlinuz-3.7.5-101.fc17.x86_64 because
> modpath /lib/modules/3.7.5-101.fc17.x86_64 exists
> supermin helper [00000ms] finished creating kernel
> supermin helper [00000ms] visiting /usr/lib64/guestfs/supermin.d
> supermin helper [00000ms]
> visiting /usr/lib64/guestfs/supermin.d/base.img
> supermin helper [00000ms]
> visiting /usr/lib64/guestfs/supermin.d/daemon.img
> supermin helper [00001ms]
> visiting /usr/lib64/guestfs/supermin.d/hostfiles
> supermin helper [00054ms]
> visiting /usr/lib64/guestfs/supermin.d/init.img
> supermin helper [00054ms]
> visiting /usr/lib64/guestfs/supermin.d/ntfs.hostfiles
> supermin helper [00055ms]
> visiting /usr/lib64/guestfs/supermin.d/ntfs.img
> supermin helper [00055ms] adding kernel modules
> supermin helper [00134ms] finished creating appliance
> libguestfs: [00146ms] begin building supermin appliance
> libguestfs: [00146ms] run febootstrap-supermin-helper
> libguestfs: [00146ms] febootstrap-supermin-helper --verbose -f
> ext2 /usr/lib64/guestfs/supermin.d
> x86_64 /var/tmp/guestfs.ohng6U/kernel /var/tmp/guestfs.ohng6U/initrd /var/tmp/guestfs.ohng6U/root
> supermin helper [00000ms] whitelist = (not specified), host_cpu =
> x86_64, kernel = /var/tmp/guestfs.ohng6U/kernel, initrd
> = /var/tmp/guestfs.ohng6U/initrd, appliance
> = /var/tmp/guestfs.ohng6U/root
> supermin helper [00000ms] inputs[0] = /usr/lib64/guestfs/supermin.d
> checking modpath /lib/modules/3.6.11-5.fc17.x86_64 is a directory
> picked vmlinuz-3.6.11-5.fc17.x86_64 because
> modpath /lib/modules/3.6.11-5.fc17.x86_64 exists
> checking modpath /lib/modules/3.7.3-101.fc17.x86_64 is a directory
> picked vmlinuz-3.7.3-101.fc17.x86_64 because
> modpath /lib/modules/3.7.3-101.fc17.x86_64 exists
> checking modpath /lib/modules/3.7.5-101.fc17.x86_64 is a directory
> picked vmlinuz-3.7.5-101.fc17.x86_64 because
> modpath /lib/modules/3.7.5-101.fc17.x86_64 exists
> supermin helper [00000ms] finished creating kernel
> supermin helper [00393ms] finished mke2fs
> supermin helper [00394ms] visiting /usr/lib64/guestfs/supermin.d
> supermin helper [00394ms]
> visiting /usr/lib64/guestfs/supermin.d/base.img
> supermin helper [03635ms]
> visiting /usr/lib64/guestfs/supermin.d/daemon.img
> supermin helper [03646ms]
> visiting /usr/lib64/guestfs/supermin.d/hostfiles
> supermin helper [08967ms]
> visiting /usr/lib64/guestfs/supermin.d/init.img
> supermin helper [08968ms]
> visiting /usr/lib64/guestfs/supermin.d/ntfs.hostfiles
> supermin helper [08973ms]
> visiting /usr/lib64/guestfs/supermin.d/ntfs.img
> febootstrap-supermin-helper: ext2fs_unlink_inode: Ext2 inode is not a
> directory

This is the actual problem.  This is caused because your
copy of libguestfs is broken.

> libguestfs: trace: launch = -1 (error)
> virt-v2v: Failed to launch guestfs appliance. Try running again with
> LIBGUESTFS_DEBUG=1 for more information
> libguestfs: trace: close
> libguestfs: closing guestfs handle 0x32df9a0 (state 0)
> virt-v2v: Transferring storage volume window2008_r1-cciss_c0d0:
> 72833679360 bytes
> "
> 
> I redefined the guest and I ran this:
> [root at W520 v2v]# virt-inspector window2008_r1
> febootstrap-supermin-helper: ext2fs_unlink_inode: Ext2 inode is not a
> directory
> libguestfs: error: external command failed, see earlier error messages
>
> This is a list of the RPM files that I think might be relevant:
> libguestfs-winsupport-1.0-7.el6.x86_64
> libguestfs-tools-c-1.18.11-2.fc17.x86_64
> libguestfs-1.18.11-2.fc17.x86_64
> libguestfs-tools-1.18.11-2.fc17.x86_64

It's pretty strange that libguestfs-winsupport is installed.  That's a
RHEL 6 package, and could break libguestfs if used on Fedora 17.  In
any case, there is no need to use libguestfs-winsupport since NTFS
support is provided in the base Fedora package.  'yum remove' it and
try again.

> virtio-win-1.5.3-1.el6_3.noarch
> virt-manager-0.9.4-3.fc17.noarch
> libvirt-daemon-config-nwfilter-0.9.11.9-1.fc17.x86_64
> libvirt-0.9.11.9-1.fc17.x86_64
> libvirt-python-0.9.11.9-1.fc17.x86_64
> virt-v2v-0.9.0-1.fc17.x86_64
> libvirt-daemon-config-network-0.9.11.9-1.fc17.x86_64
> virt-manager-common-0.9.4-3.fc17.noarch
> libvirt-daemon-0.9.11.9-1.fc17.x86_64
> libvirt-client-0.9.11.9-1.fc17.x86_64
> python-virtinst-0.600.3-2.fc17.noarch
> 
> 
> Any help or suggestions of what to attempt next would be appreciated.
> 
> 					-Jason

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
virt-p2v converts physical machines to virtual machines.  Boot with a
live CD or over the network (PXE) and turn machines into KVM guests.
http://libguestfs.org/virt-v2v




More information about the Libguestfs mailing list