#!/bin/bash
# your code goes here
#!/bin/sh
#######################################
# KPMG-Audit_UNIX_v1.72.sh
# v1.72
# (c) KPMG 2012
# OS: Linux, AIX, HP-UX, SunOS, TRUE64
#######################################
## Global variables
KPMGPATH=./
KPMGFILENAME=${KPMGPATH}KPMG-Audit_UNIX-`uname -n`.txt
touch $KPMGFILENAME
ScriptVersion="1.72"
ScriptName="KPMG-Audit_UNIX_v"$ScriptVersion
## Start echo
echo "KPMG System Info gathering starting..."
echo OStype=`uname -s`
## Print header to file
echo "============================================" >$KPMGFILENAME
echo "= DATE : "`date` >>$KPMGFILENAME
echo "= HOSTNAME : "`uname -n` >>$KPMGFILENAME
echo "= SYSTEM : "`uname -a` >>$KPMGFILENAME
echo "= OS : "$OStype >>$KPMGFILENAME
echo "= SCRIPT : "$ScriptName >>$KPMGFILENAME
echo "============================================" >>$KPMGFILENAME
echo >> $KPMGFILENAME
## OS selection
if [ $OStype = "Linux" ];
then
echo "===Make Model===" >>$KPMGFILENAME
/usr/sbin/dmidecode -t system >> $KPMGFILENAME
echo "===Timezone===" >> $KPMGFILENAME
cat /usr/share/zoneinfo/zone.tab >> $KPMGFILENAME
echo "===Uptime===" >> $KPMGFILENAME
uptime >> $KPMGFILENAME
echo "===CPU===" >>$KPMGFILENAME
cat /proc/cpuinfo >> $KPMGFILENAME
echo "===PROCESS===" >>$KPMGFILENAME
ps -elf >> $KPMGFILENAME
echo "===MQ installed===" >>$KPMGFILENAME
dspmq >> $KPMGFILENAME
mqver -p >> $KPMGFILENAME
dspmq –p 15 –v >> $KPMGFILENAME
echo "===DB2LICM -l===" >>$KPMGFILENAME
db2licm -l >>$KPMGFILENAME
echo "===DB2LICM -g===" >>$KPMGFILENAME
db2licm -g ./tmp.db2licmg
cat ./tmp.db2licmg >> $KPMGFILENAME
rm ./tmp.db2licmg
echo "===SOFTWARE rpm===" >>$KPMGFILENAME
rpm -qa --queryformat "%{INSTALLTIME:date} - %{NAME} - %{VERSION} - % {DISTRIBUTION} - % {LICENSE}\n" | sort -n >> $KPMGFILENAME
dpkg --list >> $KPMGFILENAME
elif [ $OStype = "SunOS" ];
then
echo "===CPU prtdiag===" >>$KPMGFILENAME
/usr/platform/`uname -i`/sbin/prtdiag >> $KPMGFILENAME
echo "===CPU psrinfo===" >>$KPMGFILENAME
psrinfo -vp >> $KPMGFILENAME
echo "===Timezone===" >> $KPMGFILENAME
cat /etc/TIMEZONE >> $KPMGFILENAME
echo "===Uptime===" >> $KPMGFILENAME
uptime >> $KPMGFILENAME
echo "===Boards Listings===" >>$KPMGFILENAME
showboards >> $KPMGFILENAME
echo "===Domains Listings===" >>$KPMGFILENAME
showplatform >> $KPMGFILENAME
echo "===Global Zone Name===" >>$KPMGFILENAME
cat /etc/globalzone >> $KPMGFILENAME
echo "===Local Zones listings===" >>$KPMGFILENAME
zoneadm list -v >> $KPMGFILENAME
zoneadm list -v >> ./tmp.KPMG_globZones
echo "===Zones Configuration===" >>$KPMGFILENAME
nawk -F " " ' NR > 1 {print $2 }'
./tmp.KPMG_globZones >> ./tmp.KPMG_globZonesConf
for i in `cat ./tmp.KPMG_globZonesConf`;
do
zonecfg -z $i info >>$KPMGFILENAME;
done
echo "===Deletion of Temporary files==="
rm -f ./tmp.KPMG_globZones
rm -f ./tmp.KPMG_globZonesConf
echo "===Pools configuration===" >>$KPMGFILENAME
pooladm >> $KPMGFILENAME
echo "===PROCESS===" >>$KPMGFILENAME
ps -elf >> $KPMGFILENAME
echo "===PROCESS DETAILS===" >>$KPMGFILENAME
/usr/ucb/ps –axw >>$KPMGFILENAME
echo "===MQ installed===" >>$KPMGFILENAME
dspmq >> $KPMGFILENAME
mqver -p >> $KPMGFILENAME
dspmq –p 15 –v >> $KPMGFILENAME
echo "===MQ Packages===" >>$KPMGFILENAME
pkgparam mqm CLASSES >>$KPMGFILENAME
echo "===DB2LICM -l===" >>$KPMGFILENAME
db2licm -l >>$KPMGFILENAME
echo "===DB2LICM -g===" >>$KPMGFILENAME
db2licm -g ./tmp.db2licmg
cat ./tmp.db2licmg >> $KPMGFILENAME
rm ./tmp.db2licmg
echo "===SOFTWARE===" >>$KPMGFILENAME
pkginfo >> $KPMGFILENAME
elif [ $OStype = "HP-UX" ];
then
echo "===CPU ioscan===" >>$KPMGFILENAME
/usr/sbin/ioscan -fnkC processor >> $KPMGFILENAME
echo "===CPU psrinfo===" >>$KPMGFILENAME
psrinfo -vp >> $KPMGFILENAME
echo "===Timezone===" >> $KPMGFILENAME
cat /etc/TIMEZONE >> $KPMGFILENAME
echo "===Uptime===" >> $KPMGFILENAME
uptime >> $KPMGFILENAME
echo "===Uptime===" >> $KPMGFILENAME
uptime >> $KPMGFILENAME
echo "===Capacity OnDemand===" >>$KPMGFILENAME
icapstatus >> $KPMGFILENAME
icod_stat >> $KPMGFILENAME
echo "===Processor Info===" >>$KPMGFILENAME
Machinfo >>$KPMGFILENAME
echo "===Model Info===" >>$KPMGFILENAME
model >>$KPMGFILENAME
echo "===PROCESS===" >>$KPMGFILENAME
ps -elf >> $KPMGFILENAME
echo "===MQ installed===" >>$KPMGFILENAME
dspmq >> $KPMGFILENAME
mqver -p >> $KPMGFILENAME
dspmq –p 15 –v >> $KPMGFILENAME
echo "===DB2LICM -l===" >>$KPMGFILENAME
db2licm -l >>$KPMGFILENAME
echo "===DB2LICM -g===" >>$KPMGFILENAME
db2licm -g ./tmp.db2licmg
cat ./tmp.db2licmg >> $KPMGFILENAME
rm ./tmp.db2licmg
echo "===SOFTWARE===" >>$KPMGFILENAME
/usr/sbin/swlist >> $KPMGFILENAME
echo "===VPAR status===" >>$KPMGFILENAME
vparstatus >> $KPMGFILENAME
elif [ $OStype = "AIX" ];
then
echo "===CPU prtconf===" >>$KPMGFILENAME
prtconf >> $KPMGFILENAME
echo "===CPU lparstat===" >>$KPMGFILENAME
lparstat -i >> $KPMGFILENAME
echo "===Timezone===" >> $KPMGFILENAME
cat /etc/environment >> $KPMGFILENAME
echo "===Uptime===" >> $KPMGFILENAME
uptime >> $KPMGFILENAME
echo "===CPU pmcycles===" >>$KPMGFILENAME
pmcycles >> $KPMGFILENAME
echo "===CPU lsdev===" >>$KPMGFILENAME
lsdev -Cc processor >> $KPMGFILENAME
echo "===CPU lscfg===" >>$KPMGFILENAME
lscfg -v >> $KPMGFILENAME
echo "===CPU lsmcode===" >>$KPMGFILENAME
lsmcode -A >> $KPMGFILENAME
echo "===PROCESS===" >>$KPMGFILENAME
ps -elf >> $KPMGFILENAME
echo "===OS Level===" >>$KPMGFILENAME
oslevel -s >> $KPMGFILENAME
echo "===MQ installed===" >>$KPMGFILENAME
dspmq >> $KPMGFILENAME
mqver -p >> $KPMGFILENAME
dspmq –p 15 –v >> $KPMGFILENAME
echo "===DB2LICM -l===" >>$KPMGFILENAME
db2licm-l >>$KPMGFILENAME
echo "===DB2LICM -g===" >>$KPMGFILENAME
db2licm -g ./tmp.db2licmg
cat ./tmp.db2licmg >> $KPMGFILENAME
rm ./tmp.db2licmg
echo "===SOFTWARE lslpp===" >>$KPMGFILENAME
lslpp -L all >> $KPMGFILENAME
echo "===SOFTWARE rpm===" >>$KPMGFILENAME
rpm -qa --queryformat "%{INSTALLTIME:date} - %{NAME} - %{VERSION} - % {DISTRIBUTION} - % {LICENSE}\n" | sort -n >> $KPMGFILENAME
echo "===LICENSE===" >>$KPMGFILENAME
lslicense >> $KPMGFILENAME
elif [ $OStype = "Tru64" ];
then
echo =========IP ADDRESSES=========== >>$KPMGFILENAME
ifconfig -a >>$KPMGFILENAME
echo ===========HW/CPU INFO============== >>$KPMGFILENAME
/usr/sbin/psrinfo >>$KPMGFILENAME
echo ==============SW INSTALLED================ >>$KPMGFILENAME
/usr/sbin/setld -i >>$KPMGFILENAME
else
echo "ERROR: OS not found. Stopping."
fi
echo >> $KPMGFILENAME
echo "===END===" >>$KPMGFILENAME
echo >> $KPMGFILENAME
echo "KPMG System Info gathering finished."
#End.