我的笔记本电脑的 LCD 面板电缆出现故障。该电缆连接到 LCD 面板和带麦克风的网络摄像头。LCD 面板工作正常,但网络摄像头和麦克风出现故障。我不打算去维修,所以我希望获得基于软件的解决方案。实际上,我不使用这个网络摄像头,并且有蓝牙手机可以更换麦克风。
目前我知道网络摄像头位于/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.5
。
我想将此端口列入黑名单。
如果这很重要,lsusb
目前关于该设备的说法如下:
Bus 002 Device 053: ID 04f2:b330 Chicony Electronics Co., Ltd Asus 720p CMOS webcam
和设备 053有一个增量。
它会向系统日志中发送大量类似以下的消息
- usb 2-1.5:使用 ehci-pci 的新高速 USB 设备号 29
- usb 2-1.5:设备描述符读取/64,错误 -71
- usb 2-1.5:USB断开连接,设备编号23。
如果没有将uvcvideo
驱动程序列入黑名单,它将淹没uvcdynctrl-udev.log
文件:
$ ls -alh /var/log/uvcdynctrl-udev.log
-rw-r--r-- 1 root root 8,1G Apr 17 18:20 /var/log/uvcdynctrl-udev.log
因此,我已经通过将 放入来将uvcvideo
内核驱动程序列入黑名单。但这种单一措施并没有帮助。blacklist uvcvideo
/etc/modprobe.d/blacklist-uvc.conf
我该如何将连接的网络摄像头的故障内部 USB 端口完全列入黑名单?
答案1
是的,只需在终端中输入几个命令即可完成:
- 禁用 USB 端口:
echo disabled | sudo tee /sys/bus/usb/devices/usb2/power/wakeup
- 切断端口的电源:
echo suspend | sudo tee /sys/bus/usb/devices/usb2/power/level
如果此方法不起作用,则udev
可能需要制定一条规则:
- 使用您选择的文本编辑器创建一个新文件
/lib/udev/rules.d
。例如:sudo vi /lib/udev/rules.d/20-block-webcam.rules
- 撤销对网络摄像头的访问授权:
看起来像输出# Chicony Webcam SUBSYSTEM=="usb", ATTRS{idVendor}=="04f2", ATTRS{idProduct}=="b330", ATTR{authorized}="0"
lsusb
做过事情
答案2
我两次来这里遇到指纹识别器相同的问题,但其他选项不起作用,因为这suspend
不是答案。
我最终启动 powertop
并使用它们的tunables
功能来观察它们是如何消除设备耗电的。
就我的情况来说,罪犯是Bus 001 Device 004: ID 27c6:5395 Shenzhen Goodix Technology Co.,Ltd. Fingerprint Reader
因此使用从中获取的这个命令powertop
是可行的
echo "auto" | sudo tee /sys/bus/usb/devices/1-7/power/control