AIX ‘stats-grabber’


I thought this was a pretty cool little ditty, if you administer AIX that is…

#!/usr/bin/ksh
# Bruce Spencer, IBM
# 2/4/99
# Modified 1/20/2000 to add serial number and “uname -M”
# This program identifies the Model, serial number (PCI only), memory, CPU’
# and disk on a RS/6000

# Hardware Codes for MCA based systems
CODE=`uname -m | cut -c9,10 `
case $CODE in
02) MODEL=”7015-930″;;
10) MODEL=”7016-730, 7013-530, 7016-730″;;
14) MODEL=”7013-540″;;
18) MODEL=”7013-53H”;;
1C) MODEL=”7013-550″;;
20) MODEL=”7015-930″;;
2E) MODEL=”7015-950″;;
30) MODEL=”7013-520, 7018-740/741″;;
31) MODEL=”7012-320″;;
34) MODEL=”7013-52H”;;
35) MODEL=”7012-32H”;;
37) MODEL=”7012-340″;;
38) MODEL=”7012-350″;;
41) MODEL=”7011-220″;;
42) MODEL=”7006-41T/41W”;;
43) MODEL=”7008-M20″;;
46) MODEL=”7011-250″;;
47) MODEL=”7011-230″;;
48) MODEL=”7009-C10″;;
57) MODEL=”7012-390, 7030-3BT”;;
58) MODEL=”7012-380, 7030-3AT”;;
59) MODEL=”7012-39H, 7030-3CT”;;
5C) MODEL=”7013-560″;;
63) MODEL=”7015-970/97B”;;
64) MODEL=”7015-980/98B”;;
66) MODEL=”7013-580/58F”;;
67) MODEL=”7013-570/770/771/R10″;;
70) MODEL=”7013-590″;;
71) MODEL=”7013-58H”;;
72) MODEL=”7013-59H/R12″;;
75) MODEL=”7012-370/375/37T”;;
76) MODEL=”7012-360/365/36T”;;
77) MODEL=”7012-355/55H/55L”;;
79) MODEL=”7013-590″;;
80) MODEL=”7015-990″;;
82) MODEL=”7015-R24″;;
89) MODEL=”7013-595″;;
90) MODEL=”7009-C20″;;
91) MODEL=”7006-42x”;;
94) MODEL=”7012-397″;;
A0) MODEL=”7013-J30″;;
A1) MODEL=”7013-J40″;;
A3) MODEL=”7015-R30″;;
A4) MODEL=”7015-R40″;;
A6) MODEL=”7012-G30″;;
A7) MODEL=”7012-G40″;;
C0) MODEL=”7024-E20″;;
C4) MODEL=”7025-F40″;;
4C) MODEL=`uname -M`;;  # PCI systems
*) MODEL=”Unknown”;;
esac
# echo “Hostname         = ” $(hostname)
echo “Host/IP Address  = ” $(host $(hostname) )
echo “RS/6000 Model    = ” $MODEL

SN=$(lsattr -El sys0 -a systemid 2>/dev/null)
if [ $? -eq 0 ]
then
echo “Serial Number    = ” `echo $SN | awk ‘ { print $2 }’`
fi

echo “Number of CPU’s  = ” $(lscfg |grep -c “^+ proc”)
echo “Memory (KB)      = ” $(lsattr -El sys0 | awk ‘/realmem/ {print $2 }’)
echo “AIX Level        = ” $(oslevel)
echo “Number of hdisks = ” $(lspv |wc -l)
echo “Volume Groups”
# list volume groups disk avail/used

for i in $(lsvg)
do
lsvg $i
done | awk ‘
BEGIN      { printf(“%10s\t%10s\t%10s\t%10s\t%10s\n”,”VG”,”Total(MB)”,”Free”,”USED”,”Disks”) }
/VOLUME GROUP:/ { printf(“%10s\t”, $3)  }
/TOTAL PP/ {     B=index($0,”(“) + 1
E=index($0,” megaby”)
D=E-B
printf(“%10s\t”, substr($0,B,D) )
}
/FREE PP/  {     B=index($0,”(“) + 1
E=index($0,” megaby”)
D=E-B
printf(“%10s\t”, substr($0,B,D) )
}
/USED PP/  {     B=index($0,”(“)  + 1
E=index($0,” megaby”)
D=E-B
printf(“%10s\t”, substr($0,B,D) )
}
/ACTIVE PV/ { printf(“%10s\t\n”, $3)  } ‘

Advertisements

, , , , , , , , ,

  1. Leave a comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: