Ich dachte bisher das geht gar nicht, aber siehe da. Natürlich lässt sich in eine VM unter KVM/libvirt eine virtuelle Platte online einbauen – cool.
Das Wesentliche habe ich hier herausgelesen: http://serverfault.com/questions/453456/adding-virtio-block-devices-at-runtime-in-libvirt-kvm
In der Ubuntu-VM habe ich das Modul acpiphp geladen:
modprobe acpiphp
Auf dem Host habe ich dann eine Beschreibungsdatei für die virtuelle Platte vorbereitet mit dem Inhalt, wie er auch in der virtuellen Maschine definiert wäre:
echo <<EOF > disk.xml
<disk type='block' device='disk'>
<driver name='qemu' type='raw'/>
<source dev='/dev/disk/by-path/ip-10.0.0.1:3260-iscsi-iqn.2014-11.storage:samba-lun-4'/>
<target dev='vdd' bus='virtio'/>
</disk>
EOF
Danach wird die Platte am Host direkt eingebunden:
virsh attach-device NAME_DER_VM disk.xml --persistent
Das –persistent sorgt dafür, dass die VM sich beim Ausschalten „merkt“, dass die Platte „angeschlossen“ ist.
Voila.