In daily sysadmin duties I have been usually administrating GNU / Linux or FreeBSD servers.
However now in my daily sysadmin jobs I've been added to do some minor sysadmin activities on a few IBM AIX eServers UNIX machines.
As the eServers were completely unknown to me and I logged in for a first time I needed a way to get idea on what kind of hardware I'm logging in so I wanted to get information about the Central Processing UNIT CPUs on the host.
On Linux I'm used to do a cat /proc/cpuinfo or do dmidecode etc. to get the number of CPUs, however AIX does not have /proc/cpuinfo and has its own way to get information about the system hardware.
As I've red in the IBM AIX's RedBook to get system information on AIX there is the lscfg command.
aix:/# lscfg
INSTALLED RESOURCE LIST
The following resources are installed on the machine.
+/- = Added or deleted from Resource List.
* = Diagnostic support not available.
Model Architecture: chrp
Model Implementation: Multiple Processor, PCI bus
+ sys0 System Object
+ sysplanar0 System Planar
* vio0 Virtual I/O Bus
* vscsi3 U8205.E6B.068D6AP-V4-C21-T1 Virtual SCSI Client Adapter
* vscsi2 U8205.E6B.068D6AP-V4-C20-T1 Virtual SCSI Client Adapter
* vscsi1 U8205.E6B.068D6AP-V4-C11-T1 Virtual SCSI Client Adapter
* hdisk1 U8205.E6B.068D6AP-V4-C11-T1-L8100000000000000 Virtual SCSI Disk Drive
* vscsi0 U8205.E6B.068D6AP-V4-C10-T1 Virtual SCSI Client Adapter
* hdisk0 U8205.E6B.068D6AP-V4-C10-T1-L8100000000000000 Virtual SCSI Disk Drive
* ent3 U8205.E6B.068D6AP-V4-C5-T1 Virtual I/O Ethernet Adapter (l-lan)
* ent2 U8205.E6B.068D6AP-V4-C4-T1 Virtual I/O Ethernet Adapter (l-lan)
* ent1 U8205.E6B.068D6AP-V4-C3-T1 Virtual I/O Ethernet Adapter (l-lan)
* ent0 U8205.E6B.068D6AP-V4-C2-T1 Virtual I/O Ethernet Adapter (l-lan)
* vsa0 U8205.E6B.068D6AP-V4-C0 LPAR Virtual Serial Adapter
* vty0 U8205.E6B.068D6AP-V4-C0-L0 Asynchronous Terminal
+ L2cache0 L2 Cache
+ mem0 Memory
+ proc0 Processor
+ proc4 Processor
To get the number of processors on the host I've had to use:
aix:/# lscfg|grep -i proc
Model Implementation: Multiple Processor, PCI bus
+ proc0 Processor
+ proc4 Processor
Another way to get the CPU number is with:
aix:/# lsdev -C -c processor
proc0 Available 00-00 Processor
proc4 Available 00-04 Processor
aix:/# lsattr -EH -l proc4
attribute value description user_settable
frequency 3720000000 Processor Speed False
smt_enabled true Processor SMT enabled False
smt_threads 4 Processor SMT threads False
state enable Processor state False
type PowerPC_POWER7 Processor type False
aix:/# lsattr -EH -l proc0
attribute value description user_settable
frequency 3720000000 Processor Speed False
smt_enabled true Processor SMT enabled False
smt_threads 4 Processor SMT threads False
state enable Processor state False
type PowerPC_POWER7 Processor type False
As you can see each of the processor is multicore has 2 Cores and each of the cores have for Threads, to get the overall number of CPUs on the system including the threaded Virtual CPUs:
aix:/# bindprocessor -q
The available processors are: 0 1 2 3 4 5 6 7
This specific machine has overall of 8 CPUs cores.
lscfg can be used to get various useful other info of the iron:
aix:/# lscfg -s
INSTALLED RESOURCE LIST
The following resources are installed on the machine.
+/- = Added or deleted from Resource List.
* = Diagnostic support not available.
Model Architecture: chrp
Model Implementation: Multiple Processor, PCI bus
+ sys0
System Object
+ sysplanar0
System Planar
* vio0
Virtual I/O Bus
* vscsi3 U8305…………….
Virtual SCSI Client Adapter
* vscsi2 U8305…………….
Virtual SCSI Client Adapter
* vscsi1 U8305…………….
Virtual SCSI Client Adapter
* hdisk1 U8305…………….
Virtual SCSI Disk Drive
* vscsi0 U8305……………..
Virtual SCSI Client Adapter
* hdisk0 U8305…………….
Virtual SCSI Disk Drive
* ent3 U8305…………….
Virtual I/O Ethernet Adapter (l-lan)
* ent2 U8305.E6B…………….
Virtual I/O Ethernet Adapter (l-lan)
* ent1 U8305.E6B…………….
Virtual I/O Ethernet Adapter (l-lan)
* ent0 U8305.E6B…………….
Virtual I/O Ethernet Adapter (l-lan)
* vsa0 U8305.E7B…………….
LPAR Virtual Serial Adapter
* vty0 U8305.E7B…………….
Asynchronous Terminal
+ L2cache0
L2 Cache
+ mem0
Memory
+ proc0
Processor
+ proc4
Processor
aix:/# lscfg -p
INSTALLED RESOURCE LIST
The following resources are installed on the machine.
Model Architecture: chrp
Model Implementation: Multiple Processor, PCI bus
sys0 System Object
sysplanar0 System Planar
vio0 Virtual I/O Bus
vscsi3 U8305.E7B…………….V6-C40-T1 Virtual SCSI Client Adapter
vscsi2 U8305.E7B…………….V6-C40-T1 Virtual SCSI Client Adapter
vscsi1 U8305.E7B…………….V6-C40-T1 Virtual SCSI Client Adapter
hdisk1 U8305.E7B…………….V6-C40-T1-L8500000000000000 Virtual SCSI Disk Drive
vscsi0 U8305.E7B…………….V6-C40-T1 Virtual SCSI Client Adapter
hdisk0 U8305.E7B…………….V6-C40-T1-L8500000000000000 Virtual SCSI Disk Drive
ent3 U8305.E7B…………….V6-C40-T1 Virtual I/O Ethernet Adapter (l-lan)
ent2 U8305.E7B…………….V6-C40-T1 Virtual I/O Ethernet Adapter (l-lan)
ent1 U8305.E7B…………….V6-C40-T1 Virtual I/O Ethernet Adapter (l-lan)
ent0 U8305.E7B…………….V6-C40-T1 Virtual I/O Ethernet Adapter (l-lan)
vsa0 U8305.E7B.069D7AP-V5-C1 LPAR Virtual Serial Adapter
vty0 U8305.E7B.069D7AP-V5-D1-L0 Asynchronous Terminal
L2cache0 L2 Cache
mem0 Memory
proc0 Processor
proc4 Processor
PLATFORM SPECIFIC
Name: IBM,8305-E7B
Model: IBM,8305-E7B
Node: /
Device Type: chrp
Name: openprom
Model: IBM,AL730_158
Node: openprom
Name: interrupt-controller
Model: IBM, Logical PowerPC-PIC, 00
Node: interrupt-controller@0
Device Type: PowerPC-External-Interrupt-Presentation
Name: vty
Node: vty@30000000
Device Type: serial
Physical Location: …………………………………………..
Name: l-lan
Node: l-lan@30000002
Device Type: network
Physical Location: …………………………………………..
Name: l-lan
Node: l-lan@30000003
Device Type: network
Physical Location: …………………………………………..
Name: l-lan
Node: l-lan@30000004
Device Type: network
Physical Location: …………………………………………..
Name: l-lan
Node: l-lan@30000005
Device Type: network
Physical Location: …………………………………………..
Name: v-scsi
Node: v-scsi@3000005a
Device Type: vscsi
Physical Location: …………………………………………..
Name: v-scsi
Node: v-scsi@3000005b
Device Type: vscsi
Physical Location: …………………………………………..
Name: v-scsi
Node: v-scsi@30000014
Device Type: vscsi
Physical Location: ………………………………..
Name: v-scsi
Node: v-scsi@30000017
Device Type: vscsi
Physical Location: …………………………………
Another useful command I found is to list the equivalent of Linux's LVM Logical Volumes configured on the system, below is how:
aix:/# lspv hdisk0
00f68c6a84acb0d5 rootvg active hdisk1 00f69d6a85400468 dsvg active
To get more info on a volume group:
aix:/# lspv hdisk0 PHYSICAL VOLUME: hdisk0 VOLUME GROUP: rootvg PV IDENTIFIER: 00f68d6a85acb0d5 VG IDENTIFIER 00f68d6a00004c0000000131353444a5 PV STATE: active STALE PARTITIONS: 0 ALLOCATABLE: yes PP SIZE: 32 megabyte(s) LOGICAL VOLUMES: 12 TOTAL PPs: 959 (30688 megabytes) VG DESCRIPTORS: 2 FREE PPs: 493 (15776 megabytes) HOT SPARE: no USED PPs: 466 (14912 megabytes) MAX REQUEST: 256 kilobytes FREE DISTRIBUTION: 191..00..00..110..192 USED DISTRIBUTION: 01..192..191..82..00 MIRROR POOL: None
You can get which local configured partition is set on which ( PV )Physical Volume
aix:/# lspv -l hdisk0
hdisk0:
LV NAME LPs PPs DISTRIBUTION MOUNT POINT
lg_dumplv 64 64 00..64..00..00..00 N/A
hd8 1 1 00..00..01..00..00 N/A
hd6 16 16 00..16..00..00..00 N/A
hd2 166 166 00..45..89..32..00 /usr
hd4 29 29 00..11..18..00..00 /
hd3 40 40 00..04..04..32..00 /tmp
hd9var 55 55 00..00..37..18..00 /var
hd10opt 74 74 00..37..37..00..00 /opt
hd1 8 8 00..07..01..00..00 /home
hd5 1 1 01..00..00..00..00 N/A