Scroll to navigation



lshw - list hardware


lshw [ -version ]

lshw [ -help ]

lshw [ -X ]

lshw [ [ -html ] [ -short ] [ -xml ] [ -json ] [ -businfo ] ] [ -dump filename ] [ -class class... ] [ -disable test... ] [ -enable test... ] [ -sanitize ] [ -numeric ] [ -quiet ] [ -notime ]


lshw is a small tool to extract detailed information on the hardware configuration of the machine. It can report exact memory configuration, firmware version, mainboard configuration, CPU version and speed, cache configuration, bus speed, etc. on DMI-capable x86 or IA-64 systems and on some PowerPC machines (PowerMac G4 is known to work).

It currently supports DMI (x86 and IA-64 only), OpenFirmware device tree (PowerPC only), PCI/AGP, CPUID (x86), IDE/ATA/ATAPI, PCMCIA (only tested on x86), SCSI and USB.

Displays the version of lshw and exits.
Displays the available command line options and quits.
Launch the X11 GUI (if available).
Outputs the device tree as an HTML page.
Outputs the device tree as an XML tree.
Outputs the device tree as a JSON object (JavaScript Object Notation).
Outputs the device tree showing hardware paths, very much like the output of HP-UX's ioscan.
Outputs the device list showing bus information, detailing SCSI, USB, IDE and PCI addresses.
Display output and dump collected information into a file (SQLite database).
Only show the given class of hardware. class can be found using lshw -short or lshw -businfo.
Alias for -class class.
Enables or disables a test. test can be dmi (for DMI/SMBIOS extensions), device-tree (for OpenFirmware device tree), spd (for memory Serial Presence Detect), memory (for memory-size guessing heuristics), cpuinfo (for kernel-reported CPU detection), cpuid (for CPU detection), pci (for PCI/AGP access), isapnp (for ISA PnP extensions), pcmcia (for PCMCIA/PCCARD), ide (for IDE/ATAPI), usb (for USB devices),scsi (for SCSI) or network (for network interfaces detection).
Don't display status.
Remove potentially sensitive information from output (IP addresses, serial numbers, etc.).
Also display numeric IDs (for PCI and USB devices).
Exclude volatile attributes (timestamps) from output.


lshw currently does not detect Firewire(IEEE1394) devices.

Not all architectures supported by GNU/Linux are fully supported (e.g. CPU detection).

"Virtual" SCSI interfaces used for SCSI emulation over IDE are not reported correctly yet.


lshw must be run as super user or it will only report partial information.


A list of all known PCI ID's (vendors, devices, classes and subclasses). If compiled with zlib support, lshw will look for pci.ids.gz first, then for pci.ids.
Used to access the configuration of installed PCI buses and devices.
Used to access the configuration of installed IDE buses and devices.
/proc/scsi/*, /dev/sg*
Used to access the configuration of installed SCSI devices.
Used on x86 platforms to access CPU-specific configuration.
Used on PowerPC platforms to access OpenFirmware configuration.
Used to access the configuration of installed USB buses and devices.
Used on 2.6 kernels to access hardware/driver configuration information.


Lists hardware in a compact format.
Lists all disks and storage controllers in the system.
Lists all network interfaces in HTML.
Don't use DMI to detect hardware.


/proc/*, linuxinfo(1), lspci(8), lsusb(8)


lshw is distributed under the GNU GENERAL PUBLIC LICENSE (GPL) version 2.


lshw is maintained by Lyonel Vincent <>.


The webpage for lshw is at

15 October 2020 $Rev$