#! /bin/sh ### BEGIN INIT INFO # Provides: ntp # Required-Start: $network $remote_fs $syslog # Required-Stop: $network $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: # Short-Description: Start NTP daemon ### END INIT INFO PATH=/sbin:/bin:/usr/bin:/usr/sbin DAEMON=/usr/sbin/ntpd PIDFILE=/var/run/ntpd.pid # ntpd init.d script for ntpdc from ntp.isc.org test -x $DAEMON -a -r /etc/ntp.conf || exit 0 # rcS contains TICKADJ test -r /etc/default/rcS && . /etc/default/rcS # Source function library. . /etc/init.d/functions # Functions to do individual actions settick(){ # If TICKADJ is set we *must* adjust it before we start, because the # driftfile relies on the correct setting test -n "$TICKADJ" -a -x /usr/sbin/tickadj && { echo -n "Setting tick to $TICKADJ: " /usr/sbin/tickadj "$TICKADJ" echo "done" } } startdaemon(){ # The -g option allows ntpd to step the time to correct it just # once. The daemon will exit if the clock drifts too much after # this. If ntpd seems to disappear after a while assume TICKADJ # above is set to a totally incorrect value. echo -n "Starting ntpd: " start-stop-daemon --start --quiet --oknodo --pidfile $PIDFILE --startas $DAEMON -- -u ntp:ntp -p $PIDFILE "$@" echo "done" } stopdaemon(){ echo -n "Stopping ntpd: " start-stop-daemon --stop --quiet --oknodo -p $PIDFILE echo "done" } case "$1" in start) settick startdaemon -g ;; stop) stopdaemon ;; force-reload) stopdaemon settick startdaemon -g ;; restart) # Don't reset the tick here stopdaemon startdaemon -g ;; reload) # Must do this by hand, but don't do -g stopdaemon startdaemon ;; status) status /usr/sbin/ntpd; exit $? ;; *) echo "Usage: ntpd { start | stop | status | restart | reload }" >&2 exit 1 ;; esac exit 0