
#!/bin/sh
# File	: chk_ossv-backups.sh
# By	: Maarten.deBoer@Atos.net, 120221
# Subject	: Script to check OSSV backups
PGM="`basename $0|cut -d\. -f1`"
VERSION="0.1"
TMP="/tmp/${PGM}.$$"
ETCFILE="${HOME}/etc/ossv-backups"
SSH="/usr/bin/ssh -n"
MAILTO="maarten.deboer@atos.net"

FILER="nlnaf59"
VFILER="nlnafvslb09"
OSSVVOL="av_slb09_vol999"

echo "Checking OSSV backups from vfiler ${FILER}/${VFILER} onto volume ${OSSVVOL} (`date`) "|tee -a ${TMP}
sleep 1

echo " " >> ${TMP}
cat ${ETCFILE}|grep -v ^#|awk '{print $1,$2}'|while read CLIENT FS
do
  echo "${CLIENT} ${FS}"
  ${SSH} ${FILER} vfiler run ${VFILER} snapvault status|grep ${CLIENT}|grep "${FS} "|awk '{print $1,$2,$3}' |while read SOURCE DEST STATUS
  do
    if [ "${STATUS}" = "" ]; then
      echo "${CLIENT} ${FS} OSSV-backup NOT started" 
    fi
    if [ "${STATUS}" != "Snapvaulted" ]; then
      echo "${SOURCE} ${DEST} ${STATUS}"|tee -a ${TMP}
      if [ "${1}" = "restart" ]; then
        echo "Restarting ${SOURCE} ${DEST}"
        ${SSH} ${FILER} vfiler run ${VFILER} snapvault start -S ${SOURCE} ${DEST}
      fi
      ${SSH} ${FILER} vfiler run ${VFILER} snapvault status -l ${DEST}|egrep 'Status|Progress'|tee -a ${TMP}
    fi
  done
#  echo "|${SOURCE}|${DEST}|${STATUS}|"
done

echo "" >> ${TMP}
echo "" >> ${TMP}
echo "Checked backups are: " >> ${TMP}
cat ${ETCFILE}|grep -v ^#|awk '{print $1,$2}' >> ${TMP}

cat ${TMP} | mailx -s "Check OSSV backups from ${FILER}/${VFILER} [${PGM} v${VERSION}]" ${MAILTO}
echo "Mailed to ${MAILTO}"

rm ${TMP}
exit 0

