[GTALUG] hardware inventory -- what's in my machine?

D. Hugh Redelmeier hugh at mimosa.com
Sun Aug 16 20:20:03 UTC 2015


Sometimes I don't remember what's in each of my machines.

Here's what I use to figure this out:

- taking the machine apart (often inconvenient)

- dmesg(8) shows the kernel log.  If nothing has flooded the log it
  will still have the messages from the booting.  You can see entries
  from the kernel's discovery of most resources.  Downside: it is long
  and arcane.  Upside: you might find some surprises (eg. warnings).

- dmidecode(8) "DMI table decoder".  The output is a little arcane but 
  useful.  The man page says that it can be unreliable.

- (new to me) lshw(1) "list hardware".  The output seems easier to read 
  that dmidecode's.  It uses a variety of sources.  It can output in a
  bunch of formats (but I've ignored that).

- /proc/cpuinfo will tell you about the CPU.  Apparently lscpu(1)
  shows pretty much the same thing (I've never noticed it before).

- /proc/meminfo will tell you how much RAM you have (MemTotal is
  roughly the physical RAM, after some overhead has been removed).

- /var/log/Xorg.0.log: shows what devices and capabilities X has
  found.  Hard to read but sometimes it's what you need.

- lsusb(8): list USB devices (including hubs).

- lspci(8): list PCI devices and buses

- sdparm(8)/hdparm(8): show (or set!) parameters of disk drive.
  hdparm seems to be mostly obsolete.  This will tell you stuff:
	sudo sdparm -i /dev/sda

- smartctl(8) "SMART Monitoring Tools".  SMART == Self-Monitoring,
  Analysis and Reporting Technology.  This is about disk drive issues.
  This command will pour out a lot of information:
	sudo smartctl -x /dev/sda


More information about the talk mailing list