41 lines
1,013 B
Django/Jinja
41 lines
1,013 B
Django/Jinja
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
|
|
|
# This is a heuristic: The idea is that if a static interface is brought
|
|
# up, that is a major event, and we can put in some extra effort to fix
|
|
# the system time. Feel free to change this, especially if you regularly
|
|
# bring up new network interfaces.
|
|
if [ "$METHOD" = static ]; then
|
|
OPTS="-b"
|
|
fi
|
|
|
|
if [ "$METHOD" = loopback ] || [ "$METHOD" = none ]; then
|
|
exit 0
|
|
fi
|
|
|
|
# only run on primary network interface
|
|
if [ "$IFACE" != {{ ansible_default_ipv4.interface }} ]; then
|
|
exit 0
|
|
fi
|
|
|
|
# Check whether ntpdate was removed but not purged; it's useless to wait for
|
|
# it in that case.
|
|
if [ ! -x /usr/sbin/ntpdate-debian ] && [ -d /usr/sbin ]; then
|
|
exit 0
|
|
fi
|
|
|
|
(
|
|
|
|
# This is for the case that /usr will be mounted later.
|
|
if [ -r /lib/udev/hotplug.functions ]; then
|
|
. /lib/udev/hotplug.functions
|
|
wait_for_file /usr/sbin/ntpdate-debian
|
|
fi
|
|
|
|
# Avoid running more than one at a time
|
|
flock -n /run/lock/ntpdate /usr/sbin/ntpdate-debian -s $OPTS 2>/dev/null || :
|
|
|
|
) &
|