#! /bin/bash MAXTRYTIMES=5 LOGFILE=/tmp/eischkcfg.log LOG () { echo $1 echo [`date`]"$1" >> $LOGFILE } LOG "Start testing NTP server." chmod a+w $LOGFILE NTPSERVERNAME=ntp.uow.edu.au i="0" while [ $i -lt $MAXTRYTIMES ] do i=$[$i+1] ping -c 3 $NTPSERVERNAME > /dev/null 2>&1 if [ $? -ne 0 ] then LOG "ERROR: NTP server is not responding!" # sleep for 5 to 10 secs before next try sleep $(( ( RANDOM % 10 ) + 5 )) else LOG "NTP server is working." break fi done LOG "Sync time now." ntpdate $NTPSERVERNAME >> $LOGFILE 2>&1 LOG "Start testing home folder server." HOMEFOLDERSERVERNAME=home.adeis.uow.edu.au i="0" while [ $i -lt $MAXTRYTIMES ] do i=$[$i+1] ping -c 3 $HOMEFOLDERSERVERNAME > /dev/null 2>&1 if [ $? -ne 0 ] then LOG "ERROR: Home folder server is not responding!" # sleep for 5 to 10 secs before next try sleep $(( ( RANDOM % 10 ) + 5 )) else LOG "Home folder server is working." break fi done i="0" while [ $i -lt $MAXTRYTIMES ] do i=$[$i+1] if [ ! -d /home/undergrad/ ] then LOG "ERROR: Undergrad home folder is not available!" LOG "Try to restart autofs service." service --status-all | grep -q autofs if [ $? -eq 0 ]; then service autofs restart >> $LOGFILE 2>&1 ; else /etc/init.d/autofs restart >> $LOGFILE 2>&1 ; fi # sleep for 5 to 10 secs before next try sleep $(( ( RANDOM % 10 ) + 5 )) fi done