initial commit
This commit is contained in:
77
chapter20/stale_PP_mon.ksh
Executable file
77
chapter20/stale_PP_mon.ksh
Executable file
@@ -0,0 +1,77 @@
|
||||
#!/usr/bin/ksh
|
||||
#
|
||||
# SCRIPT: stale_PP_mon.ksh
|
||||
#
|
||||
# AUTHOR: Randy Michael
|
||||
# DATE: 01/29/07
|
||||
# REV: 1.2.P
|
||||
#
|
||||
# PLATFORM: AIX only
|
||||
#
|
||||
# PURPOSE: This shell script is used to query the system for stale PPs.
|
||||
# The method queries the system for all of the currently vaied-on
|
||||
# volume groups and then builds a list of the PVs to query. If a PV
|
||||
# query detects any stale partitions notification is sent to the
|
||||
# screen. Each step in the process has user notification
|
||||
#
|
||||
# REVISION LIST:
|
||||
#
|
||||
#
|
||||
# set -x # Uncomment to debug this shell script
|
||||
# set -n # Uncomment to check command syntax without any execution
|
||||
|
||||
case $(uname) in
|
||||
AIX) : # Correct OS
|
||||
# NOTE: a (:) colon is a no-op in Korn shell
|
||||
;;
|
||||
*) echo "\nERROR: This shell script will only work on AIX"
|
||||
echo "...EXITING...\n"
|
||||
exit 99
|
||||
;;
|
||||
esac
|
||||
|
||||
THIS_HOST=$(hostname) # Hostname of this machine
|
||||
FIRST_TIME=0 # Initialize to zero
|
||||
HDISK_LIST= # Initialize to NULL
|
||||
STALE_PP_COUNT=0 # Initialize to zero
|
||||
|
||||
# Infor the user at each step
|
||||
echo "\nGathering a list of hdisks to query\n"
|
||||
|
||||
# Loop through each currently varied-on VG
|
||||
|
||||
for VG in $(lsvg -o)
|
||||
do
|
||||
# Build a list of hdisks that belong to currently varied on VGs
|
||||
echo "Querying $VG for a list of disks"
|
||||
HDISK_LIST="$HDISK_LIST $(lsvg -p $VG |grep disk | awk '{print $1}')"
|
||||
done
|
||||
|
||||
echo "\nStarting the hdisk query on individual disks\n"
|
||||
|
||||
# Loop through each of the hdisks found in the previous loop
|
||||
|
||||
for HDISK in $(echo $HDISK_LIST)
|
||||
do
|
||||
# Query a new hdisk on each loop iteration
|
||||
|
||||
echo "Querying $HDISK for stale partitions"
|
||||
NUM_STALE_PP=$(lspv -L $HDISK | grep "STALE PARTITIONS:" | awk '{print $3}')
|
||||
# Check to see if the stale partition count is greater than zero
|
||||
if ((NUM_STALE_PP > 0))
|
||||
then
|
||||
# This hdisk has at least one stale partition - Report it!
|
||||
echo "\n${THIS_HOST}: Disk $HDISK has $NUM_STALE_PP Stale Partitions"
|
||||
if ((STALE_PP_COUNT == 0))
|
||||
then
|
||||
# Build a list of hdisks that have stale disk partitions
|
||||
STALE_HDISK_LIST=$(echo $STALE_HDISK_LIST; echo $HDISK)
|
||||
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
# If no stale partitions were found send a "all is good message"
|
||||
|
||||
((NUM_STALE_PP > 0)) || echo "\n${THIS_HOST}: No Stale PPs have been found...EXITING...\n"
|
||||
|
||||
Reference in New Issue
Block a user