UNIX and UNIX-like platforms provide tools to get information about the operating system, hardware configuration and installed software from the command-line. These can be useful for casual investigation of a system, or for producing programs which can modify their behaviour depending on the platform.
While some of these commands are generic and are present on most systems, the tools capable of getting the most detailed information are often system specific. Detailed below are commands for obtaining details about a selection of UNIX and UNIX-like platforms.
For more details about the commands and the available options see the system manual pages (e.g. man uname).
On all UNIX and UNIX-like systems the uname command can be used to get some information about the operating system and platform. The simplest usage is to display all the information available. For example:
$ uname -a Darwin pyrus.local 7.9.0 Darwin Kernel Version 7.9.0: Wed Mar 30 20:11:17 PST 2005; root:xnu/xnu-517.12.7.obj~1/RELEASE_PPC Power Macintosh powerpc
$ uname -a OSF1 laurus.woods V5.1 2650 alpha
$ uname -a HP-UX ulmus B.11.11 U 9000/785 2011398448 unlimited-user license
$ uname -a CYGWIN_NT-5.1 salix 1.5.3(0.90/3/2) 2003-09-01 13:15 i686 unknown unknown Cygwin
$ uname -a SunOS hieracium 5.6 Generic_105181-03 sun4m sparc sun4m
$ uname -a SunOS opensolaris 5.11 snv_111b i86pc i386 i86pc Solaris
On most UNIX systems the system log contains information about hardware detection. This is usually logged to /var/log/messages. On some systems the dmesg command can be used to get this information, as a normal user.
To get information on virtual memory use the vmstat command.
$ vmstat procs memory page disk faults cpu r b w swap free re mf pi po fr de sr f0 s0 s3 -- in sy cs us sy id 0 0 0 268512 4968 2 27 50 50 60 0 4 0 0 10 0 41 562 36 78 3 19
On Apple MacOS X the version information obtained using uname is difficult to interpret since it describes Darwin, the underlying operating system layer, rather than MacOS X. For version details of MacOS X use sw_vers instead:
$ sw_vers ProductName: Mac OS X ProductVersion: 10.3.9 BuildVersion: 7W98
The GUI application “System Profiler” (in “Applications”, “Utilities”) provides information about the operating system version, hardware platform, installed applications and libraries, system logs, etc. There is also a command-line interface to this information (system_profiler):
$ system_profiler
Hardware:
Hardware Overview:
Machine Model: iBook
CPU Type: PowerPC 750 (33.11)
Number Of CPUs: 1
CPU Speed: 600 MHz
L2 Cache (per CPU): 256 KB
Memory: 640 MB
Bus Speed: 100 MHz
Boot ROM Version: 4.2.7f1
Serial Number: UV1432KFLPY
Sales Order Number: M8598B/A
...
HP Tru64 UNIX is commonly known as OSF/1 and older versions used the names Digital UNIX or Compaq Tru64. See Wikipedia for more details.
On HP Tru64 UNIX the uname command provides all the information required to figure out the operating system version but only if you can interpret the version numbers:
$ uname -a OSF1 laurus.woods V5.1 2650 alpha
Note: the Tru64 and TruCluster products use different version numbers for equivalent releases.
To get the version string displayed on start-up, which includes the official version number, use sizer -v instead:
$ sizer -v Compaq Tru64 UNIX V5.1B (Rev. 2650); Sun Mar 20 06:36:49 GMT 2005
The currently installed software packages can be listed with setld:
$ /usr/sbin/setld -i Subset Status Description ------ ------ ----------- OSFACCT540 installed System Accounting Utilities (System Administration) OSFADVFS540 installed AdvFS Commands (System Administration) OSFADVFSBIN540 installed AdvFS Kernel Modules (Kernel Build Environment) ... OSFXPRT540 installed Print X Server (Windows Applications) OSFXSYSMAN540 installed Graphical Base System Management Utilities(System Administration) OSFXVFB540 installed Virtual X Frame Buffer (Windows Applications)
The system type code name can be retrieved using sizer:
$ sizer -c cpu "EB164"
This a not a description of the processor, but instead describes the mainboard type. In this case the machine is a AlphaPC 164LX which is a sub-type of the EB164 class of machines.
The processor type(s) and number can be obtained using psrinfo:
$ psrinfo -v Status of processor 0 as of: 10/24/05 15:51:11 Processor has been on-line since 10/24/2005 15:47:29 The alpha EV5.6 (21164A) processor operates at 532 MHz, has a cache size of 2097152 bytes, and has an alpha internal floating point processor.
The get details of the installed hardware use hwmgr:
# /sbin/hwmgr view devices
HWID: Device Name Mfg Model Location
------------------------------------------------------------------------------
3: /dev/dmapi/dmapi
4: /dev/scp_scsi
5: /dev/kevm
44: /dev/disk/floppy0c 3.5in floppy fdi0-unit-0
51: /dev/disk/dsk0c SEAGATE ST318437LW bus-0-targ-0-lun-0
52: /dev/disk/cdrom0c LG CD-ROM CRD-8400B bus-2-targ-0-lun-0
53: /dev/random
54: /dev/urandom
# /sbin/hwmgr view hierarchy
HWID: hardware hierarchy
-------------------------------------------------------------------------------
1: platform Digital AlphaPC 164LX 533 MHz
2: cpu CPU0
6: bus pci0
7: connection pci0slot5
20: bus pci1
21: connection pci1slot1
25: graphics_controller comet0
23: connection pci1slot2
26: graphics_controller comet1
9: connection pci0slot6
27: scsi_adapter aha_chim0
28: scsi_bus scsi0
51: disk bus-0-targ-0-lun-0 dsk0
29: scsi_adapter aha_chim2
30: scsi_bus scsi1
12: connection pci0slot7
31: network tu0
14: connection pci0slot8
32: bus isa0
33: connection isa0slot0
34: keyboard keyboard0
35: pointer mouse0
36: connection isa0slot2
37: serial_port tty00
38: connection isa0slot3
39: serial_port tty01
40: connection isa0slot4
41: parallel_port lp0
42: connection isa0slot5
43: fdi_controller fdi0
44: disk fdi0-unit-0 floppy0
45: connection isa0slot6
46: network le0
16: connection pci0slot9
47: network tu1
18: connection pci0slot11
48: ide_adapter ata0
49: scsi_bus scsi2
52: disk bus-2-targ-0-lun-0 cdrom0
50: scsi_bus scsi3
The OSF/1 version of vmstat has an additional option to get details of physical memory:
$ vmstat -P
Total Physical Memory = 512.00 M
= 65536 pages
Physical Memory Clusters:
start_pfn end_pfn type size_pages / size_bytes
0 256 pal 256 / 2.00M
256 65526 os 65270 / 509.92M
65526 65536 pal 10 / 80.00k
Physical Memory Use:
start_pfn end_pfn type size_pages / size_bytes
256 289 scavenge 33 / 264.00k
289 1085 text 796 / 6.22M
1085 1229 data 144 / 1.12M
1229 1465 bss 236 / 1.84M
1465 1664 kdebug 199 / 1.55M
1664 1671 cfgmgmt 7 / 56.00k
1671 1672 locks 1 / 8.00k
1672 1686 pmap 14 / 112.00k
1686 2000 unixtable 314 / 2.45M
2000 2012 logs 12 / 96.00k
2012 3499 vmtables 1487 / 11.62M
3499 65526 managed 62027 / 484.59M
============================
Total Physical Memory Use: 65270 / 509.92M
Managed Pages Break Down:
free pages = 45081
active pages = 5177
inactive pages = 0
wired pages = 4805
ubc pages = 6997
==================
Total = 62060
WIRED Pages Break Down:
vm wired pages = 888
ubc wired pages = 0
meta data pages = 1915
malloc pages = 1303
contig pages = 164
user ptepages = 460
kernel ptepages = 67
free ptepages = 8
==================
Total = 4805
An overview of the system configuration, including operating system and hardware information, can be obtained using /opt/ignite/bin/print_manifest:
# /opt/ignite/bin/print_manifest
System Information
Your Hewlett-Packard computer has software installed and
configured as follows.
The system was created June 13, 2002, 06:46:48 EDT.
It was created with Ignite-UX revision B.5.1.32.
-------------------------------------------------------------
NOTE: You should retain this information for future reference.
-------------------------------------------------------------
System Hardware
Model: 9000/785/C360
Main Memory: 1536 MB
Processors: 1
OS mode: 64 bit
HW capability: 32 or 64 bit
LAN hardware ID: 0x00108303DEDA
Software ID: 2011398448
Keyboard Language: PS2_DIN_UK_English_Euro
...
A summary of the currently installed packages can be obtained with swlist:
$ swlist # Initializing... # Contacting target "ulmus.bioinfo-user.org.uk"... # # Target: ulmus.bioinfo-user.org.uk:/ # # # Bundle(s): # 100BaseT-01 B.11.11.01 HP-PB 100BaseT;Supptd HW=A3495A;SW=J2759BA B6848BA 1.4.gm.46.2 Ximian GNOME 1.4 GTK+ Libraries for HP-UX 11.00 and 11i B8111AA 1.2.2.15.00 Java 2 RTE for HP-UX (700/800), PA1.1 + PA2.0 Add On B8465BA A.01.05.08 HP WBEM Services for HP-UX ... perl B.5.6.1.F Perl Programming Language scsiU320-00 B.11.11.00 PCI SCSI U320; Supptd HW=A7173A # # Product(s) not contained in a Bundle: # bash 3.00.14 bash gcc 3.4.3 gcc gettext 0.14.1 gettext libiconv 1.9.2 libiconv make 3.80 make tar 1.15 tar
The system model is returned by model. For example, for a C360 workstation:
$ model 9000/785/C360
$ ioscan
H/W Path Class Description
===================================================
bc
8 bc I/O Adapter
8/0 ba GSCtoPCI Bridge
8/0/19/0 ext_bus SCSI C87x Ultra Wide Single-Ended
8/0/19/0.5 target
8/0/19/0.5.0 disk SEAGATE ST34520WS
8/0/19/0.6 target
8/0/19/0.6.0 disk SEAGATE ST34572WS
8/0/19/0.7 target
8/0/19/0.7.0 ctl Initiator
8/0/20/0 lan HP PCI 10/100Base-TX Core
8/0/63 tty Built-in RS-232C
8/16 ba Core I/O Adapter
8/16/0 ext_bus Built-in Parallel Interface
8/16/1 audio Built-in Audio
8/16/4 tty Built-in RS-232C
8/16/5 ext_bus Built-in SCSI
8/16/5.7 target
8/16/5.7.0 ctl Initiator
8/16/7 ps2 Built-in Keyboard/Mouse
10 bc I/O Adapter
10/0 ba GSCtoPCI Bridge
10/12 graphics Graphics
32 processor Processor
49 memory Memory
Under investigation
A more complete operating system version string can be found in /proc/version. For example, on a Mandrake Linux 9.1 system:
$ cat /proc/version Linux version 2.4.21-0.33mdkenterprise (qateam@updates.mandrakesoft.com) (gcc version 3.2.2 (Mandrake Linux 9.1 3.2.2-3mdk)) #1 SMP Wed Aug 11 10:09:17 MDT 2004
On many distributions the name and version of the distribution can be found in a file under /etc/:
/etc/redhat-release/etc/debian_version/etc/SuSE-releaseFor example, on a Mandrake Linux 9.1 system:
$ cat /etc/redhat-release Mandrake Linux release 9.1 (Bamboo) for i586
Another possibility is to look at /etc/issue. For example for a Ubuntu 8.04 (Hardy) system:
$ cat /etc/issue Ubuntu 8.04.1 \n \l
Generally the most stable method is to use one of the Linux Standard Base tools lsb_release.
For example for a Mandrake Linux 9.0 system:
$ lsb_release -a LSB Version: 1.2 Distributor ID: Mandrake Description: Mandrake Linux Release: 9.0 Codename: dolphin
Or for a Ubuntu 8.04 (Hardy) system:
$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 8.04.1 Release: 8.04 Codename: hardy
If the lsb_release tool is not installed, equivalent information may be available in /etc/lsb-release.
For deb/apt based distributions (e.g. Debian and Ubuntu) dpkg is used to list the installed packages. For example, on a Ubuntu 8.04 (Hardy) system:
$ dpkg --list Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Installed/Config-f/Unpacked/Failed-cfg/Half-inst/t-aWait/T-pend |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad) ||/ Name Version Description +++-===================================-===================================-====================================================================================== ii acl 2.2.45-1 Access control list utilities ii acpi 0.09-3ubuntu1 displays information on ACPI devices ii acpi-support 0.109 a collection of useful events for acpi ii acpid 1.0.4-5ubuntu9 Utilities for using ACPI power management ... ii zip 2.32-1 Archiver for .zip files ii zlib1g 1:1.2.3.3.dfsg-7ubuntu1 compression library - runtime ii zlib1g-dev 1:1.2.3.3.dfsg-7ubuntu1 compression library - development
For RPM based distributions (e.g. RedHat, CentOS and Mandriva) the rpm command is used. For example, on a CentOS 4.7 system:
$ rpm -q -a basesystem-8.0-4 pyxf86config-0.3.19-1 prelink-0.3.3-0.EL4 dump-0.4b39-3.EL4.2 finger-0.17-26.EL4.1 ... xorg-x11-xdm-6.8.2-1.EL.52 gnome-utils-2.8.0-7.el4 mod_ssl-2.0.52-41.ent.centos4 kdebase-devel-3.3.1-11.el4.centos kernel-2.6.9-78.0.5.EL
Details of the installed processors can be found in /proc/cpuinfo:
$ cat /proc/cpuinfo processor : 0 vendor_id : CentaurHauls cpu family : 6 model : 7 model name : VIA Samuel 2 stepping : 3 cpu MHz : 599.723 cache size : 64 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu de tsc msr cx8 mtrr pge mmx 3dnow bogomips : 1196.03
Details of the memory configuration can be found in /proc/meminfo:
$ cat /proc/meminfo
total: used: free: shared: buffers: cached:
Mem: 489811968 410542080 79269888 0 56160256 177897472
Swap: 1069244416 21245952 1047998464
MemTotal: 478332 kB
MemFree: 77412 kB
MemShared: 0 kB
Buffers: 54844 kB
Cached: 168512 kB
SwapCached: 5216 kB
Active: 78072 kB
Inactive: 229604 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 478332 kB
LowFree: 77412 kB
SwapTotal: 1044184 kB
SwapFree: 1023436 kB
The /proc file system contains various files that can be used to obtain information about the hardware present in a system.
On Linux 2.4 and earlier kernels examining /proc/pci will provide all the information on the PCI bus you could ever want:
$ cat /proc/pci
PCI devices found:
Bus 0, device 0, function 0:
Host bridge: PCI device 1106:3123 (VIA Technologies, Inc.) (rev 0).
Master Capable. Latency=8.
Prefetchable 32 bit memory at 0xd0000000 [0xd7ffffff].
Bus 0, device 1, function 0:
PCI bridge: VIA Technologies, Inc. VT8633 [Apollo Pro266 AGP] (rev 0).
Master Capable. No bursts. Min Gnt=12.
Bus 0, device 13, function 0:
FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 128).
IRQ 12.
Master Capable. Latency=32. Max Lat=32.
Non-prefetchable 32 bit memory at 0xde000000 [0xde0007ff].
I/O at 0xd000 [0xd07f].
Bus 0, device 16, function 0:
USB Controller: VIA Technologies, Inc. USB (rev 128).
IRQ 11.
Master Capable. Latency=32.
I/O at 0xd400 [0xd41f].
Bus 0, device 16, function 1:
USB Controller: VIA Technologies, Inc. USB (#2) (rev 128).
IRQ 12.
Master Capable. Latency=32.
I/O at 0xd800 [0xd81f].
Bus 0, device 16, function 2:
USB Controller: VIA Technologies, Inc. USB (#3) (rev 128).
IRQ 10.
Master Capable. Latency=32.
I/O at 0xdc00 [0xdc1f].
Bus 0, device 16, function 3:
USB Controller: VIA Technologies, Inc. USB 2.0 (rev 130).
IRQ 5.
Master Capable. Latency=32.
Non-prefetchable 32 bit memory at 0xde001000 [0xde0010ff].
Bus 0, device 17, function 0:
ISA bridge: VIA Technologies, Inc. VT8233A ISA Bridge (rev 0).
Bus 0, device 17, function 1:
IDE interface: VIA Technologies, Inc. VT82C586B PIPC Bus Master IDE (rev 6).
Master Capable. Latency=32.
I/O at 0xe000 [0xe00f].
Bus 0, device 17, function 5:
Multimedia audio controller: VIA Technologies, Inc. VT8233 AC97 Audio Controller (rev 80).
IRQ 10.
I/O at 0xe400 [0xe4ff].
Bus 0, device 18, function 0:
Ethernet controller: VIA Technologies, Inc. VT6102 [Rhine-II] (rev 116).
IRQ 11.
Master Capable. Latency=32. Min Gnt=3.Max Lat=8.
I/O at 0xec00 [0xecff].
Non-prefetchable 32 bit memory at 0xde002000 [0xde0020ff].
Bus 1, device 0, function 0:
VGA compatible controller: PCI device 1106:3122 (VIA Technologies, Inc.) (rev 3).
IRQ 11.
Master Capable. Latency=32. Min Gnt=2.
Prefetchable 32 bit memory at 0xd8000000 [0xdbffffff].
Non-prefetchable 32 bit memory at 0xdc000000 [0xdcffffff].
On Linux 2.6 kernel systems the PCI device descriptions are no longer compiled into the kernel by default. So to get the descriptions use the lspci command:
$ lspci 00:00.0 Host bridge: VIA Technologies, Inc. VT8623 [Apollo CLE266] 00:01.0 PCI bridge: VIA Technologies, Inc. VT8633 [Apollo Pro266 AGP] 00:0d.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 80) 00:10.0 USB Controller: VIA Technologies, Inc. USB (rev 80) 00:10.1 USB Controller: VIA Technologies, Inc. USB (rev 80) 00:10.2 USB Controller: VIA Technologies, Inc. USB (rev 80) 00:10.3 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 82) 00:11.0 ISA bridge: VIA Technologies, Inc. VT8235 ISA Bridge 00:11.1 IDE interface: VIA Technologies, Inc. VT82C586/B/686A/B PIPC Bus Master IDE (rev 06) 00:11.5 Multimedia audio controller: VIA Technologies, Inc. VT8233 AC97 Audio Controller (rev 50) 00:12.0 Ethernet controller: VIA Technologies, Inc. VT6102 [Rhine-II] (rev 74) 01:00.0 VGA compatible controller: VIA Technologies, Inc. VT8623 [Apollo CLE266] integrated CastleRock graphics (rev 03)
On Linux 2.4 and earlier kernels examining /proc/bus/usb/devices will provide all the information on the USB devices you could ever want:
$ cat /proc/bus/usb/devices T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 6 B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS= 8 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.04 S: Manufacturer=Linux 2.4.21-0.33mdk ehci-hcd S: Product=VIA Technologies, Inc. USB 2.0 S: SerialNumber=00:10.3 C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=256ms T: Bus=04 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=480 MxCh= 0 D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=067b ProdID=3507 Rev= 1.00 S: Manufacturer=Prolific Technology Inc. S: Product=Mass Storage Device C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=100mA I: If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 0.00 S: Product=USB UHCI Root Hub S: SerialNumber=dc00 C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 0.00 S: Product=USB UHCI Root Hub S: SerialNumber=d800 C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 0.00 S: Product=USB UHCI Root Hub S: SerialNumber=d400 C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms
On 2.6 kernels use the lsusb command instead:
$ lsusb Bus 010 Device 002: ID 2040:9950 Hauppauge Bus 010 Device 001: ID 0000:0000 Bus 011 Device 002: ID 2040:9950 Hauppauge Bus 011 Device 001: ID 0000:0000 Bus 009 Device 001: ID 0000:0000 Bus 008 Device 001: ID 0000:0000 Bus 004 Device 001: ID 0000:0000 Bus 007 Device 001: ID 0000:0000 Bus 006 Device 001: ID 0000:0000 Bus 005 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 002 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000
To get details of firewire devices see /proc/bus/ieee1394/devices:
$ cat /proc/bus/ieee1394/devices
Node[01:1023] GUID[0040635000009d72]:
Vendor ID: `Linux OHCI-1394' [0x004063]
Capabilities: 0x0083c0
Bus Options:
IRMC(1) CMC(1) ISC(1) BMC(0) PMC(0) GEN(0)
LSPD(2) MAX_REC(2048) CYC_CLK_ACC(0)
Host Node Status:
Host Driver : ohci1394
Nodes connected : 2
Nodes active : 2
SelfIDs received: 2
Irm ID : [01:1023]
BusMgr ID : [01:1023]
In Bus Reset : no
Root : yes
Cycle Master : yes
IRM : yes
Bus Manager : yes
Node[00:1023] GUID[0050770e00071002]:
Vendor ID: `Prolific PL3507 Combo Device' [0x005077]
Capabilities: 0x0083c0
Bus Options:
IRMC(0) CMC(0) ISC(0) BMC(0) PMC(0) GEN(0)
LSPD(0) MAX_REC(64) CYC_CLK_ACC(255)
Unit Directory 0:
Vendor/Model ID: Prolific PL3507 Combo Device [005077] / (1394-ATAPI rev1.10) [000001]
Software Specifier ID: 00609e
Software Version: 010483
Length (in quads): 8
On SGI IRIX systems uname supports an extra option to give a more readable form of the operating system revision:
% uname -R 6.5 6.5.11m % uname -aR IRIX alnus 6.5 6.5.11m 01101246 IP32
On SGI IRIX the hinv command provides a description of the current hardware configuration:
% hinv CPU: MIPS R10000 Processor Chip Revision: 2.7 FPU: MIPS R10010 Floating Point Chip Revision: 0.0 1 195 MHZ IP32 Processor Main memory size: 640 Mbytes Secondary unified instruction/data cache size: 1 Mbyte on Processor 0 Instruction cache size: 32 Kbytes Data cache size: 32 Kbytes FLASH PROM version 4.16 Integral SCSI controller 0: Version ADAPTEC 7880 Disk drive: unit 2 on SCSI controller 0 CDROM: unit 4 on SCSI controller 0 Integral SCSI controller 1: Version ADAPTEC 7880 On-board serial ports: tty1 On-board serial ports: tty2 On-board EPP/ECP parallel port CRM graphics installed Integral Ethernet: ec0, version 1 Iris Audio Processor: version A3 revision 0 Video: MVP unit 0 version 1.4 with no AV Card or Camera. Vice: TRE
Sun Solaris was formerly known as SunOS (Wikipedia) and a open source version is now available called OpenSolaris.
While uname gives an overview of the SunOS/Solaris version it is not always sufficient. An alternative is to use the contents of /etc/release:
$ cat /etc/release
OpenSolaris 2009.06 snv_111b X86
Copyright 2009 Sun Microsystems, Inc. All Rights Reserved.
Use is subject to license terms.
Assembled 07 May 2009
An overview of the installed software packages can be obtained with:
pkginfo:$ pkginfo system BRCMbnx Broadcom NetXtreme II Gigabit Ethernet Adapter Driver system FSWxorg-fonts-core X.Org Foundation X11 core fonts system NVDAgraphics NVIDIA Graphics System Software system NVDAgraphicsr NVIDIA Graphics System Device Driver system SUNW1394 Sun IEEE1394 Framework ... application openofficeorg3-math Math brand module for OpenOffice.org 3.1 application openofficeorg3-writer Writer brand module for OpenOffice.org 3.1 application sunstudioexpress Sun Studio Express March 2009
pkg: $ pkg list NAME (PUBLISHER) VERSION STATE UFIX BRCMbnx 0.5.11-0.111 installed ---- FSWxorg-fonts-core 0.5.11-0.111 installed ---- NVDAgraphics 0.180.44-0.111 installed ---- SUNW1394 0.5.11-0.111 installed ---- ... openoffice 3.1.0-0.111 installed ---- ruby-dev 0.5.11-0.111 installed ---- service/network/message-queue-41 4.1-0.111 installed ---- sunstudioexpress 0.2009.3.1-0.111 installed ---- web/glassfish-2 2.1-0.111 installed ----
The processor type(s) and number can be obtained using psrinfo:
$ psrinfo -v
Status of processor 0 as of: 04/03/05 17:49:50
Processor has been on-line since 04/03/05 15:54:58.
The sparc processor operates at 75 MHz,
and has a sparc floating point processor.
The prtconf command provides a lot of information about the hardware in a Solaris system, including the amount of physical memory installed.
$ prtconf
System Configuration: Sun Microsystems sun4m
Memory size: 512 Megabytes
System Peripherals (Software Nodes):
SUNW,Axil-320
packages (driver not attached)
disk-label (driver not attached)
deblocker (driver not attached)
obp-tftp (driver not attached)
options, instance #0
aliases (driver not attached)
openprom (driver not attached)
iommu, instance #0
sbus, instance #0
espdma, instance #0
esp, instance #0
sd (driver not attached)
st (driver not attached)
sd, instance #0
sd, instance #1 (driver not attached)
sd, instance #2 (driver not attached)
sd, instance #3
sd, instance #4 (driver not attached)
sd, instance #5 (driver not attached)
sd, instance #6
ledma, instance #0
le, instance #0
SUNW,bpp (driver not attached)
SUNW,DBRIe (driver not attached)
mmcodec (driver not attached)
cgsix, instance #1
obio, instance #0
zs, instance #0
zs, instance #1
eeprom (driver not attached)
counter (driver not attached)
interrupt (driver not attached)
SUNW,fdtwo, instance #0
auxio (driver not attached)
power (driver not attached)
memory (driver not attached)
virtual-memory (driver not attached)
eccmemctl (driver not attached)
TI,TMS390Z55 (driver not attached)
pseudo, instance #0