23.17.5. 主机物理机器设备分配
23.17.5.1. USB / PCI 设备
主机物理机器的 USB 和 PCI 设备可以使用
hostdev
元素传递给客户机虚拟机,方法是使用管理工具修改主机物理机器,配置域 XML 文件的以下部分:
图 23.38. 设备 - 主机物理机器设备分配
... <devices> <hostdev mode='subsystem' type='usb'> <source startupPolicy='optional'> <vendor id='0x1234'/> <product id='0xbeef'/> </source> <boot order='2'/> </hostdev> </devices> ...
另外,也可以执行以下操作:
图 23.39. 设备 - 主机物理机器设备分配替代
... <devices> <hostdev mode='subsystem' type='pci' managed='yes'> <source> <address bus='0x06' slot='0x02' function='0x0'/> </source> <boot order='1'/> <rom bar='on' file='/etc/fake/boot.bin'/> </hostdev> </devices> ...
另外,也可以执行以下操作:
图 23.40. 设备 - 主机物理计算机 scsi 设备分配
... <devices> <hostdev mode='subsystem' type='scsi'> <source> <adapter name='scsi_host0'/> <address type='scsi' bus='0' target='0' unit='0'/> </source> <readonly/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </hostdev> </devices> ..
域 XML 的这一部分的组件如下:
参数 | 描述 |
---|---|
hostdev |
这是描述主机物理设备的主要元素。它接受以下选项:
|
source | 描述在主机物理计算机中看到的设备。USB 设备可以使用供应商和产品 ID,或使用 address 元素处理设备在主机物理机器上 的地址 。 另一方面上的 PCI 设备仅可以通过其地址进行描述。请注意,USB 设备的源元素可以包含 startupPolicy 属性,该属性可用于定义当未找到指定主机物理机器 USB 设备时要做什么的规则。该属性接受以下值:
|
vendor, 产品 | 这些元素各自有一个 id 属性,用于指定 USB 厂商和产品 ID。可以用十进制、十六进制数(以 0x 开始)或八进制(以 0 开始)指定 ID。 |
boot | 指定该设备是可引导的。属性的顺序决定了在引导序列期间尝试设备的顺序。per-device 引导元素无法与 BIOS 引导装载程序中的一般引导元素一起使用。 |
rom | 用于更改 PCI 设备的 ROM 如何出现在客户机虚拟机中。可选 bar 属性可以设置为 on 或 关闭 ,并确定该设备的 ROM 是否可以在客户机虚拟机的内存映射中看到。(在 PCI 文档中,rom bar 设置会控制 ROM 的 Base Address Register。如果没有指定 rom bar ,则将使用默认设置。可选的 file 属性用于指向要作为设备的 ROM BIOS 向 guest 虚拟机呈现的二进制文件。这可用于为具有 SR-IOV 功能的虚拟功能(VF 没有引导 ROM)提供 PXE 引导 ROM。 |
address | 也具有 总线 和设备属性,用于指定设备出现在主机物理计算机上的 USB 总线和设备编号。 这些属性的值可以以十进制、十六进制(以 0x 开始)或八进制(以 0 开始)形式指定。对于 PCI 设备,该元素包含 3 个属性,以便通过 lspci 或 virsh nodedev-list 获取指定设备。 |