87 lines
1.3 KiB
Bash
87 lines
1.3 KiB
Bash
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
DAEMON=/usr/sbin/chronyd
|
|
RUNDIR=/run/chrony
|
|
VARDIR=/var/lib/chrony
|
|
LOGDIR=/var/log/chrony
|
|
PIDFILE=${RUNDIR}/chrony.pid
|
|
USER=ntp
|
|
GROUP=ntp
|
|
|
|
# Start/stop/restart chrony daemon.
|
|
__start() {
|
|
if [ -e $RUNDIR ]; then
|
|
chown -R ${USER}:${GROUP} $RUNDIR
|
|
else
|
|
install -dm 0750 -o $USER -g $GROUP $RUNDIR
|
|
fi
|
|
|
|
if [ -e $VARDIR ]; then
|
|
chown -R ${USER}:${GROUP} $VARDIR
|
|
else
|
|
install -dm 0755 -o $USER -g $GROUP $VARDIR
|
|
fi
|
|
|
|
if [ -e $LOGDIR ]; then
|
|
chown -R ${USER}:${GROUP} $LOGDIR
|
|
else
|
|
install -dm 0755 -o $USER -g $GROUP $LOGDIR
|
|
fi
|
|
|
|
if [ -e ${VARDIR}/drift ]; then
|
|
:
|
|
else
|
|
touch ${VARDIR}/drift
|
|
fi
|
|
|
|
chown ${USER}:${GROUP} ${VARDIR}/drift
|
|
|
|
if [ -x $DAEMON ]; then
|
|
echo "Starting NTP daemon: $DAEMON -m"
|
|
$DAEMON -m
|
|
fi
|
|
}
|
|
|
|
__stop() {
|
|
echo "Stopping NTP daemon: $DAEMON -m"
|
|
if [ -r $PIDFILE ]; then
|
|
kill $(cat $PIDFILE)
|
|
else
|
|
echo "Chronyd is not running"
|
|
fi
|
|
}
|
|
|
|
__restart() {
|
|
__stop
|
|
|
|
for i in 1 2 3; do
|
|
if [ -r $PIDFILE ]; then
|
|
# ash/dash/nash builtin echo just ignoring -n option
|
|
/usr/bin/echo -n "."
|
|
sleep 1
|
|
else
|
|
break
|
|
fi
|
|
done
|
|
|
|
echo
|
|
|
|
__start
|
|
}
|
|
|
|
case "$1" in
|
|
'start')
|
|
__start
|
|
;;
|
|
'stop')
|
|
__stop
|
|
;;
|
|
'restart')
|
|
__restart
|
|
;;
|
|
*)
|
|
echo "usage $0 start|stop|restart"
|
|
esac
|