linux lsusb 命令
lsusb 命令簡介
lsusb 是 Linux 系統(tǒng)中用于展示所有連接的 USB 設(shè)備信息的命令,其含義可以理解為“l(fā)ist USB”。該命令能夠展示 USB 總線及所連接設(shè)備的具體詳情。
主要功能
- 展示當(dāng)前系統(tǒng)中的 USB 設(shè)備列表
- 提供設(shè)備的廠商ID、產(chǎn)品ID等詳細(xì)參數(shù)
- 協(xié)助排查 USB 連接問題
- 驗(yàn)證設(shè)備是否被系統(tǒng)正確識別
基本語法格式
lsusb [參數(shù)]
常用參數(shù)說明
參數(shù) | 描述 |
---|---|
`-v` | 顯示詳細(xì)信息(verbose模式) |
`-t` | 以樹形結(jié)構(gòu)展示 USB 層級關(guān)系 |
`-s [[bus]:][devnum]` | 僅列出指定總線和設(shè)備編號的設(shè)備 |
`-d [vendor]:[product]` | 根據(jù)廠商ID和產(chǎn)品ID篩選設(shè)備 |
`-D 設(shè)備文件` | 查看特定設(shè)備文件的信息 |
`–help` | 顯示幫助內(nèi)容 |
`–version` | 顯示程序版本信息 |
基礎(chǔ)操作演示
1. 顯示全部 USB 設(shè)備(默認(rèn)方式)
示例
lsusb
輸出樣例:
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 004: ID 8087:0a2b Intel Corp. Bus 001 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
字段解釋:
- Bus XXX: USB 總線編號
- Device XXX: 該總線下的設(shè)備編號
- ID XXXX:XXXX: 廠商ID與產(chǎn)品ID組合
- 后續(xù)為設(shè)備名稱和制造商信息
2. 查看完整信息(使用 -v 參數(shù))
示例
lsusb -v
此命令將展示包括以下內(nèi)容在內(nèi)的完整設(shè)備信息:
進(jìn)階用法
1. 樹狀展示設(shè)備連接結(jié)構(gòu)
示例
lsusb -t
輸出示例:
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 480M |__ Port 3: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M |__ Port 4: Dev 4, If 0, Class=Wireless, Driver=btusb, 12M
2. 過濾特定設(shè)備
示例
# 只顯示總線1上的設(shè)備
lsusb -s 1:
# 顯示總線1上設(shè)備號為3的設(shè)備
lsusb -s 1:3
# 查找Logitech品牌設(shè)備(通過廠商ID)
lsusb -d 046d:
3. 查看具體設(shè)備文件信息
示例
lsusb -D /dev/bus/usb/001/003
實(shí)際應(yīng)用場景
1. 判斷設(shè)備是否被系統(tǒng)識別
當(dāng)插入設(shè)備但未正常工作時(shí),首先運(yùn)行 lsusb 檢查設(shè)備是否出現(xiàn)在列表中。
2. 獲取設(shè)備ID用于配置驅(qū)動(dòng)
很多驅(qū)動(dòng)安裝或調(diào)試需要知道廠商ID和產(chǎn)品ID,這些都可以從 lsusb 的輸出中獲取。
3. 分析USB連接故障
通過對比插拔前后的輸出結(jié)果,可判斷設(shè)備是否成功接入系統(tǒng)。
4. 開發(fā)USB相關(guān)應(yīng)用時(shí)獲取設(shè)備規(guī)格
使用 -v 參數(shù)可獲得完整的設(shè)備技術(shù)參數(shù),適用于開發(fā)人員分析。
常見疑問解答
Q1: 插入了USB設(shè)備,但沒在 lsusb 輸出中出現(xiàn),可能原因?
可能因素包括:
- 設(shè)備接觸不良
- USB端口或集線器損壞
- 供電不足
- 內(nèi)核模塊加載失敗
Q2: 如何從輸出中得知設(shè)備支持的速度?
在詳細(xì)輸出中查找 bcdUSB 字段:
- 2.00: USB 2.0
- 3.00: USB 3.0
- 3.10: USB 3.1
Q3: 如何保存 lsusb 的輸出?
示例
lsusb > usb_devices.txt
實(shí)操練習(xí)建議
- 插入一個(gè)U盤或外設(shè),觀察 lsusb 輸出的變化
- 使用 -d 參數(shù)過濾出某品牌的所有設(shè)備
- 對比普通輸出與 -v 模式下的差異
- 使用 -t 參數(shù)了解設(shè)備的連接拓?fù)浣Y(jié)構(gòu)
總結(jié)
lsusb 是一個(gè)簡潔而強(qiáng)大的工具,能幫助用戶快速掌握系統(tǒng)中 USB 設(shè)備的狀態(tài),包括設(shè)備識別、信息查詢、故障排查等方面。熟練掌握這個(gè)命令,有助于在 Linux 環(huán)境下更高效地管理和調(diào)試各類 USB 外設(shè)。