How to Use the lsusb Command to View USB Devices in Linux

The Mystery of the Unrecognized Device

If you plug a brand new USB webcam into a Windows computer, a pop-up instantly appears in the bottom right corner announcing, “Setting up new device,” and within seconds, the hardware is ready to use. Windows actively monitors the physical USB ports and automatically searches its vast database for the required drivers.

Linux, particularly when running on a headless server without a graphical desktop, does not provide these friendly pop-up notifications. If you plug a USB security key, an external hard drive, or a specialized piece of industrial testing equipment into a Linux server, the terminal remains completely silent. If the software you are trying to run cannot find the device, you have no immediate way of knowing if the hardware is physically broken, if the USB port is dead, or if Linux simply lacks the necessary driver.

To bypass the software layer and physically interrogate the raw hardware controller to see exactly what is plugged into the machine, you must use the lsusb (List USB) command.

Step 1: The Basic Hardware Query

Because you are only querying the hardware for its identification tags, you do not need administrator privileges to run this command.

To see a complete list of every single device physically attached to the USB bus, simply type:

lsusb

The terminal will instantly output a list of devices. Even if Linux has absolutely no idea what the device is, and has no driver to operate it, the device will always show up on this list as long as it is receiving electrical power from the motherboard.

Step 2: Understanding the Output

The output of the lsusb command looks slightly cryptic at first glance, but it provides incredibly precise data. A typical line looks like this:

Bus 002 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver

  • Bus 002 Device 004: This tells you the exact physical internal routing pathway the motherboard is using to communicate with the device.
  • ID 046d:c52b: This is the most critical piece of information. This is the hexadecimal Vendor ID (046d) and Product ID (c52b). This code is hardcoded into the silicon of the device at the factory.
  • Logitech, Inc. Unifying Receiver: A human-readable translation of that hexadecimal code.

If you plug in a bizarre, unbranded piece of hardware you bought online, the human-readable text might be completely blank. However, the hexadecimal ID (e.g., 1a86:7523) will always be there. You can simply Google that exact hex code to instantly identify the mystery hardware and find the required Linux drivers.

Step 3: Getting Verbose Details

If you are a hardware developer trying to debug a custom piece of electronics, or if a specific USB device is drawing too much electrical power and causing the server to crash, the basic list is not enough.

You can force lsusb to dump the absolute maximum amount of diagnostic data by using the -v (verbose) flag.

sudo lsusb -v

(Note: You must use sudo with the verbose flag to give the command permission to query the deepest levels of the hardware).

The terminal will output hundreds of lines of complex engineering data for every single device. It will show you exactly how many milliamps of power (mA) the device is demanding from the motherboard, what specific USB protocol it is using (e.g., USB 2.0 vs USB 3.1), and exactly how many data endpoints it has opened.

Step 4: Isolating a Specific Device

Dumping verbose data for every single device on the server will flood your screen. To keep your terminal clean, you can force lsusb to only output the verbose data for one specific piece of hardware.

Using the hexadecimal ID you found in Step 2 (e.g., 046d:c52b), you use the -d (device) flag.

sudo lsusb -v -d 046d:c52b

This command ignores all the keyboards, mice, and internal hubs, and outputs the massive block of diagnostic engineering data only for that specific Logitech receiver, allowing you to instantly diagnose power failures or driver misconfigurations.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.