I'm not sure I understood your question. If I did, you managed to successfully import a Linux-based VM. However, your VM won't boot because its kernel cannot recognise the disk controller exposed by XenServer. And you would like to have access to your VM's disk so that you can tweak the drivers loaded.
Because Linux guests are (by default) paravirtualised, your guest's kernel should have realised it is being virtualised by Xen and loaded a kernel driver called blkfront. This driver will pick up on any disks exposed by the backend (for that VM) and present as /dev/xvd_ in your guest.
Nevertheless, you can see that VDI from dom0. Using the command-line interface, you can find out where the disks for your VMs are and (possibly) access them.
The following command should give you the UUID of your VM (named VMNAME):
vm_uuid=$(xe vm-list name-label=VMNAME --minimal)
echo $vm_uuid
Next, you can find out any Virtual Disk Images (VDIs) associated with your VM like this:
xe vbd-list type=Disk params=vdi-uuid vm-uuid=$vm_uuid
You can access these VDIs from dom0 using the with_vdi
helper script. Considering you want to access VDI with UUID 06612a19-d9ba-49f8-9f75-6c9d5a9aaef6, you can run:
# /opt/xensource/debug/with-vdi 06612a19-d9ba-49f8-9f75-6c9d5a9aaef6
DEVICE=sm/backend/c86e75df-eff8-d139-0c0f-7924465f9bfa/06612a19-d9ba-49f8-9f75-6c9d5a9aaef6
You will now be in a shell and /dev/$DEVICE
will be a block device representation of that VDI. You can, for example, look at that VDI's partition table with:
fdisk -l /dev/$DEVICE
And, from there, mount the filesystem locally and "play" with it. Remember to type exit
when you are done to quit this shell and release the VDI.
Cheers
Felipe