Quickly list and inspect USB devices from the shell to diagnose connections and drivers. 08.04.2026 | reading time: 2 min The `lsusb` command lists USB buses and devices from the shell, showing bus and device numbers and vendor:product IDs so he can quickly map hardware to drivers and troubleshoot connection problems. Real case: identify a flash drive Suppose he plugs in a USB flash drive and wants its vendor and product IDs; run the command and inspect the descriptors as follows \n```bash\n$ lsusb\nBus 002 Device 004: ID 1234:abcd USB Flash Drive\nBus 001 Device 003: ID 1d6b:0002 Linux Foundation 2.0 root hub\n\n$ sudo lsusb -v -d 1234:abcd | head -n 12\n idVendor 0x1234\n idProduct 0xabcd\n iManufacturer 1 Manufacturer\n iProduct 2 USB Flash Drive\n```\nThis reveals the device identifiers and, with `-v`, the detailed descriptors needed for driver or udev troubleshooting. Deeper options to try Try `-v` for verbose descriptors (root may be required), `-t` to view the USB topology tree, `-d vendor:product` to filter by IDs, `-s bus:dev` to focus on a single port, and `-D /dev/bus/usb/BBB/DDD` to read raw device descriptors. Complementary commands to consult While `lsusb` shows a userspace view of connected devices, consult `dmesg` for kernel plug messages, use `udevadm` to query udev properties and monitor events, and run `usb-devices` for a concise distribution-provided summary of device descriptors. Next steps Mastering `lsusb` is a practical step toward reliable hardware troubleshooting; keep practicing with real devices and consider formalizing skills with certifications like CompTIA Linux+ or LPIC-1, and intensive exam preparation at bitsandbytes.academy. Join Bits & Bytes Academy First class LINUX exam preparation. utilities troubleshooting setup