1#!/bin/sh 2# 3# $Id: dhcp3-server.init.d,v 1.4 2003/07/13 19:12:41 mdz Exp $ 4# 5 6# On what interfaces should the DHCP server (dhcpd) serve DHCP requests? 7# Separate multiple interfaces with spaces, e.g. "eth0 eth1". 8INTERFACES="" 9 10# Additional options that are passed to the DHCP server daemon? 11OPTIONS="" 12 13NAME="dhcpd" 14DAEMON="/usr/sbin/${NAME}" 15CFG_FILE="/etc/default/${NAME}" 16 17# Read configuration variable file if it is present 18[ -r "${CFG_FILE}" ] && . "${CFG_FILE}" 19 20# Sanity checks 21test -f /usr/sbin/dhcpd || exit 0 22test -f /etc/dhcp/dhcpd.conf || exit 0 23 24case "$1" in 25 start) 26 printf "Starting DHCP server: " 27 test -d /var/lib/dhcp/ || mkdir -p /var/lib/dhcp/ 28 test -f /var/lib/dhcp/dhcpd.leases || touch /var/lib/dhcp/dhcpd.leases 29 start-stop-daemon -S -q -x ${DAEMON} -- -q $OPTIONS $INTERFACES 30 [ $? = 0 ] && echo "OK" || echo "FAIL" 31 ;; 32 stop) 33 printf "Stopping DHCP server: " 34 start-stop-daemon -K -q -x ${DAEMON} 35 [ $? = 0 ] && echo "OK" || echo "FAIL" 36 ;; 37 restart | force-reload) 38 $0 stop 39 $0 start 40 if [ "$?" != "0" ]; then 41 exit 1 42 fi 43 ;; 44 *) 45 echo "Usage: $0 {start|stop|restart|force-reload}" 46 exit 1 47esac 48 49exit 0 50