Come elencare i dispositivi USB con il comando lsusb su Linux

15 feb 2023 4 min di lettura
Come elencare i dispositivi USB con il comando lsusb su Linux
Indice dei contenuti

Introduzione

Il comando "lsusb" in Linux è uno strumento a riga di comando che consente di elencare e enumerare tutti i dispositivi USB, compresi gli hub USB, presenti all'interno del sistema su cui viene eseguito. Questo comando può essere utilizzato su desktop, server e altri hardware comuni che utilizzano Linux, come i Raspberry Pi, e visualizza informazioni come velocità, BUS, classe, tipo di dettagli e così via.

Il comando "lsusb" è incluso di default nei moderni sistemi operativi Linux. Per utilizzare questo comando, è possibile digitare "lsusb" sulla riga di comando del terminale. Inoltre, esistono alcune opzioni che possono essere utilizzate con il comando "lsusb" per filtrare o personalizzare l'output.

Ad esempio, l'opzione "-v" può essere utilizzata per visualizzare informazioni dettagliate sui dispositivi USB, mentre l'opzione "-t" visualizza un albero di dispositivi USB e hub. Per ulteriori informazioni sull'utilizzo del comando "lsusb" in Linux, è possibile fare riferimento alle risorse elencate sopra.

Il comando lsusb è un'utilità in Linux che consente agli utenti di elencare i dispositivi USB (Universal Serial Bus) collegati al sistema. Questa utilità fa parte del pacchetto "usbutils" , che fornisce utilità per visualizzare informazioni sui bus USB nel sistema e sui dispositivi ad essi collegati.

Sintassi

La sintassi di base del comando lsusb è:

lsusb [options]

Opzioni

Alcune opzioni comuni utilizzate con il comando lsusb sono:

  • -v: Visualizza informazioni dettagliate sui dispositivi USB.
  • -t: Visualizza una vista ad albero dei dispositivi USB.
  • -s: Visualizza le informazioni su un dispositivo USB specifico, specificato dal bus e dal numero del dispositivo.
  • -d: visualizza le informazioni su un dispositivo USB specifico, specificato dal fornitore e dall'ID prodotto.
  • -D: Seleziona quale dispositivo verrà esaminato.

Esempi

Per elencare tutti i dispositivi USB collegati al sistema, utilizzare il comando lsusb senza alcuna opzione:

lsusb 
Bus 002 Device 004: ID 046d:0a37 Logitech, Inc. USB Headset H540
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 413c:301a Dell Computer Corp.
Bus 001 Device 003: ID c0f4:05e0
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Per visualizzare informazioni dettagliate sui dispositivi USB, utilizzare l'opzione -v:

lsusb -v 

Per visualizzare una vista ad albero dei dispositivi USB, utilizzare l'opzione -t:

lsusb -t 
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
        |__ Port 1: Dev 4, If 0, Class=Audio, Driver=snd-usb-audio, 12M
        |__ Port 1: Dev 4, If 1, Class=Audio, Driver=snd-usb-audio, 12M
        |__ Port 1: Dev 4, If 2, Class=Audio, Driver=snd-usb-audio, 12M
        |__ Port 1: Dev 4, If 3, Class=Human Interface Device, Driver=usbhid, 12M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 1: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
        |__ Port 1: Dev 3, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
        |__ Port 2: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M

Per visualizzare le informazioni su un dispositivo USB specifico, utilizzare l'opzione -s seguita dal bus e dal numero del dispositivo. Ad esempio, per visualizzare le informazioni sul dispositivo USB sul bus 2 e sul dispositivo 4, utilizzare il seguente comando:

lsusb -s 2:4 -v 
Bus 002 Device 004: ID 046d:0a37 Logitech, Inc. USB Headset H540
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x046d Logitech, Inc.
  idProduct          0x0a37 USB Headset H540
  bcdDevice            1.22
  iManufacturer           1
  iProduct                2
  iSerial                 3
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x011c

Per visualizzare informazioni su un dispositivo USB specifico, utilizzare l'opzione -d seguita dal fornitore e dall'ID prodotto. Ad esempio, per visualizzare informazioni su un dispositivo con ID fornitore 8087 e ID prodotto c52b, utilizzare il seguente comando:

lsusb -d 1d6b:0002 -v 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation
  idProduct          0x0002 2.0 root hub
  bcdDevice            5.15
  iManufacturer           3
  iProduct                2
  iSerial                 1

Utilizzare il comando lsusb con altre utilità

Il comando lsusb può essere utilizzato in combinazione con altre utilità per eseguire una varietà di attività.

Trova il fornitore e l'ID prodotto di un dispositivo USB

Per trovare il fornitore e l'ID prodotto di un dispositivo USB, utilizzare il comando lsusb con l'opzione -v e grep per i campi idVendor e idProduct:

lsusb -v | grep -E 'idVendor|idProduct'
  idVendor           0x046d Logitech, Inc.
  idProduct          0x0a37 USB Headset H540
  idVendor           0x8087 Intel Corp.
  idProduct          0x0024 Integrated Rate Matching Hub
  idVendor           0x8087 Intel Corp.
  idProduct          0x0024 Integrated Rate Matching Hub
  idVendor           0x1d6b Linux Foundation
  idProduct          0x0002 2.0 root hub

Trovare il nome del dispositivo di un dispositivo USB

Per trovare il nome del dispositivo di un dispositivo USB, utilizzare il comando lsusb con l'opzione -v e grep per il campo iProduct:

lsusb -v | grep iProduct

Produzione  Cuffie USB Logitech iProduct 2 H540  Controller host EHCI iProduct 2  Mouse ottico USB Dell MS116 iProduct 2  Tastiera USB iProduct 2

Trovare il driver di dispositivo di un dispositivo USB

Per trovare il driver di dispositivo di un dispositivo USB, utilizzare il comando lsusb con l'opzione -t e grep per il nome del dispositivo:

lsusb -t | grep Unifying
|__ Port 2: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M

In questo esempio, il driver del dispositivo USB è "usbhid" .

Trovare il nodo del dispositivo di un dispositivo USB

Per trovare il nodo del dispositivo di un dispositivo USB, utilizzare il comando lsusb con l'opzione -t e cercare il nome del dispositivo nella directory /dev:

lsusb -t

Ora esegui:

ls /dev/input/
by-id    event0  event10  event2  event4  event6  event8  mice
by-path  event1  event11  event3  event5  event7  event9  mouse0

In questo esempio, il nodo del dispositivo per il dispositivo USB è /dev/input/mouse0.

Conclusione

In questo articolo, hai imparato a conoscere l'utilità lsusb  della riga di comando e come usarla per elencare e visualizzare informazioni sui dispositivi USB collegati a un sistema Linux. Abbiamo anche visto come utilizzare il comando lsusb con altre utilità per eseguire varie attività relative ai dispositivi USB.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.