#!/bin/sh
#******************************************************************************
# Summary : This shell script start synch towards NTP server. # #
#******************************************************************************
DAEMON="/usr/sbin/ntpdate"
MYSERVER1="0.de.pool.ntp.org"
MYSERVER2="1.de.pool.ntp.org"
MYSERVER3="2.de.pool.ntp.org"
MYSERVER4="3.de.pool.ntp.org"
MYSERVER5="ptbtime1.ptb.de"
MYSERVER6="ptbtime2.ptb.de"
TESTSERVER1=`ping -c 1 $MYSERVER1 | grep "100% packet loss"`
if [ -z "$TESTSERVER1" ]; then
MYFAVSERVER="$MYSERVER1"
echo -e "\033[1;37;42m$MYSERVER1 is Online\033[0m"
elif [ ! -z "$TESTSERVER1" ]; then
echo -e "\033[1;37;41mServer1 is OFFLINE, try Server2...\033[0m"
TESTSERVER2=`ping -c 1 $MYSERVER2 | grep "100% packet loss"`
if [ -z "$TESTSERVER2" ]; then
MYFAVSERVER="$MYSERVER2"
echo -e "\033[1;37;42m$MYSERVER2 is Online\033[0m"
fi
elif [ ! -z "$TESTSERVER1" ] && [ ! -z "$TESTSERVER2" ]; then
echo -e "\033[1;37;41mServer1 + Server2 are OFFLINE, try Server3...\033[0m"
TESTSERVER3=`ping -c 1 $MYSERVER3 | grep "100% packet loss"`
if [ -z "$TESTSERVER3" ]; then
MYFAVSERVER="$MYSERVER3"
echo -e "\033[1;37;42m$MYSERVER3 is Online\033[0m"
fi
elif [ ! -z "$TESTSERVER1" ] && [ ! -z "$TESTSERVER2" ] && [ ! -z "$TESTSERVER3" ]; then
echo -e "\033[1;37;41mServer1 + Server2 + Server3 are OFFLINE, try Server4...\033[0m"
TESTSERVER4=`ping -c 1 $MYSERVER4 | grep "100% packet loss"`
if [ -z "$TESTSERVER4" ]; then
MYFAVSERVER="$MYSERVER4"
echo -e "\033[1;37;42m$MYSERVER4 is Online\033[0m"
fi
elif [ ! -z "$TESTSERVER1" ] && [ ! -z "$TESTSERVER2" ] && [ ! -z "$TESTSERVER3" ] && [ ! -z "$TESTSERVER4" ]; then
echo -e "\033[1;37;41mServer1 + Server2 + Server3 +Server4 are OFFLINE, try Server5...\033[0m"
TESTSERVER5=`ping -c 1 $MYSERVER5 | grep "100% packet loss"`
if [ -z "$TESTSERVER5" ]; then
MYFAVSERVER="$MYSERVER5"
echo -e "\033[1;37;42m$MYSERVER5 is Online\033[0m"
fi
elif [ ! -z "$TESTSERVER1" ] && [ ! -z "$TESTSERVER2" ] && [ ! -z "$TESTSERVER3" ] && [ ! -z "$TESTSERVER4" ] && [ ! -z "$TESTSERVER5" ]; then
echo -e "\033[1;37;41mServer1 + Server2 + Server3 +Server4 + Server5 are OFFLINE, try Server6...\033[0m"
TESTSERVER6=`ping -c 1 $MYSERVER6 | grep "100% packet loss"`
if [ -z "$TESTSERVER6" ]; then
MYFAVSERVER="$MYSERVER6"
echo -e "\033[1;37;42m$MYSERVER6 is Online\033[0m"
fi
else
echo -e "\033[1;37;41mNO ntp-server available\033[0m"
MYFAVSERVER=""
fi
case "$1" in
start)
echo "Start $DAEMON"
if [ -f "$DAEMON" ] && [ ! -z "$MYFAVSERVER" ]; then
"$DAEMON" "$MYFAVSERVER" &
echo -e "\033[1;37;42mdone.\033[0m"
else
echo -e "\033[1;37;41mfailed.\033[0m"
fi
;;
stop)
echo -n 'Stop $DAEMON'
killall $DAEMON
echo -e "\033[1;37;42mdone.\033[0m"
;;
restart)
$0 stop
sleep 2
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac
exit 0