我使用 USB 华为 ME906s-158 设备,如华为 ME906s-158 不适用于 Ubuntu 16.04中所述。如果模块失去连接,则重新连接到网络时似乎会出现问题。所以我的想法是编写一些脚本,在后台运行,检查 LTE 连接是否已建立,如果没有,则使用终端命令释放 USB 设备并重新连接。我在如何从终端启用/禁用移动宽带?中找到了有用的信息。并在此论坛主题上,但代码没有在我的 Ubuntu 16.04 上运行,这可能是问题所在。
\n以这一行为例:
\nmodprobe -r -f uhci_hcd\n
Run Code Online (Sandbox Code Playgroud)\n结果modprobe: FATAL: Module uhci_hcd is builtin.
出错。如果我使用用于我的设备的 xhci_hcd,情况也是如此。\n所以我的问题是如何更改 modprobe 命令来删除/连接我的设备?
使用dmesg
该设备连接为
usb 3-13.1: new high-speed USB device number 117 using xhci_hcd\nusb 3-13.1: New USB device found, idVendor=12d1, idProduct=15c1\nusb 3-13.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3\nusb 3-13.1: Product: HUAWEI Mobile\nusb 3-13.1: Manufacturer: Huawei Technologies Co., Ltd.\nusb 3-13.1: SerialNumber: 0123456789ABCDEF\ncdc_ether 3-13.1:2.0 usb0: register \'cdc_ether\' at usb-0000:00:14.0-13.1, CDC Ethernet Device, 02:1e:10:1f:00:00\n
Run Code Online (Sandbox Code Playgroud)\n其中设备编号不同,USB 端口取决于所使用的硬件端口。我想我根本不明白该设备是如何命名或安装的以通过 modprobe 进行寻址。
\n的相关信息lsusb
是Bus 003 Device 028: ID 12d1:15c1 Huawei Technologies Co., Ltd.
和lsusb -t
交付
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/15p, 480M\n |__ Port 12: Dev 11, If 0, Class=Hub, Driver=hub/4p, 480M\n |__ Port 3: Dev 14, If 1, Class=Human Interface Device, Driver=, 1.5M\n |__ Port 3: Dev 14, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M\n |__ Port 1: Dev 64, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M\n |__ Port 2: Dev 13, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M\n |__ Port 2: Dev 13, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M\n |__ Port 13: Dev 3, If 0, Class=Hub, Driver=hub/4p, 480M\n |__ Port 14: Dev 29, If 0, Class=Communications, Driver=cdc_ether, 480M\n |__ Port 14: Dev 29, If 1, Class=CDC Data, Driver=cdc_ether, 480M\n |__ Port 14: Dev 29, If 2, Class=Vendor Specific Class, Driver=option, 480M\n |__ Port 14: Dev 29, If 3, Class=Vendor Specific Class, Driver=option, 480M\n |__ Port 14: Dev 29, If 4, Class=Vendor Specific Class, Driver=option, 480M\n |__ Port 14: Dev 29, If 5, Class=Vendor Specific Class, Driver=option, 480M\n |__ Port 14: Dev 29, If 6, Class=Vendor Specific Class, Driver=option, 480M\n
Run Code Online (Sandbox Code Playgroud)\n非常感谢您的帮助。
\n这是完整的dmesg
输出:
[748010.825136] usb 3-13.1: new high-speed USB device number 79 using xhci_hcd\n[748010.926143] usb 3-13.1: New USB device found, idVendor=12d1, idProduct=15c1\n[748010.926146] usb 3-13.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3\n[748010.926147] usb 3-13.1: Product: HUAWEI Mobile\n[748010.926148] usb 3-13.1: Manufacturer: Huawei Technologies Co., Ltd.\n[748010.926149] usb 3-13.1: SerialNumber: 0123456789ABCDEF\n[748010.929581] cdc_ether 3-13.1:2.0 usb0: register \'cdc_ether\' at usb-0000:00:14.0-13.1, CDC Ethernet Device, 02:1e:10:1f:00:00\n[748010.930008] option 3-13.1:2.2: GSM modem (1-port) converter detected\n[748010.930178] usb 3-13.1: GSM modem (1-port) converter now attached to ttyUSB0\n[748010.930451] option 3-13.1:2.3: GSM modem (1-port) converter detected\n[748010.930588] usb 3-13.1: GSM modem (1-port) converter now attached to ttyUSB1\n[748010.930829] option 3-13.1:2.4: GSM modem (1-port) converter detected\n[748010.930929] usb 3-13.1: GSM modem (1-port) converter now attached to ttyUSB2\n[748010.931153] option 3-13.1:2.5: GSM modem (1-port) converter detected\n[748010.931254] usb 3-13.1: GSM modem (1-port) converter now attached to ttyUSB3\n[748010.931474] option 3-13.1:2.6: GSM modem (1-port) converter detected\n[748010.931580] usb 3-13.1: GSM modem (1-port) converter now attached to ttyUSB4\n[748010.959172] cdc_ether 3-13.1:2.0 enp0s20u13u1c2: renamed from usb0\n[748010.986087] IPv6: ADDRCONF(NETDEV_UP): enp0s20u13u1c2: link is not ready\n[748010.986238] cdc_ether 3-13.1:2.0 enp0s20u13u1c2: kevent 12 may have been dropped\n[748010.990538] IPv6: ADDRCONF(NETDEV_UP): enp0s20u13u1c2: link is not ready\n
Run Code Online (Sandbox Code Playgroud)\n完整输出为tree /sys/devices/pci0000:00/0000:00:14.0/usb3/3-13/ | grep driver
是:
\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../bus/usb/drivers/cdc_ether\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../bus/usb/drivers/cdc_ether\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../bus/usb/drivers/option\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../../bus/usb-serial/drivers/option1\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../bus/usb/drivers/option\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../../bus/usb-serial/drivers/option1\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../bus/usb/drivers/option\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../../bus/usb-serial/drivers/option1\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../bus/usb/drivers/option\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../../bus/usb-serial/drivers/option1\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../bus/usb/drivers/option\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../../bus/usb-serial/drivers/option1\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../bus/usb/drivers/usb\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../bus/usb/drivers/hub\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../bus/usb/drivers/usb\n
Run Code Online (Sandbox Code Playgroud)\n
据我所知modprobe
用于添加/删除模块/驱动程序。使用该命令,modprobe -r -f uhci_hcd
您尝试删除内核中内置的模块,请参阅 Unix & Linux 上的这篇文章。
如果您想停用 USB 设备然后重新激活它,请查看他的帖子:通过 CLI 断开并重新连接 USB 柱。
\n或者在这里尝试更简单的方法:有没有办法使用软件关闭 USB 设备的电源?。
\n可以在此 kernel.org 电源管理页面上找到一些有用的信息。在 USB 端口电源控制下以及端口电源控制用户界面下。
\n我运行的是 Lubuntu 16.04。我用于测试的 USB 设备是 8GB USB 记忆棒。
\n首先打开终端并输入dmesg -w
。\n接下来,插入 USB 设备。
[ 1897.772736] usb 2-2: new high-speed USB device number 7 using ehci-pci\n[ 1897.907178] usb 2-2: New USB device found, idVendor=13fe, idProduct=5500\n[ 1897.907185] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3\n[ 1897.907189] usb 2-2: Product: Silicon-Power8G\n[ 1897.907193] usb 2-2: Manufacturer: UFD 3.0\n[ 1897.907196] usb 2-2: SerialNumber: P1602059070C691668B63659\n[ 1897.907802] usb-storage 2-2:1.0: USB Mass Storage device detected\n[ 1897.909153] scsi host22: usb-storage 2-2:1.0\n[ 1898.910257] scsi 22:0:0:0: Direct-Access UFD 3.0 Silicon-Power8G PMAP PQ: 0 ANSI: 6\n[ 1898.910896] sd 22:0:0:0: Attached scsi generic sg4 type 0\n[ 1898.911521] sd 22:0:0:0: [sdd] 15126528 512-byte logical blocks: (7.74 GB/7.21 GiB)\n[ 1898.912261] sd 22:0:0:0: [sdd] Write Protect is off\n[ 1898.912266] sd 22:0:0:0: [sdd] Mode Sense: 45 00 00 00\n[ 1898.912982] sd 22:0:0:0: [sdd] Write cache: disabled, read cache: enabled, doesn\'t support DPO or FUA\n[ 1898.950371] sdd:\n[ 1898.953487] sd 22:0:0:0: [sdd] Attached SCSI removable disk\n[ 1899.243793] FAT-fs (sdd): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.\n
Run Code Online (Sandbox Code Playgroud)\n在这里我们可以看到一个新ehci-pci
设备usb 2-2
已被识别。几行usb 2-2
更改为usb-storage 2-2:1.0
to后scsi 22:0:0:0
,最后更改为sd 22:0:0:0
\n这些数字的确切含义超出了我的知识范围。它与 USB 端口有关,但这并不是全部。至少它是一个标识符。
不管怎样,现在我们去寻找/sys/
文件夹。我们会在里面的某个地方/sys/
找到负责 USB 设备的驱动程序。我们想要unbind
从该驱动程序访问我们的设备。因此我们需要找出驱动程序的路径及其unbind
命令。我们将使用tree
命令。
我们输入tree /sys/ | grep 22:0:0:0
alex@ga-P55A-UD5:~$ tree /sys/ | grep 22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 sdd -> ../devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0/host22/target22:0:0/22:0:0:0/block/sdd\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 22:0:0:0 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0/host22/target22:0:0/22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 22:0:0:0 -> ../../../../devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0/host22/target22:0:0/22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 sdd -> ../../devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0/host22/target22:0:0/22:0:0:0/block/sdd\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 22:0:0:0 -> ../../devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0/host22/target22:0:0/22:0:0:0/bsg/22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 22:0:0:0 -> ../../devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0/host22/target22:0:0/22:0:0:0/scsi_device/22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 22:0:0:0 -> ../../devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0/host22/target22:0:0/22:0:0:0/scsi_disk/22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 sg4 -> ../../devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0/host22/target22:0:0/22:0:0:0/scsi_generic/sg4\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 8:48 -> ../../devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0/host22/target22:0:0/22:0:0:0/block/sdd\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 21:4 -> ../../devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0/host22/target22:0:0/22:0:0:0/scsi_generic/sg4\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 249:4 -> ../../devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0/host22/target22:0:0/22:0:0:0/bsg/22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 device -> ../../../22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 device -> ../../../22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 device -> ../../../22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 device -> ../../../22:0:0:0\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 device -> ../../../22:0:0:0\n
Run Code Online (Sandbox Code Playgroud)\n第一行已经告诉我们要去哪里:
\n../devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0/host22/target22:0:0/22:0:0:0/block/sdd
请记住,我们仍在驱动程序文件夹中的某个位置搜索unbind
命令,该文件夹以某种方式附加到我们的设备。我们的设备dmesg
也称为2-2:1.0
,因此我们使用它作为父文件夹tree
:
tree /sys/devices/pci0000\\:00/0000\\:00\\:1d.7/usb2/2-2/2-2\\:1.0/ | grep driver\n
Run Code Online (Sandbox Code Playgroud)\nalex@ga-P55A-UD5:~$ tree /sys/devices/pci0000\\:00/0000\\:00\\:1d.7/usb2/2-2/2-2\\:1.0/ | grep driver\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../bus/usb/drivers/usb-storage\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 driver -> ../../../../../../../../../bus/scsi/drivers/sd\n
Run Code Online (Sandbox Code Playgroud)\n现在我们已经找到了连接到 USB 设备的驱动程序的路径。
\n让我们ls /sys/bus/usb/drivers/usb-storage/
alex@ga-P55A-UD5:~$ ls /sys/bus/usb/drivers/usb-storage/\n2-2:1.0 bind module new_id remove_id uevent unbind\n
Run Code Online (Sandbox Code Playgroud)\n现在我们已经拥有了所需的所有信息,因此我们输入以下内容:
\necho -n "2-2:1.0" | sudo tee /sys/bus/usb/drivers/usb-storage/unbind`\n
Run Code Online (Sandbox Code Playgroud)\n就在那之后,因为你想要重新连接效果:
\necho -n "2-2:1.0" | sudo tee /sys/bus/usb/drivers/usb-storage/bind\n
Run Code Online (Sandbox Code Playgroud)\n输出dmesg -w
:
[ 3516.792135] usb-storage 2-2:1.0: USB Mass Storage device detected\n[ 3516.792406] scsi host23: usb-storage 2-2:1.0\n[ 3517.792201] scsi 23:0:0:0: Direct-Access UFD 3.0 Silicon-Power8G PMAP PQ: 0 ANSI: 6\n[ 3517.792879] sd 23:0:0:0: Attached scsi generic sg4 type 0\n[ 3517.793592] sd 23:0:0:0: [sdd] 15126528 512-byte logical blocks: (7.74 GB/7.21 GiB)\n[ 3517.794340] sd 23:0:0:0: [sdd] Write Protect is off\n[ 3517.794346] sd 23:0:0:0: [sdd] Mode Sense: 45 00 00 00\n[ 3517.796083] sd 23:0:0:0: [sdd] Write cache: disabled, read cache: enabled, doesn\'t support DPO or FUA\n[ 3517.801135] sdd:\n[ 3517.803788] sd 23:0:0:0: [sdd] Attached SCSI removable disk\n[ 3518.096593] FAT-fs (sdd): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.\n
Run Code Online (Sandbox Code Playgroud)\n我希望这能帮助您找到解决方案。
\n如果您想了解有关该主题的更多信息:https://lwn.net/Articles/143397/
\n 归档时间: |
|
查看次数: |
16715 次 |
最近记录: |