Debian init.d script won't start service
Massimo Manghi
massimo.manghi at unipr.it
Sat Jan 15 11:29:03 UTC 2011
Hi Tim
I don't know if I'm getting to the point, but just in case you're running a
Debian 'squeeze' I remember that the dhcp3-server package based on the ISC
code was renamed into isc-dhcp-server. The init script was changed
accordingly. The former package exists as a transitional package, but the real
startup happens in /etc/init.d/isc-dhcp-server
-- Massimo
On Fri, 14 Jan 2011 12:20:06 -0800, Tim Gavin wrote
> I just had to move my DHCP server from a dying UPS. When I started
> the server back up, the service didn't come up. I restarted the
> server after a couple of failures to bring it up with
> /etc/init.d/dhcp3-server start (and restart).
>
> ps aux didn't show any DHCP processes.
>
> My attempts to restart the service didn't kick the log either. No
> failure messages from anything. I was able to start the service manually:
>
> sudo /usr/sbin/dhcpd3 -cf /etc/dhcp3/dhcpd.conf -lf
> /var/lib/dhcp3/dhcpd.leases
>
> But I never could figure out why the init script won't work :-/
>
> Can anyone look at this and tell me what's wrong with it?:
>
> cat /etc/init.d/dhcp3-server
> ----------------------------------------------------
> #!/bin/sh
> #
> # $Id: dhcp3-server.init.d,v 1.4 2003/07/13 19:12:41 mdz Exp $
> #
>
> ### BEGIN INIT INFO
> # Provides: dhcp3-server
> # Required-Start: $remote_fs $network $syslog
> # Required-Stop: $remote_fs $network $syslog
> # Should-Start: $local_fs slapd
> # Should-Stop: $local_fs slapd
> # Default-Start: 2 3 4 5
> # Default-Stop: 1
> # Short-Description: DHCP server
> # Description: Dynamic Host Configuration Protocol Server
> ### END INIT INFO
>
> PATH=/sbin:/bin:/usr/sbin:/usr/bin
>
> test -f /usr/sbin/dhcpd3 || exit 0
>
> # It is not safe to start if we don't have a default configuration...
> #if [ ! -f /etc/default/dhcp3-server ]; then
> # echo "/etc/default/dhcp3-server does not exist! - Aborting..."
> # echo "Run 'dpkg-reconfigure dhcp3-server' to fix the problem."
> exit 0
> #fi
>
> . /lib/lsb/init-functions
>
> # Read init script configuration (so far only interfaces the daemon
> # should listen on.)
> #. /etc/default/dhcp3-server
>
> NAME=dhcpd3
> DESC="DHCP server"
> DHCPDPID=/var/run/dhcpd.pid
>
> test_config()
> {
> if ! /usr/sbin/dhcpd3 -t -q > /dev/null 2>&1; then
> echo "dhcpd self-test failed. Please fix the config
> file." echo "The error was: "
> /usr/sbin/dhcpd3 -t exit 1 fi }
>
> # single arg is -v for messages, -q for none
> check_status()
> {
> if [ ! -r "$DHCPDPID" ]; then
> test "$1" != -v || echo "$NAME is not running."
> return 3
> fi
> if read pid < "$DHCPDPID" && ps -p "$pid" > /dev/null 2>&1; then
> test "$1" != -v || echo "$NAME is running."
> return 0
> else
> test "$1" != -v || echo "$NAME is not running but $DHCPDPID
> exists."
> return 1
> fi
> }
>
> case "$1" in
> start)
> test_config
> log_daemon_msg "Starting $DESC" "$NAME"
> start-stop-daemon --start --quiet --pidfile
> $DHCPDPID \ --exec /usr/sbin/dhcpd3 -- -q
$INTERFACES
> sleep 2
>
> if check_status -q; then
> log_end_msg 0
> else
> log_failure_msg "check syslog for diagnostics."
> log_end_msg 1
> exit 1
> fi
> ;;
> stop)
> log_daemon_msg "Stopping $DESC" "$NAME"
> start-stop-daemon --stop --quiet --pidfile $DHCPDPID
> log_end_msg $?
> rm -f "$DHCPDPID"
> ;;
> restart | force-reload)
> test_config
> $0 stop
> sleep 2
> $0 start
> if [ "$?" != "0" ]; then
> exit 1
> fi
> ;;
> status)
> echo -n "Status of $DESC: "
> check_status -v
> exit "$?"
> ;;
> *)
> echo "Usage: $0 {start|stop|restart|force-reload|status}"
> exit 1
> esac
>
> exit 0
> ---------------------------------------------------------
>
> Thanks!!!
> _______________________________________________
> dhcp-users mailing list
> dhcp-users at lists.isc.org
> https://lists.isc.org/mailman/listinfo/dhcp-users
--
More information about the dhcp-users
mailing list