blob: d6fd8f25b56295b71d915171304954a2bbefc8c2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
#!/bin/sh
max_attempts=4
# This script takes a list of ntp servers and passes them to ntpd to set the
# system time. If a /etc/ntpd.conf file exists, the servers there are used,
# if not, some default values are passed
set_time() {
# -q flag makes ntpd exit after setting the time once
ntpd -q -n -p "$1"
}
check_time() {
for attempt in $(seq "$max_attempts"); do
for arg ; do
echo $arg
if set_time "$arg" ; then
return 0
fi
done
sleep 2
done
return 1
}
if [ -f /etc/ntpd.conf ]; then
server_list=`cat /etc/ntpd.conf | sed ':a;N;$!ba;s/\n/ /g;s/server//g'`
check_time $server_list
else
# Use a default list if there's no config
check_time 0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org
fi
|