通过 virsh 更改 CD-ROM

通过 virsh 更改 CD-ROM

我有一个通过 libvirsh 管理的 KVM 虚拟机。现在我想在虚拟机中使用不同的 ISO 映像。

如何使用 更改虚拟驱动器中的 DVD virsh

答案1

添加 CDROM:

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

更换 CDROM:

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

移除 CDROM:

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

答案2

在 libvirt 0.9.12 甚至更早版本中,change-media存在一个命令:

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

更换 CD:

change-media guest01 hdb /pool/disc.iso

弹出 CD:

change-media guest01 hdb --eject

答案3

我尝试了附加磁盘命令,但它对我不起作用。不过,我在 Fedora 上找到了这个文档,它要求您使用“update-device”命令。这对我有用,您可以在以下位置找到它使用 virsh 连接并更新设备。步骤如下:

  • 创建 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>
    

<source>确保你的定义中没有该标签

  • 更新设备:

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

答案4

首先您必须导出现有配置:

virsh dumpxml guest_name > config.xml

然后你必须打开文件并复制 cdrom 部分并添加带有 iso 映像路径的行,例如

<source file='some.iso'/>

所以结果就像

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

并将其保存为 cdrom.xml。

在那之后:

virsh update-device guest_name cdrom.xml

#Device updated successfully

相关内容