Changer de CD-ROM via virsh


22

J'ai une machine virtuelle KVM gérée via libvirsh. Maintenant, je veux utiliser une image ISO différente à l'intérieur de la machine virtuelle.

Comment changer le DVD dans le lecteur virtuel en utilisant virsh?

Réponses:


17

Ajouter un CDROM:

attach-disk guest01 /root/disc1.iso hdc --driver file --type cdrom
--mode readonly

Changer de CD-ROM:

attach-disk guest01 /root/disc2.iso hdc --driver file --type cdrom
--mode readonly

Supprimer le CD-ROM:

 attach-disk guest01 " " hdc --driver file --type cdrom
 --mode readonly

Merci, rkthr. Je teste cela la semaine prochaine et je reviens ici. +1 quand même :-)
DerMike

7
Merci pour le conseil. Pour moi, cela fonctionne, mais seulement si je supprime «--driver file» de la commande (version de virsh: 0.9.2).
Lukasz Stelmach

2
J'ai dû ajouter --configà la commande. Probablement dû au fait que l'invité n'était pas configuré à l'origine avec un cdrom. Cette adresse qui suit: error: internal error: No device with bus 'ide' and target 'hdc'. cdrom and floppy device hotplug isn't supported by libvirt.
user59156

1
virsh attach-disk virtual.host.name /tank/kvm/iso/ubuntu-16.04.1-server-amd64.iso hda --type cdrom --mode readonly
Xdg

Il semble que le domaine doit être démarré pour attacher une nouvelle source pour le cdrom.
imz - Ivan Zakharyaschev

16

Dans libvirt 0.9.12 et peut-être plus tôt, une commande change-mediaexiste:

change-media <domain> <path> [<source>] [--eject] [--insert] [--update] [--current] [--live] [--config] [--force]

Changer de CD:

change-media guest01 hdb /pool/disc.iso

Éjecter le CD:

change-media guest01 hdb --eject

Il s'agit de la bonne commande lors de l'utilisation du contrôleur SATA pour CD-ROM.
Xdg

1

J'ai essayé la commande attach-disk et cela n'a pas fonctionné pour moi. Cependant, j'ai trouvé ce doc sur fedora qui vous demande d'utiliser la commande "update-device". Cela a fonctionné pour moi, et vous pouvez le trouver sur Attacher et mettre à jour un appareil avec virsh . Voici les étapes:

  • Créez un fichier XML:

    <backingStore/>
    <target dev='hdc' bus='ide'/>
    <readonly/>
    <alias name='ide0-1-0'/>
    <address type='drive' controller='0' bus='1' target='0' unit='0'/>
    </disk>
    

Assurez-vous que vous n'avez pas la <source>balise dans votre définition

  • Mettez à jour l'appareil:

    virsh update-device <guest name> <XML file name>
    

Cela retirerait l'appareil et ne changerait pas le CD comme l'OP le demande. Il est également mal copié à partir de votre lien - c'est du XML mal formé en l'état.

0

Vous devez d'abord exporter la configuration existante:

virsh dumpxml guest_name > config.xml

Ensuite, vous devez ouvrir le fichier et copier la section cdrom et ajouter la ligne avec le chemin de l'image iso comme

<source file='some.iso'/>

Donc, le résultat est quelque chose comme

<disk type='file' device='cdrom'>
   <source file='some.iso'/>
   <driver name='qemu' type='raw'/>
   <backingStore/>
   <target dev='hdb' bus='ide'/>
   <readonly/>
   <alias name='ide0-0-1'/>
   <address type='drive' controller='0' bus='0' target='0' unit='1'/>
 </disk>

et enregistrez-le sous cdrom.xml.

Après ça:

virsh update-device guest_name cdrom.xml

#Device updated successfully
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.