#!/bin/sh FNAME=`date '+%m%d%Y-%HHRS` SNAME=`date '+%B-%d-%Y-%HHRS'` LOC="/tmp" MAILID="ddd@123.com" ### Orinigal status of the drives before the action taken #### /usr/openv/volmgr/bin/vmoprcmd | grep -i down > $LOC/Drive_Status/OUTPUT/Drive_Origin.$FNAME echo "Down Drive Status as of " $SNAME > $LOC/Drive_Status/driveupdates echo "===============================================" >> $LOC/Drive_Status/driveupdates echo " " >> $LOC/Drive_Status/driveupdates echo "###### Please check the status of the drives once manually #######" >> $LOC/Drive_Status/driveupdates echo " " >> $LOC/Drive_Status/driveupdates echo "###### LTO 4 drives have to be manually made up #######" >> $LOC/Drive_Status/driveupdates echo " " >> $LOC/Drive_Status/driveupdates echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" >> $LOC/Drive_Status/driveupdates echo " " >> $LOC/Drive_Status/driveupdates ### Check all aviailable media servers and bring up the down'ed drives on those servers excluding LTO4 drives ### Available_Media server is a file created by us ### for server in `cat $LOC/Drive_Status/Available_Media_Servers` do /usr/local/bin/sudo /usr/openv/volmgr/bin/vmoprcmd -devconfig -l -h $server | grep -i down | awk '{print $8, $9, $3, $4}'| grep -v "hcart2" > $LOC/Drive_Status/OUTPUT/drivestate.$server if [ `cat $LOC/Drive_Status/OUTPUT/drivestate.$server | wc -l` -gt 0 ]; then ## echo "========================================" >> $LOC/Drive_Status/driveupdates echo $server >> $LOC/Drive_Status/driveupdates echo "========================================" >> $LOC/Drive_Status/driveupdates echo " " >> $LOC/Drive_Status/driveupdates cat $LOC/Drive_Status/OUTPUT/drivestate.$server >> $LOC/Drive_Status/driveupdates for indexnum in `cat $LOC/Drive_Status/OUTPUT/drivestate.$server | awk '{print $3}'` do /usr/openv/volmgr/bin/vmoprcmd -up $indexnum -h $server done echo " " >> $LOC/Drive_Status/driveupdates fi done ### Check status of LTO4 Drives echo "LTO4 Down Drive Status as of " $SNAME " -- NEEDS TO BE BROUGHT UP MANUALLY" > $LOC/Drive_Status/drivestateLTO4.$FNAME echo "========================================================================================" >> $LOC/Drive_Status/drivestateLTO4.$FNAME echo " " >> $LOC/Drive_Status/drivestateLTO4.$FNAME for server in `cat $LOC/Drive_Status/Available_Media_Servers` do /usr/local/bin/sudo /usr/openv/volmgr/bin/vmoprcmd -devconfig -l -h $server| grep -i down | grep -v PENDING | grep -i "hcart2" | awk '{print $8, $9, $3, $4}'>> $LOC/Drive_Status/drivestateLTO4.$FNAME done echo " " >> $LOC/Drive_Status/driveupdates echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" >> $LOC/Drive_Status/driveupdates echo " " >> $LOC/Drive_Status/driveupdates cat $LOC/Drive_Status/drivestateLTO4.$FNAME >> $LOC/Drive_Status/driveupdates echo "********************************************************************************************************************************" >> $LOC/Drive_Status/driveupdates echo "* The status of drives before action taken has been stored at --> $LOC/Drive_Status/OUTPUT/Drive_Origin."$FNAME " *" >> $LOC/Drive_Status/driveupdates echo "********************************************************************************************************************************" >> $LOC/Drive_Status/driveupdates cat /Drive_Status/driveupdates | mailx -s "Drive Status Report as of "$SNAME " $MAILID