Devices · Lesson 6 of 7
lsusb, lspci, lsscsi
0%
0 / 4 checkpoints answered
Linux offers bus- and subsystem-specific inventory tools. Each command shows a different view, so combine their identifiers, topology, drivers, sysfs paths, and logs instead of expecting one complete hardware list.
Inspecting USB Devices
lsusb lists USB devices visible through the USB subsystem:
$ lsusb
Output normally includes bus and device numbers, a vendor and product ID pair, and a description from the local USB ID database. The numeric bus/device address can change after reconnecting or rebooting and should not be treated as a persistent identity.
Display controller, hub, port, interface, driver, and speed relationships with:
$ lsusb -t
Verbose descriptor output is available, but some details require elevated read access. Do not grant broad USB-device permissions merely to make an inspection command quieter.
CheckWhich command displays USB devices as a topology tree?
press 1/2/3 to answer · → next lesson
Inspecting PCI Functions
lspci lists functions discovered on PCI and PCI Express buses:
$ lspci
Internal and externally attached PCIe devices can include graphics, network, storage, USB, audio, and bridge controllers. Show the kernel driver in use and candidate modules with:
$ lspci -k
A PCI controller appearing in this list does not prove that every device behind it is initialized or healthy. Check the driver binding and kernel logs when troubleshooting.
CheckWhich command adds kernel-driver information to a PCI listing?
press 1/2/3 to answer · → next lesson
Inspecting SCSI-Layer Devices
lsscsi lists devices represented through the Linux SCSI mid-layer:
$ lsscsi
This can include native SCSI devices and SATA, USB-storage, or virtual disks presented through SCSI-compatible layers. NVMe namespaces normally belong to a different subsystem and are not comprehensively inventoried by lsscsi.
For a storage-oriented hierarchy that includes many block-device types, use lsblk as well:
$ lsblk -o NAME,TYPE,SIZE,MODEL,SERIAL,TRAN,FSTYPE,MOUNTPOINTS
CheckWhat does lsscsi primarily list?
press 1/2/3 to answer · → next lesson
Interpreting Inventory Results
Descriptions often come from local ID databases and can be generic or stale. A listed device can lack a working driver, and a virtualized environment can present emulated or paravirtual hardware. Correlate results with udevadm info, sysfs, lsblk, network tools, and journalctl -k or dmesg according to permissions and the problem being investigated.
The utilities may be packaged separately, commonly through packages such as usbutils, pciutils, and lsscsi. Use the distribution package manager rather than downloading unknown replacements when a command is absent.
CheckDoes seeing a device in lspci prove its driver is active and functioning correctly?
press 1/2/3 to answer · → next lesson
Use Explore Hardware Devices in Linux to compare these subsystem views on one controlled host.
Summary
You can now select an inventory command for the device subsystem in question.
- Use
lsusbandlsusb -tfor USB identity and topology. - Use
lspci -kfor PCI functions and driver binding. - Use
lsscsifor SCSI-layer devices andlsblkfor block topology. - Correlate enumeration with drivers, sysfs, and kernel messages.
Practice
In the practice terminal, run these three inventory commands: lsusb lspci lsblk Each should print the devices its subsystem sees; a minimal sandbox may show empty lists.
Run all three: lsusb, then lspci, then lsblk.
Lesson complete
You finished lsusb, lspci, lsscsi. Nice work — keep the momentum going.