The example how kpartx is used is wrong. All these pages have the same bug: http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5/html/Virtualization_Guide/sect-Virtualization-How_To_troubleshoot_Red_Hat_Virtualization-Accessing_data_on_guest_disk_image.html http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5.2/html/Virtualization/sect-Virtualization-How_To_troubleshoot_Red_Hat_Virtualization-Accessing_data_on_guest_disk_image.html http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/en-US/RHEL510/Virtualization_Guide/ch-virt-accessing-data.html http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/Virtualization-en-US/ch-virt-accessing-data.html It should have been "kpartx -av imagefile" and not the device path. The example also misses to explain how to actually mount the image. It should say something like "You can mount it now with mount /dev/mapper/loop0pX /mnt/ -o loop,ro. After unmounting you can disconnect the mapper devices with kpartx -d imagefile."
Should be something like: kpartx -l /vm/xenguest.img kpartx -a /vm/xenguest mount /dev/mapper/loop0pX /mnt/tmp -o loop,ro # do your stuff umount /mnt/tmp kpartx -d /vm/xenguest.img
Fixed for 5.5.