System
systool
View system device information from sysfs.
Additional Notes
systool displays device information from the sysfs filesystem (/sys/). It shows the hierarchical structure of devices, buses, classes, and drivers on the system. It is part of the sysfsutils package and provides a structured view of the kernel's device model.
The output organizes devices by bus type (PCI, USB, SCSI, etc.), class (net, input, sound, etc.), and driver. This makes systool useful for understanding hardware topology, finding device dependencies, and troubleshooting driver issues without navigating /sys/ manually.
Syntax
systool [options] [object...]
Parameters
object: A device, bus, class, or driver name to inspect.
Common Options
-a,--show-attributes: Show device attributes (e.g., vendor ID, device ID, speed).-b bus,--bus bus: Show information for devices on a specific bus (pci, usb, scsi).-c class,--class class: Show information for a specific device class (net, input, sound, block).-d driver,--driver driver: Show information for a specific driver.-m,--show-module: Show the kernel module associated with a driver.-p,--devpath: Show the device path in the sysfs filesystem.-t,--show-topology: Show device topology and relationships.-v,--verbose: Show detailed information (attributes, paths, etc.).-h,--help: Show usage information.
Examples
systool
List all buses, classes, and drivers known to sysfs.
systool -b pci
Show all PCI devices and their attributes.
systool -c net
Show all network devices and their attributes.
systool -c net -v
Show detailed information about network devices, including attributes.
systool -b usb -v
Show detailed information about USB devices, including speed and manufacturer.
systool -c block -a
Show all block devices with their attributes (size, model, queue parameters).
Practical Notes
systoolreads from/sys/which is a virtual filesystem provided by the kernel.- The
lspci,lsusb, andlsscsicommands are often more convenient for specific bus types. - Device attributes include vendor IDs, product IDs, driver bindings, power state, and more.
- For scripting, parsing
/sys/directly may be more flexible than usingsystool. - The
sysfsutilspackage may not be installed by default on all distributions.