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