14.6. 编辑客户机虚拟机的配置文件
除了使用 dumpxml 选项(请参考 第 14.5.23 节 “创建虚拟机 XML 转储(配置文件)”),可以在虚拟机运行时编辑虚拟机,或者在它们离线时编辑虚拟机。virsh edit 命令提供此功能。例如,要编辑名为
rhel6
的客户机虚拟机:
# virsh edit rhel6
这会打开一个文本编辑器。默认文本编辑器是 $EDITOR shell 参数(默认为 vi )。
14.6.1. 在 KVM 虚拟机中添加多功能 PCI 设备
本节将演示如何向 KVM 客户机虚拟机添加多功能 PCI 设备。
- 运行 virsh edit [guestname] 命令,以编辑 guest 虚拟机的 XML 配置文件。
- 在地址类型标签中,为 function='0x0' 添加多功能='on ' 条目。这可让客户机虚拟机使用多功能 PCI 设备。
<disk type='file' device='disk'> <driver name='qemu' type='raw' cache='none'/> <source file='/var/lib/libvirt/images/rhel62-1.img'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0' multifunction='on'/ </disk>
对于带有两个功能的 PCI 设备,特别是 XML 配置文件,使其包含与第一个设备相同的插槽号和不同的功能号,如 function='0x1' 的第二个设备。例如:<disk type='file' device='disk'> <driver name='qemu' type='raw' cache='none'/> <source file='/var/lib/libvirt/images/rhel62-1.img'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0' multifunction='on'/> </disk> <disk type='file' device='disk'> <driver name='qemu' type='raw' cache='none'/> <source file='/var/lib/libvirt/images/rhel62-2.img'/> <target dev='vdb' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x1'/> </disk>
- KVM 客户机虚拟机的 lspci 输出显示了:
$ lspci 00:05.0 SCSI storage controller: Red Hat, Inc Virtio block device 00:05.1 SCSI storage controller: Red Hat, Inc Virtio block device