[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

ddclient startup script problems



I'm having trouble getting ddclient to start and stop properly with the
init.d script.  ddclient will only start with "ddclient" at the command
prompt...it won't respond when I use "/etc/init.d/ddclient start".  This is
also making it difficult to start ddclient automatically at startup or on
reboot as the S21ddclient script in /etc/rc3.d/ will not run (my default
runlevel is 3).  I don't get any logged errors in syslog or messages.

Below is my init.d script for ddclient.  My guess is that there is something
incorrect in the first line, but I'm new at this and could be way off.  Any
suggestions?  Thanks in advance.

Dave
----------

#! /bin/sh
#
# init script for the dynamic DNS service update utility: ddclient

PATH=/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/ddclient
NAME="ddclient"
DESC="dynamic DNS service update utility"

# Don't run if not installed
test -f $DAEMON || exit 0

# Evaluate the config for the Debian scripts
run_daemon=true
daemon_interval=300

if [ -f /etc/default/ddclient ]; then
  . /etc/default/ddclient
fi

OPTIONS="-daemon $daemon_interval -syslog"

set -e

case "$1" in
  start)
        if [ "$run_daemon" != "true" ]; then
                exit 0
        fi
        echo -n "Starting $DESC: "
        start-stop-daemon --start --quiet --background \
                --pidfile /var/run/$NAME.pid --exec $DAEMON -- $OPTIONS
        echo "$NAME."
        ;;

  stop)
        echo -n "Stopping $DESC: "
                start-stop-daemon --stop --quiet --pidfile
/var/run/$NAME.pid \
                        --oknodo
        echo "$NAME."
        ;;

  #reload)
        #
        #       If the daemon can reload its config files on the fly
        #       for example by sending it SIGHUP, do it here.
        #
        #       If the daemon responds to changes in its config file
        #       directly anyway, make this a do-nothing entry.
        #
        # echo "Reloading $DESC configuration files."
        # start-stop-daemon --stop --signal 1 --quiet --pidfile \
        #       /var/run/$NAME.pid --exec $DAEMON
  #;;

  restart|force-reload)
        if [ $run_daemon != "true" ]; then
                exit 0
        fi
        #
        #       If the "reload" option is implemented, move the
"force-reload"
        #       option to the "reload" entry above. If not, "force-reload"
is
        #       just the same as "restart".
        #
        echo -n "Restarting $DESC: "
        #start-stop-daemon --stop --quiet --pidfile \
        #       /var/run/$NAME.pid --exec $DAEMON -- $OPTIONS
        $0 stop
        sleep 1
        $0 start
        #start-stop-daemon --start --quiet --pidfile \
        #/var/run/$NAME.pid --exec $DAEMON -- $OPTIONS
        echo "$NAME."
        ;;

  *)
        N=/etc/init.d/$NAME
        # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
        echo "Usage: $N {start|stop|restart|force-reload}" >&2
        exit 1
        ;;
esac

exit 0



Reply to: