16.3.2. 在 USB 设备重定向中设置限制


要从重定向过滤出某些设备,请将 filter 属性传递给 -device usb-redir。filter 属性使用一个由过滤规则组成的字符串,规则的格式是:
<class>:<vendor>:<product>:<version>:<allow>
使用 -1 值指定它接受特定字段的任何值。您可以使用 | 作为分隔符,在同一命令行中使用多个规则。请注意,如果设备不匹配通过规则,则不允许重定向该设备!

例 16.1. 使用客户机虚拟机限制重定向的示例

  1. 准备客户机虚拟机。
  2. 在客户机虚拟机的域 XML 文件中添加以下代码摘录:
        <redirdev bus='usb' type='spicevmc'>
          <alias name='redir0'/>
          <address type='usb' bus='0' port='3'/>
        </redirdev>
        <redirfilter>
          <usbdev class='0x08' vendor='0x1234' product='0xBEEF' version='2.0' allow='yes'/>
          <usbdev class='-1' vendor='-1' product='-1' version='-1' allow='no'/>
        </redirfilter>
    
  3. 启动客户机虚拟机并通过运行以下命令确认设置更改:
    #ps -ef | grep $guest_name
    -device usb-redir,chardev=charredir0,id=redir0,/
    filter=0x08:0x1234:0xBEEF:0x0200:1|-1:-1:-1:-1:0,bus=usb.0,port=3
  4. 将 USB 设备插入到主机物理计算机中,并使用 virt-manager 连接到客户机虚拟机。
  5. 在菜单中点击 USB 设备选择,这将生成以下信息:"主机策略会阻止某些 USB 设备"。单击确定以确认 并继续。
    过滤器生效。
  6. 为确保过滤器捕获正确检查 USB 设备供应商和产品,然后在主机物理计算机的域 XML 中进行以下更改以允许 USB 重定向。
       <redirfilter>
          <usbdev class='0x08' vendor='0x0951' product='0x1625' version='2.0' allow='yes'/>
          <usbdev allow='no'/>
        </redirfilter>
    
  7. 重新启动 guest 虚拟机,然后使用 virt-viewer 连接到客户机虚拟机。USB 设备现在会将流量重定向到客户机虚拟机。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.