Role service-ntpd: only run ntpdate on primary interface during if-up
This commit is contained in:
parent
f43931649a
commit
f9700c4dd8
2 changed files with 49 additions and 0 deletions
|
@ -15,6 +15,14 @@
|
||||||
- ntpdate
|
- ntpdate
|
||||||
- ntpstat
|
- ntpstat
|
||||||
|
|
||||||
|
- name: update if-up ntpdate script
|
||||||
|
template:
|
||||||
|
src: ntpdate.j2
|
||||||
|
dest: /etc/network/if-up.d/ntpdate
|
||||||
|
mode: 0755
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
|
||||||
- name: enable and start ntp daemon
|
- name: enable and start ntp daemon
|
||||||
systemd:
|
systemd:
|
||||||
name: ntp
|
name: ntp
|
||||||
|
|
41
roles/service-ntpd/templates/ntpdate.j2
Normal file
41
roles/service-ntpd/templates/ntpdate.j2
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
#!/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 || :
|
||||||
|
|
||||||
|
) &
|
Loading…
Reference in a new issue