[Libguestfs] Changing a given image from virtio-blk to virtio-scsi

Richard W.M. Jones rjones at redhat.com
Thu Jul 14 18:03:26 UTC 2016


On Thu, Jul 14, 2016 at 06:54:20PM +0300, Yaniv Kaul wrote:
> Any idea what 'virt-customize' script I should use to convert from
> virtio-blk (vda, vdb...) to virtio-scsi (sda, sdb...) ?

You'll find that you have to recreate the initrd, else it won't boot
(I'm assuming this is a Linux guest).

This is somewhat complicated and involves running some commands from
the guest.  Here's what virt-v2v does, although virt-v2v is especially
complicated because it supports doing this for everything back to RHEL 3(!)
You probably only need to run dracut if you only care about modern
Fedora & RHEL.

  https://github.com/libguestfs/libguestfs/blob/master/v2v/convert_linux.ml#L794-L921

> I've tried naively to convince libvirt to use virtio-scsi and still present
> it to the guest as 'vd*' - that didn't work (

Yeah the target dev names in libvirt XML aren't really arbitrary
strings.  Device names are controlled by the *guest* kernel, nothing
to do with the host which just exports one or another PCI device.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-top is 'top' for virtual machines.  Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.
http://people.redhat.com/~rjones/virt-top




More information about the Libguestfs mailing list