Qubes OS系统Qubes Devices无法识别笔记本摄像头求助
Qubes OS 摄像头无法被设备管理器识别解决方案
设备0408:1040 Quanta Computer, Inc. ov9734_techfront_camera已被内核正常识别(lsusb可查询到),仅在Qubes Devices中显示麦克风、不显示摄像头,是Qubes默认USB隔离策略对复合音视频设备的功能过滤导致,按以下步骤配置即可:
操作步骤
- 获取摄像头的USB设备标识
在dom0终端执行命令列出所有可分配的USB设备:
在输出结果中找到ID匹配qvm-usb list0408:1040的条目,记录其端口标识,格式为[USB管理Qube名]:[端口号],默认情况下USB管理Qube为sys-usb,例如标识为sys-usb:1-3。- 获取摄像头的USB设备标识
- 手动将摄像头绑定到目标使用Qube
执行命令将设备挂载到你需要使用摄像头的Qube(将示例中的work替换为你实际使用的Qube名,sys-usb:1-3替换为上一步记录的设备标识):
加qvm-usb attach work sys-usb:1-3 --persistent--persistent参数后重启Qube设备会自动挂载,不需要重复操作。- 手动将摄像头绑定到目标使用Qube
- 验证目标Qube内的设备权限
进入已挂载摄像头的Qube终端,执行命令查看视频设备:
ls /dev/video*- 如果输出存在
/dev/video0类设备,直接打开视频应用、浏览器视频会议页面即可正常调用 - 如果没有输出视频设备,执行命令将当前用户加入
video用户组,重启该Qube后生效:sudo usermod -aG video user
- 验证目标Qube内的设备权限
- 修复设备管理器只显示麦克风的异常
如果完成上述步骤后Qubes Devices依旧只识别到麦克风、不显示摄像头,在dom0添加自定义USB设备策略: - 创建对应设备的策略文件:
sudo nano /etc/qubes-rpc/policy/qubes.USB+0408:1040 - 写入以下规则(将
work替换为你实际使用摄像头的Qube名):sys-usb work allow,device=0408:1040 - 保存退出后重启qrexec策略服务加载规则:
sudo systemctl restart qubes-qrexec-policy.service
- 修复设备管理器只显示麦克风的异常
注意事项
- 不要将摄像头设备挂载到模板机(TemplateVM),必须挂载到日常使用的应用Qube(AppVM),否则重启后配置会被模板重置
- 不要直接直通整个USB控制器给单个Qube,单独选中摄像头对应的单个USB设备挂载即可,避免同控制器下的指纹、蓝牙设备无法被其他Qube调用
- 该型号ov9734摄像头默认开启USB自动休眠,可能出现唤醒后无法识别的问题,可以在
sys-usb中添加开机自启命令关闭该设备的自动休眠:
注意将命令中的echo on > /sys/bus/usb/devices/1-3/power/control1-3替换为你实际的摄像头USB端口号。
内容的提问来源于stack exchange,提问作者Алекс Шевцов
相关产品推荐
相关产品推荐

