我的问题是,当我重新启动计算机时,Ubuntu 识别我的无线键盘和鼠标 USB 加密狗,但它无法识别我的 USB 无线网络适配器。以下是我的lsusb
结果:
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 002: ID 046d:c52e Logitech, Inc. MK260 Wireless Combo Receiver
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 003: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
无法识别的设备是:
"Bus 001 Device 003: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter"
只要我手动拔下它并重新插上,我就能在我的 USB 设备列表中看到它,而且它工作正常,但我每次重启电脑时都无法做到这一点。我正在寻找一种方法来解决这个问题,或者至少在我的 .bashrc 中放一些东西来拔下这个特定的设备并重新插上,这样它就可以工作了。或者也许重新启动那个 USB 端口来强制它再次检查。任何解决方案都是巨大的帮助。
我知道有很多与此类似的问题,但我问这个问题是因为它们对我都不起作用。
答案1
我有一个类似的 wifi usb 加密狗,遇到了同样的问题。我在网上搜索了一个可行的解决方案很长时间。但我找到了一个。后来,在我交换了 usb 插头后,它不再工作了。为了重现我的解决方案,我又花了几个小时寻找。就这样,我找到了这个问题。我的解决方案分步如下:
ls /sys/bus/usb/drivers/
例如列出:hub r8712u uas usb usbfs usb-storage
选择所需的 USB 设备的驱动程序r8712u
。ls /sys/bus/usb/drivers/r8712u
例如,列出:1-2.2:1.0 bind module new_id remove_id uevent unbind
第一个条目1-2.2:1.0
是 usb 设备的 id。只要 usb 设备连接到同一个 usb 端口,此 id 就应该有效。在登录或启动时断开并重新连接 USB 端口。就我而言,我需要延迟 3 秒。因此,例如调用:
sudo nano /etc/rc.local
之前exit 0
插入以下 3 行。替换1-2.2:1.0
并r8712u
适用。sleep 3 echo '1-2.2:1.0' > /sys/bus/usb/drivers/r8712u/unbind echo '1-2.2:1.0' > /sys/bus/usb/drivers/r8712u/bind
之后
/etc/rc.local
应该是这样的#!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. sleep 3 echo '1-2.2:1.0' > /sys/bus/usb/drivers/r8712u/unbind echo '1-2.2:1.0' > /sys/bus/usb/drivers/r8712u/bind exit 0
如果需要,可以使用以下脚本
sudo chmod ugo+x /etc/rc.local