CD-ROM wechseln über virsh

CD-ROM wechseln über virsh

Ich habe eine KVM-virtuelle Maschine, die über libvirsh verwaltet wird. Jetzt möchte ich innerhalb der VM ein anderes ISO-Image verwenden.

Wie ändere ich die DVD im virtuellen Laufwerk mithilfe von virsh?

Antwort1

CD-ROM hinzufügen:

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

CD-ROM wechseln:

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

CD-ROM entfernen:

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

Antwort2

In libvirt 0.9.12 und möglicherweise früher change-mediagibt es einen Befehl:

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

CD wechseln:

change-media guest01 hdb /pool/disc.iso

CD auswerfen:

change-media guest01 hdb --eject

Antwort3

Ich habe den Befehl „attach-disk“ ausprobiert, aber er hat nicht funktioniert. Allerdings habe ich dieses Dokument auf Fedora gefunden, in dem Sie aufgefordert werden, den Befehl „update-device“ zu verwenden. Das hat bei mir funktioniert, und Sie finden es unterAnschließen und Aktualisieren eines Geräts mit virsh. Hier sind die Schritte:

  • Erstellen Sie eine XML-Datei:

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

Stellen Sie sicher, dass das Tag nicht <source>in Ihrer Definition enthalten ist

  • Aktualisieren Sie das Gerät:

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

Antwort4

Zuerst müssen Sie die vorhandene Konfiguration exportieren:

virsh dumpxml guest_name > config.xml

Dann müssen Sie die Datei öffnen und den CD-ROM-Abschnitt kopieren und die Zeile mit dem ISO-Image-Pfad hinzufügen, wie

<source file='some.iso'/>

Das Ergebnis ist also so etwas wie

<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>

und speichern Sie es als cdrom.xml.

Danach:

virsh update-device guest_name cdrom.xml

#Device updated successfully

verwandte Informationen