Hardware info
- systool – view system device information by bus, class, and topology
- proc filesystem
- lshw – list hardware
- dmidecode – DMI table decoder
- lspci – list all PCI devices
- glxinfo – show information about the GLX implementation
- inxi – Command line system information script for console and IRC
- get-edid, parse-edid – read-edid tools to retrieve and interpret monitor specifications using the VESA VBE DDC protocol
Most of the commands only give limited to no output when run as unprivileged user.
systool – view system device information by bus, class, and topology
Calling systool without parameters will present all available bus types, device classes, and root devices.
# systool -b usb
# systool -c fc_host -v
# systool -c fc_remote_ports -v
Supported switches
Supported sysfs buses:
acpi
cec
clockevents
clocksource
container
cpu
dax
edac
eisa
event_source
gpio
hid
i2c
isa
machinecheck
mdio_bus
mei
memory
mipi-dsi
mmc
nd
node
nvmem
pci-epf
pci
pci_express
platform
pnp
rapidio
scsi
sdio
serial
serio
spi
usb
virtio
vme
wmi
workqueue
xen
xen-backend
Supported sysfs classes:
ata_device
ata_link
ata_port
backlight
bdi
block
bsg
dax
dca
devcoredump
devfreq-event
devfreq
dma
dmi
drm_dp_aux_dev
drm
enclosure
extcon
fc_host
fc_remote_ports
fc_transport
fc_vports
fc
firmware
gpio
graphics
hidraw
hwmon
i2c-adapter
i2c-dev
input
iommu
ipmi
leds
mdio_bus
mei
mem
misc
mmc_host
nd
net
nvme-fabrics
nvme-subsystem
nvme
pci_bus
pci_epc
phy
power_supply
powercap
ppp
pps
ptp
pwm
rapidio_port
regulator
remoteproc
rfkill
rtc
sas_device
sas_end_device
sas_expander
sas_host
sas_phy
sas_port
scsi_device
scsi_disk
scsi_generic
scsi_host
spi_master
spi_slave
thermal
tpmrm
tpm
tty
vc
vfio
virtio-ports
vtconsole
wakeup
watchdog
wmi_bus
Supported sysfs devices:
LNXSYSTM:00
breakpoint
cpu
cstate_core
cstate_pkg
isa
kprobe
msr
pci0000:00
pci0000:7f
pci0000:80
pci0000:ff
platform
pnp0
power
software
system
tracepoint
uncore_cbox_0
uncore_cbox_1
uncore_cbox_2
uncore_cbox_3
uncore_cbox_4
uncore_cbox_5
uncore_ha_0
uncore_imc_0
uncore_imc_1
uncore_imc_2
uncore_imc_3
uncore_imc_4
uncore_pcu
uncore_qpi_0
uncore_qpi_1
uncore_r2pcie
uncore_r3qpi_0
uncore_r3qpi_1
uncore_sbox_0
uncore_sbox_1
uncore_ubox
uprobe
virtual
Supported sysfs modules:
8250
acpi_cpufreq
acpi_pad
acpi_power_meter
acpiphp
acpi
aesni_intel
ahci
apparmor
ast
async_memcpy
async_pq
async_raid6_recov
async_tx
async_xor
ata_generic
ata_piix
auth_rpcgss
autofs4
battery
blk_cgroup
block
bpfilter
btrfs
button
ixgbe
jfs
joydev
kdb
kernel
keyboard
kgdb_nmi
kgdboc
kvm
kvm_intel
libahci
libata
libcrc32c
libnvdimm
linear
lockd
loop
lpc_ich
mac_hid
md_mod
mdio
megaraid_sas
mei
mei_me
minix
module
mousedev
msdos
multipath
mxm_wmi
myri10ge
netpoll
nfs_acl
nfsd
nls_iso8859_1
ntfs
nvme_core
nvme_fabrics
nvme_fc
page_alloc
pata_sis
pcc_cpufreq
pci_hotplug
pcie_aspm
pciehp
ppp_generic
printk
processor
pstore
qla2xxx
qnx4
raid0
raid1
raid10
raid456
raid6_pq
random
rapl
rcupdate
rcutree
rfkill
rng_core
rtc_cmos
sb_edac
sch_fq_codel
scsi_dh_alua
scsi_dh_emc
scsi_dh_rdac
scsi_mod
scsi_transport_fc
scsi_transport_sas
ses
sg
shpchp
slab_common
spl
spurious
sr_mod
srcutree
sunrpc
suspend
syscopyarea
sysfillrect
sysimgblt
sysrq
tcp_cubic
thermal
tpm_crb
tpm_tis
tpm_tis_core
tpm
ttm
ufs
uhci_hcd
usbcore
usbhid
uv_nmi
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
virtio_mmio
virtio_pci
virtual_root
vt
watchdog
wmi
workqueue
x86_pkg_temp_thermal
x_tables
xen
xen_acpi_processor
xen_blkfront
xen_netfront
xfrm_algo
xfs
xhci_hcd
xor
xz_dec
zavl
zcommon
zfs
zlua
znvpair
zstd_compress
zswap
zunicode
proc filesystem
https://en.wikipedia.org/wiki/Procfs
https://www.kernel.org/doc/html/latest/filesystems/proc.html
more /proc/cpuinfo
more /proc/meminfo
lshw – list hardware
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.
Info about specific stuff
lshw -short -class disk
lshw -short -class memory
lshw -short -C processor
lshw -C display
lshw -C multimedia
lshw -C network
lshw -C storage
lshw -C bus
lshw -C tape
$ lshw -short -class memory
H/W path Device Class Description
=========================================================
/0/0 memory 96KiB BIOS
/0/1000 memory 4GiB System Memory
/0/1000/0 memory 4GiB DIMM RAM
$ lshw -short -class storage
H/W path Device Class Description
=========================================================
/0/100/3/0 scsi0 storage MegaRAID SAS 2108 [Liberator]
/0/100/11/0 storage C602 chipset 4-Port SATA Storage Control Unit
/0/100/1f.2 storage C600/X79 series chipset 6-Port SATA AHCI Controller
/0/3/0 scsi1 storage Series 7 6G SAS/PCIe 3
$ sudo lshw -short -class bus
H/W path Device Class Description
=========================================================
/0 bus 0AECh
/0/100/1a bus 82801JI (ICH10 Family) USB UHCI Controller #4
/0/100/1a/1 usb3 bus UHCI Host Controller
/0/100/1a.1 bus 82801JI (ICH10 Family) USB UHCI Controller #5
/0/100/1a.1/1 usb4 bus UHCI Host Controller
/0/100/1a.2 bus 82801JI (ICH10 Family) USB UHCI Controller #6
/0/100/1a.2/1 usb5 bus UHCI Host Controller
/0/100/1a.7 bus 82801JI (ICH10 Family) USB2 EHCI Controller #2
/0/100/1a.7/1 usb1 bus EHCI Host Controller
/0/100/1d bus 82801JI (ICH10 Family) USB UHCI Controller #1
/0/100/1d/1 usb6 bus UHCI Host Controller
/0/100/1d.1 bus 82801JI (ICH10 Family) USB UHCI Controller #2
/0/100/1d.1/1 usb7 bus UHCI Host Controller
/0/100/1d.2 bus 82801JI (ICH10 Family) USB UHCI Controller #3
/0/100/1d.2/1 usb8 bus UHCI Host Controller
/0/100/1d.7 bus 82801JI (ICH10 Family) USB2 EHCI Controller #1
/0/100/1d.7/1 usb2 bus EHCI Host Controller
/0/100/1d.7/1/5 bus USB hub
/0/100/1e/9 bus FW322/323 [TrueFire] 1394a Controller
/0/3/0 bus FC949ES Fibre Channel Adapter
/0/3/0.1 bus FC949ES Fibre Channel Adapter
dmidecode – DMI table decoder
dmidecode is a tool for dumping a computer’s DMI (some say SMBIOS) table contents in a human-readable format. This table contains a description of the system’s hardware components, as well as other useful pieces of information such as serial numbers and BIOS revision.
-t, –type TYPE
Only display the entries of type TYPE. TYPE can be either a DMI type number, or a comma-separated list of type numbers, or a keyword from the following list: bios, system, baseboard, chassis, processor, memory, cache, connector, slot.
Info about specific stuff
dmidecode --type baseboard
dmidecode --type memory
lspci – list all PCI devices
lspci is a utility for displaying information about PCI buses in the system and devices connected to them.
glxinfo – show information about the GLX implementation
glxinfo | grep Device
inxi – Command line system information script for console and IRC
-F , –full | Show Full output for inxi. Includes all Upper Case line letters (except -J and -W) plus –swap, -s and -n. |
-A , –audio | Show Audio/sound device(s) information, including device driver. Show running sound server(s). |
-C , –cpu | Show full CPU output (if each item available): basic CPU topology, model, type, L2 cache, average speed of all cores (if > 1 core, otherwise speed of the core), min/max speeds for CPU, and per CPU clock speed. |
-D , –disk | Show Hard Disk info. Shows total disk space and used percentage. The disk used percentage includes space used by swap partition(s), since those are not usable for data storage. |
-G , –graphics | Show Graphic device(s) information, including details of device and display drivers (X: loaded:, and, if applicable: unloaded:, failed:, and active gpu: drivers), display protocol (if available), display server (and/or Wayland com‐ positor), vendor and version number. |
-J , –usb | Show USB data for attached Hubs and Devices. Hubs also show number of ports. Be aware that a port is not always external, some may be internal, and either used or unused (for example, a motherboard USB header connector that is not used). |
-M , –machine | Show machine data. Device, Motherboard, BIOS, and if present, System Builder (Like Lenovo). |
-N , –network | Show Network device(s) information, including device driver. |
-S , –system | Show System information: host name, kernel, desktop environment (if in X), distro. |
EXTRA DATA OPTIONS | These options can be triggered by one or more -x. Alternatively, the -v options trigger them in the following way: -v 3 adds -x; -v 6 adds -xx; -v 7 adds -xxx These extra data triggers can be useful for getting more in-depth data on various options. They can be added to any long form option list, e.g.: -bxx or -Sxxx |
-m , –memory | Memory (RAM) data. Does not display with -b or -F unless you use -m explicitly. |
-p , –partitions-full | Show full Partition information (-P plus all other detected mounted partitions). |
-r , –repos | Show distro repository data. |
-z, –filter | Adds security filters for IP addresses, serial numbers, MAC, location (-w), and user home directory name. Removes Host:. On by default for IRC clients. |
–recommends | Checks inxi application dependencies and recommends, as well as directories, then shows what package(s) you need to install to add support for each feature. |
inxi -Fxxxmprz
get-edid, parse-edid – read-edid tools to retrieve and interpret monitor specifications using the VESA VBE DDC protocol
From the package:
apt install read-edid
Obtain monitor brand and information
sudo get-edid | parse-edid