GNU/Linux >> Linux Esercitazione >  >> Linux

Comando Linux lsusb - Stampa informazioni su USB sul sistema

Universal Serial Bus o USB è stato progettato per standardizzare la connessione di periferiche per computer come tastiere, dispositivi di puntamento, stampanti, fotocamere digitali, lettori multimediali portatili, unità disco e adattatori di rete" - Fonte:Wikipedia

Da quando è diventato uno standard del settore, ora è difficile vedere un computer senza una porta USB. L'utilizzo di USB Flashdisk lo rende più popolare. Su Linux, abbiamo lsusb per elencare i dispositivi USB e le sue proprietà.

Cos'è lsusb

Dalla sua pagina man, lsusb è definito come:

Un'utilità per visualizzare informazioni sui bus USB nel sistema e sui dispositivi ad essi collegati.

Come eseguire lsusb

Per eseguire lsusb, puoi digitare lsusb direttamente dalla console.

$ lsusb

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 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 005 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 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 003: ID 17ef:4811 Lenovo Integrated Webcam [R5U877]
Bus 008 Device 002: ID 0a5c:217f Broadcom Corp. Bluetooth Controller

lsusb ti mostrerà i driver e il dispositivo che è collegato internamente al tuo sistema.

Ecco come leggere l'output. Prendo l'ultima riga dall'output sopra:

Bus 008 Dispositivo 002:ID 0a5c:217f Controller Bluetooth Broadcom Corp.

  • Autobus 008 : indica dove è collegato il dispositivo
  • Dispositivo 002 : significa che questo è il secondo dispositivo che si collega
  • ID : indica il numero ID di questo dispositivo
  • Controller Bluetooth Broadcom Corp. : indica il nome del produttore e il nome del dispositivo

Vediamo anche che abbiamo anche driver hub USB 2.0 root e driver hub USB 1.1 collegati al nostro sistema.

Questo viene mostrato anche usando il comando dmesg. Eccone un esempio.

$ dmesg |grep -i usb

[ 0.353138] usbcore: registered new interface driver usbfs
[ 0.353150] usbcore: registered new interface driver hub
[ 0.353182] usbcore: registered new device driver usb
[ 0.730026] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 0.730116] ehci_hcd 0000:00:1a.7: new USB bus registered, assigned bus number 1
[ 0.748019] ehci_hcd 0000:00:1a.7: USB 2.0 started, EHCI 1.00
[ 0.748169] hub 1-0:1.0: USB hub found
[ 0.748336] ehci_hcd 0000:00:1d.7: new USB bus registered, assigned bus number 2
[ 0.768019] ehci_hcd 0000:00:1d.7: USB 2.0 started, EHCI 1.00
[ 0.768147] hub 2-0:1.0: USB hub found
[ 0.768236] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 0.768251] uhci_hcd: USB Universal Host Controller Interface driver

Come elencare i dettagli USB

Usa -v parametro per farlo. Eccone un esempio.

$ lsusb -v

Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 5
bNumEndpoints 2
bInterfaceClass 224 Wireless
bInterfaceSubClass 1 Radio Frequency
bInterfaceProtocol 1 Bluetooth
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 1

Trova quanti dispositivi USB sono collegati

Per trovarlo usa questo comando

$ find /dev/bus

Quindi avrai un output come questo:

/dev/bus
/dev/bus/usb
/dev/bus/usb/008
/dev/bus/usb/008/002
/dev/bus/usb/008/001
/dev/bus/usb/007
/dev/bus/usb/007/001
/dev/bus/usb/006
/dev/bus/usb/006/001
/dev/bus/usb/005
/dev/bus/usb/005/001
/dev/bus/usb/004
/dev/bus/usb/004/001
/dev/bus/usb/003
/dev/bus/usb/003/001
/dev/bus/usb/002
/dev/bus/usb/002/004
/dev/bus/usb/002/003
/dev/bus/usb/002/001
/dev/bus/usb/001
/dev/bus/usb/001/001

Usando il comando lsusb combinalo con -D parametro, è possibile stampare il dettaglio del dispositivo specifico. Ecco un esempio per visualizzare il dispositivo Bluetooth Broadcom.

$ lsusb -D /dev/bus/usb/008/002

Device: ID 0a5c:217f Broadcom Corp. Bluetooth Controller
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 224 Wireless
bDeviceSubClass 1 Radio Frequency
bDeviceProtocol 1 Bluetooth
bMaxPacketSize0 64
idVendor 0x0a5c Broadcom Corp.
idProduct 0x217f Bluetooth Controller
bcdDevice 3.60
iManufacturer 1
iProduct 2
iSerial 3
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2

Trova la tua memoria di massa

Dal momento che lsusb -v dacci un'informazione molto dettagliata, potresti perdere qualcosa da leggere. Possiamo concentrarci su informazioni specifiche usando il comando grep. Ecco alcuni esempi.

L'archiviazione di massa avrà un nome e un ID del fornitore. Possiamo usarlo come punto di partenza.

$ lsusb -v |grep -Ei '(idVendor|Mass\ Storage)'

idVendor 0x1005 Apacer Technology, Inc.
bInterfaceClass 8 Mass Storage

Puoi vedere che abbiamo una memoria di massa USB collegata al nostro sistema da Apacer Technology, Inc.

Scarica la gerarchia dei dispositivi USB fisici come un albero

Usa -t parametro per raggiungere questo scopo.

$ lsusb -t

/: Bus 08.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 07.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 06.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 05.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/6p, 480M
|__ Port 1: Dev 4, If 0, Class=stor., Driver=usb-storage, 480M
|__ Port 6: Dev 3, If 0, Class='bInterfaceClass 0x0e not yet handled', Driver=uvcvideo, 480M
|__ Port 6: Dev 3, If 1, Class='bInterfaceClass 0x0e not yet handled', Driver=uvcvideo, 480M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/6p, 480M

Il numero 12M e 480M indicano la velocità di trasferimento del tipo USB.

  • 12M significa 12Mbit/s che è un tipo USB 1.0/1.1
  • 480M significa 480Mbit/s che è un tipo USB 2.0

Se hai trovato 5.0G, significa che hai il tipo USB 3.0. Ha una velocità di trasferimento di 5,0 Gbit/s. Linux riconosce i dettagli dei dispositivi USB da '/var/lib/usbutils/usb.ids' . Puoi visitare Linux-USB.org per ottenere l'elenco più recente di ID USB o una guida pratica al bus seriale universale.

Questo è tutto sul comando lsusb su base giornaliera. È possibile utilizzare il comando lsusb per eseguire un'attività diagnostica sui dispositivi USB sul sistema. Come al solito, puoi esplorare più dettagli leggendo la pagina di manuale di lsusb. Basta digitare man lsusb per vedere la sua pagina di manuale.


Linux
  1. Comando di arresto di Linux (con esempi)

  2. Come usare type command (visualizzare le informazioni sul comando) in Linux

  3. Esempi di comandi di "spegnimento" in Linux

  4. Esempi di comandi awk in Linux

  5. Localctl Esempi di comandi in Linux

Comando Linux Uptime con esempi

Comando Hwinfo in Linux

Comandi importanti per visualizzare le informazioni sull'hardware e sul sistema in Linux

Ottieni informazioni su un comando con Type Command in Linux

Come ottenere informazioni sull'hardware su Linux utilizzando il comando dmidecode

Esempi di comandi lsusb in Linux