ciphermethod.com

20130530: si

by on May.30, 2013, under AIX, Linux, Scripts, Solaris, Sun


#!/bin/sh
# System Information
# Created: 07 April 2000
# by: Jamey Hopkins
#
# 23Jul2002 jah - send error on uptime and ps to /dev/null to handle
# output of unknown HZ value kernel bug
# 28Jul2004 jah - added CPU information / format change
# 26Apr2013 jah - added SunOS support
# 21May2013 jah - initial linux distro support (redhat mint oracle ubuntu)
# 30May2013 jah - added AIX support

OS=`uname`

echo
echo [ `uname -n` ]
date
if [ "$OS" = "Linux" ]
then
DISTRO=`lsb_release -d | cut -f2 -d: | xargs echo`
RH=`cat /proc/version 2>/dev/null | grep redhat.com`
[ "$RH" ] && DISTRO=`cat /etc/redhat-release`
OR=`cat /proc/version 2>/dev/null | grep oracle`
[ "$OR" ] && DISTRO="(Oracle) `cat /etc/enterprise-release`"
[ "$DISTRO" = "" ] && DISTRO="Unknown Distro"
echo $DISTRO

CPU=`cat /proc/cpuinfo | grep "model name" | tail -1 | awk -F: '{ print $2 }' | xargs echo`
NCPU=`cat /proc/cpuinfo | grep "processor" | wc -l | xargs echo`
MHZ=`cat /proc/cpuinfo | grep "MHz" | tail -1 | awk -F: '{ print $2 }' | xargs echo`
printf "%s on %s %s (%s MHz)\n" "$OS" "$NCPU" "$CPU" "$MHZ"
fi

if [ "$OS" = "SunOS" ]
then
CPU=`/usr/sbin/psrinfo -v | grep "processor operates" | head -1 | awk '{ print $2 }'`
NCPU=`/usr/sbin/psrinfo -v | grep Status | wc -l | xargs echo`
REL=`uname -X | grep Release | cut -f3 -d' '`
MHZ=`/usr/sbin/psrinfo -v | grep "operates at" | head -1 | awk '{ print $6" "$7 }' | sed 's/,//g'`
printf "%s %s on %s %s (%s)\n" "$OS" "$REL" "$NCPU" "$CPU" "$MHZ"
fi

if [ "$OS" = "AIX" ]
then
CPU=`lsattr -E -l proc0 | grep "Processor type" | awk '{ print $2 }'`
NCPU=`lscfg | grep proc | wc -l | xargs echo`
REL=`oslevel`
MHZ=`pmcycles | awk '{ print $5" "$6 }'`
printf "%s %s on %s %s (%s)\n" "$OS" "$REL" "$NCPU" "$CPU" "$MHZ"
fi

STATS=`uptime 2>/dev/null`
echo $STATS

echo
echo "Active Processes Using >= 1% of CPU:"
echo _________________________________________________________

if [ "$OS" = "Linux" -o "$OS" = "SunOS" ]
then
ps -e -o user -o pid -o c -o args 2>/dev/null | grep -v ' 0 '
elif [ "$OS" = "AIX" ]
then
ps -e -o user -o pid -o cpu -o args 2>/dev/null | grep -v ' 0 '
elif [ "$OS" = "SCO_SV" ]
then
ps -A -o user -o pid -o c -o args 2>/dev/null | grep -v ' 0 ' | grep -v $$ > /tmp/ps.tmp
echo "UID\\t\\tPID\\tC\\tCMD"
while read data
do
set $data
if [ $3 -gt 4 ]
then
echo -n $1\\t
if [ `expr length $1` -lt 8 ]
then echo -n \\t
fi
echo $2\\t$3\\t$4' '$5
fi
done < /tmp/ps.tmp fi echo _________________________________________________________ rm /tmp/si.tmp /tmp/usr.tmp /tmp/ps.tmp >/dev/null 2>&1
echo

No comments for this entry yet...

Leave a Reply

You must be logged in to post a comment.

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

But Wait, There's More!

A few highly recommended friends...