Being able to find out what hardware is in a random machine is one of those things you don't think about very much until you inherit responsibility for a bunch of machines that you didn't build yourself.
The best hardware inventory program I've used is SGI's
hinv
(although it doesn't have enough disk information). Linux has decent hardware inventory support, but not bundled into a single command; you have to look through a bunch of
/proc
files and know a few commands like
lspci
. Unfortunately, Solaris is less friendly.
The old-fashioned way to get hardware information is to look at the kernel's boot messages; on Solaris this is in syslog or via
dmesg
. However, these logs get aged away if the system has been up for a while. (I've been known to arrange for kernel syslog messages to never expire, but I haven't set that up on my Solaris systems yet.)
The best program seems to be
prtdiag
, which gives CPU, memory, and some hardware slot information (and works for non-root users, always a bonus). There's also
prtconf
and a number of others, but they don't seem to give much additional useful information about hardware.
The names of stuff in
/devices
has a some information, but I suspect a good familiarity with Solaris device driver names is needed for best results. (Solaris
/proc
is for processes only, so there is nothing like Linux's collection of informative files.)
(People seem to use Magnicomp's
sysinfo
a fair bit, but it's commercial software (with a 30 day free trial), and binary packages on systems without real package managers make me twitchy. And its installer has glitches that don't inspire confidence.)