#!/bin/sh # # Gnucomo hardware reporting script # # Create a parameter report with 4 values: ### FUNCTIONS #### HP_PROLIANT() #Works on G5, G6, G7 { DMIBIOSVER=`dmidecode -s bios-version` DMIMAN=`dmidecode -s system-manufacturer` DMIPROD=`dmidecode -s system-product-name` DMISER=`dmidecode -s system-serial-number` USPREL=`cat /etc/issue | grep USP | awk '{print $1 " " $2}'` USPKERN=`uname -r` echo " " echo " System information" echo " $DMIMAN" echo " $DMIPROD" echo " $DMISER" echo " $DMIBIOSVER" echo " $USPKERN" echo " $USPREL" } # # The default Linux way without assuming specific hardware. # LINUX() { DMIBIOSVER=`dmidecode -s bios-version` DMIMAN=`dmidecode -s system-manufacturer` DMIPROD=`dmidecode -s system-product-name` DMISER=`dmidecode -s system-serial-number` USPREL=`cat /etc/issue | head -1` USPKERN=`uname -r` echo " " echo " System information" echo " $DMIMAN" echo " $DMIPROD" echo " $DMISER" echo " $DMIBIOSVER" echo " $USPKERN" echo " $USPREL" } SUN_SPARC_ENTERPRISE_T5120() { DMIBIOSVER=`prtpicl -c chassis -v | grep FW-version | awk '{ for (i=2; i<=NF; i++) printf("%s ",$i)}'` DMIMAN=`prtpicl -c chassis -v | grep :MfgName | awk '{ for (i=2; i<=NF; i++) printf("%s ",$i)}'` DMIPROD=`prtpicl -c chassis -v | grep :Description | awk '{ for (i=2; i<=NF; i++) printf("%s ",$i)}'` DMISER=`prtpicl -c chassis -v | grep :SerialNumber | awk '{ for (i=2; i<=NF; i++) printf("%s ",$i)}'` USPREL=`uname -sr` USPKERN=`uname -v` echo " " echo " System information" echo " $DMIMAN" echo " $DMIPROD" echo " $DMISER" echo " $DMIBIOSVER" echo " $USPKERN" echo " $USPREL" } SUN_SPARC_ENTERPRISE_T5220() { DMIBIOSVER=`prtpicl -c chassis -v | grep FW-version | awk '{ for (i=2; i<=NF; i++) printf("%s ",$i)}'` DMIMAN=`prtpicl -c chassis -v | grep :MfgName | awk '{ for (i=2; i<=NF; i++) printf("%s ",$i)}'` DMIPROD=`prtpicl -c chassis -v | grep :ModelName | awk '{ for (i=2; i<=NF; i++) printf("%s ",$i)}'` DMISER=`prtpicl -c chassis -v | grep :SerialNumber | awk '{ for (i=2; i<=NF; i++) printf("%s ",$i)}'` USPREL=`uname -sr` USPKERN=`uname -v` echo " " echo " System information" echo " $DMIMAN" echo " $DMIPROD" echo " $DMISER" echo " $DMIBIOSVER" echo " $USPKERN" echo " $USPREL" } SUN_FIRE_V() { DMIBIOSVER="N/A" DMIMAN="Sun Microsystems, Inc. " DMIPROD=`uname -i | cut -d"," -f2` DMISER=`prtpicl -c chassis-serial-number -v | grep SerialNumber | awk '{print $2}'` USPREL=`uname -sr` USPKERN=`uname -v` echo " " echo " System information" echo " $DMIMAN" echo " $DMIPROD" echo " $DMISER" echo " $DMIBIOSVER" echo " $USPKERN" echo " $USPREL" } PATH=$PATH:/usr/sbin HOST=`hostname` TIME=`date` OS=`uname` echo "" echo "" echo " " echo " XML" echo " $HOST" echo " $TIME" echo " " echo " " echo " " # insert correct system info here: case $OS in "Linux") #starting linux detection procedure PROD=`dmidecode -s system-product-name` case $PROD in "ProLiant DL380"*) HP_PROLIANT ;; "hp workstation xw8200") HP_PROLIANT ;; *) LINUX ;; esac ;; "SunOS") #starting sun detection procedure PROD=`uname -i` case $PROD in "SUNW,SPARC-Enterprise-T5220") SUN_SPARC_ENTERPRISE_T5220 ;; "SUNW,SPARC-Enterprise-T5120") SUN_SPARC_ENTERPRISE_T5120 ;; "SUNW,Sun-Fire-V245") SUN_FIRE_V ;; esac ;; esac echo " " echo " " echo " " echo ""