CD-ROM'u virsh yoluyla değiştirin


22

Libvirsh ile yönetilen bir KVM sanal makinem var. Şimdi VM içinde farklı bir ISO görüntüsü kullanmak istiyorum.

Kullanarak sanal sürücüdeki DVD'yi nasıl değiştiririm virsh?

Yanıtlar:


17

CDROM ekle:

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

CDROM'u değiştir:

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

CDROM'u çıkarın:

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

Teşekkürler rkthr. Bunu gelecek hafta test edeceğim ve buraya geri döneceğim. Yine de +1 :-)
DerMike

7
Bahşiş için teşekkürler. Benim için çalışıyor ama sadece '--driver' dosyasını komuttan kaldırırsam (sürüm virsh: 0.9.2).
Lukasz Stelmach

2
--configKomuta eklemek zorunda kaldım . Muhtemelen konuğun aslında bir cdrom ile yapılandırılmaması nedeniyle. Bu aşağıdakileri ele: error: internal error: No device with bus 'ide' and target 'hdc'. cdrom and floppy device hotplug isn't supported by libvirt.
user59156, 19:15

1
virsh attach-disk virtual.host.name /tank/kvm/iso/ubuntu-16.04.1-server-amd64.iso hda
türü

Etki alanının cdrom için yeni bir kaynak eklemeye başlaması gerekiyor gibi görünüyor.
imz - Ivan Zakharyaschev

16

Libvirt 0.9.12 ve daha önceki sürümlerde bir komut change-mediavar:

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

CD değiştir:

change-media guest01 hdb /pool/disc.iso

CD'yi Çıkar:

change-media guest01 hdb --eject

Bu, CD-ROM için SATA denetleyicisini kullanırken doğru komuttur.
Xdg,

1

Attach-disk komutunu denedim ve bu benim için işe yaramadı. Ancak, bu belgeyi "update-device" komutunu kullanmanızı isteyen fedorada buldum. Bu benim için çalıştı ve virsh ile bir cihaz takma ve güncelleme de bulabilirsiniz . İşte adımlar:

  • Bir XML dosyası oluşturun:

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

Tanımınızda <source>etiketin bulunmadığından emin olun .

  • Cihazı güncelle:

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

OP sorduğu gibi CD'yi deðiþtirmez. Ayrıca, bağlantınızdan kötü bir şekilde kopyalandı - olduğu gibi hatalı biçimlendirilmiş bir XML.

0

İlk önce mevcut konfigürasyonu dışa aktarmanız gerekir:

virsh dumpxml guest_name > config.xml

O zaman dosyayı açıp cdrom bölümünü kopyalamanız ve satırın iso görüntü yolu ile eklenmesi gerekir.

<source file='some.iso'/>

Yani sonuç gibi bir şey

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

ve cdrom.xml olarak kaydedin.

Daha sonra:

virsh update-device guest_name cdrom.xml

#Device updated successfully
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.