Usb
如何獲取 USB 設備的匯流排 ID
我想綁定/取消綁定我的 USB 設備 - 一個無線適配器。
echo -n "1-1:1.0" > /sys/bus/usb/drivers/ub/unbind
所以要做到這一點,我需要匯流排 ID。
lsusb
列印出以下內容:Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus 001 Device 004: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter
並且
lsusb -t
:/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc_otg/1p, 480M |__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/3p, 480M |__ Port 1: Dev 3, If 0, Class=vend., Driver=smsc95xx, 480M |__ Port 2: Dev 4, If 0, Class=vend., Driver=rt73usb, 480
那麼我在哪裡可以找到這個巴士 ID?謝謝!
更新: 這裡是有關無線設備的詳細資訊:(
lsusb -v | grep -E '\<(Bus|iProduct|bDeviceClass|bDeviceProtocol)' 2>/dev/null
)Bus 001 Device 004: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter bDeviceClass 0 (Defined at Interface level) bDeviceProtocol 0 iProduct 2
您可以從您獲得的設備樹中讀取序列
lsusb -t
。連字元前面的數字是匯流排,連字元後面的數字是埠順序。您的設備在匯流排01
上,在此匯流排的根集線器的埠1
上是另一個集線器,在3
此集線器的埠上是您的設備:所以你得到1-1.3
.如果您知道供應商 ID
lsusb
(例如148f
Ralink),您也可以grep
使用grep 148f /sys/bus/usb/devices/*/idVendor
你會得到類似的東西
/sys/bus/usb/devices/1-1.3/idVendor:148f
作為答案。如果有來自同一供應商的多個設備,您可以使用 縮小範圍
idProduct
。
最後我找到了 USB 設備的正確匯流排 ID。有一個文件列出了所有的 ID -
/sys/bus/usb/devices/
內容如下:root@raspberrypi:/home/pi# ls /sys/bus/usb/devices 1-0:1.0 1-1 1-1.1 1-1:1.0 1-1.1:1.0 1-1.3 1-1.3:1.0 usb1
和相應的lsusb:
root@raspberrypi:/home/pi# lsusb -t /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc_otg/1p, 480M |__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/3p, 480M |__ Port 1: Dev 3, If 0, Class=vend., Driver=smsc95xx, 480M |__ Port 3: Dev 17, If 0, Class=vend., Driver=rt73usb, 480M root@raspberrypi:/home/pi# lsusb Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus 001 Device 017: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter
所以我嘗試了 1-1.3 作為 ID 並且它有效。但是1-3沒有。
root@raspberrypi:/home/pi# echo -n "1-3" > /sys/bus/usb/drivers/usb/unbind bash: echo: write error: No such device