![使用 virt-install 进行 KVM/qemu/libvirt VM PCI 域/总线/插槽/功能分配](https://linux22.com/image/699195/%E4%BD%BF%E7%94%A8%20virt-install%20%E8%BF%9B%E8%A1%8C%20KVM%2Fqemu%2Flibvirt%20VM%20PCI%20%E5%9F%9F%2F%E6%80%BB%E7%BA%BF%2F%E6%8F%92%E6%A7%BD%2F%E5%8A%9F%E8%83%BD%E5%88%86%E9%85%8D.png)
我正在尝试使用 virt-install 实用程序创建一个虚拟机,虽然这很容易做到,但我想要做的事情却相当困难。
我希望能够指定要添加的以太网接口的域/总线/插槽/功能。我意识到我可以在创建域后使用 virsh edit 来修改这些设置,使其不再是默认设置,但我想知道是否有人知道是否可以使用 virt-install 实用程序从命令行进行操作,如果可以,您知道正确的语法是什么吗?
谢谢。
肖恩
答案1
是的,您可以在命令行中指定所有这些virt-install
。查看virt-install --network=?
您可以指定的完整列表。这些对应于XML 中设置的属性。
例如,如果你<interface>
看起来像这样:
<interface type='bridge'>
<mac address='52:54:00:c2:de:ce'/>
<source bridge='br0'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</interface>
您可以像这样指定它:
virt-install ... -network bridge=br0,model=virtio,mac=52:54:00:c2:de:ce,address.type=pci,address.domain=0,address.bus=1,address.slot=0,address.function=0 ...
您也可以使用 获取生成的 XML,而不是执行安装--print-xml
。然后,您可以根据自己的喜好对其进行自定义,并直接自动执行许多安装,而无需通过virt-install
。
--print-xml [STEP]
Print the generated XML of the guest, instead of defining it. By
default this WILL do storage creation (can be disabled with
--dry-run). This option implies --quiet.
If the VM install has multiple phases, by default this will print
all generated XML. If you want to print a particular step, use
--print-xml 2 (for the second phase XML).