diff options
author | Joachim Tingvold <joachim@tingvold.com> | 2015-03-21 18:40:28 +0100 |
---|---|---|
committer | Joachim Tingvold <joachim@tingvold.com> | 2015-03-21 18:40:28 +0100 |
commit | d5c0e6ac02bd4bb1832434ef3fa502a21ac48432 (patch) | |
tree | 9f754351c81d4ee1ffd1526823842b52bbd0f054 /tools/make-dhcp6-init.sh | |
parent | 6bf0be13c4ac46f612251eb13cf2b23f94441cc5 (diff) |
Bootstrap-related files get it's own directory
Diffstat (limited to 'tools/make-dhcp6-init.sh')
-rwxr-xr-x | tools/make-dhcp6-init.sh | 210 |
1 files changed, 0 insertions, 210 deletions
diff --git a/tools/make-dhcp6-init.sh b/tools/make-dhcp6-init.sh deleted file mode 100755 index 468c973..0000000 --- a/tools/make-dhcp6-init.sh +++ /dev/null @@ -1,210 +0,0 @@ -#!/bin/bash - -DHCP_DEFAULT="/etc/default/isc-dhcp-server" -DHCP_INIT="/etc/init.d/isc-dhcp-server" - -if [ -e "${DHCP_DEFAULT}" ]; -then - echo "${DHCP_DEFAULT} exists!" - exit 1 -fi - -set -e - -cat > ${DHCP_DEFAULT}<<'_EOF' - -# Defaults for dhcp initscript - -# you can enable v4 and/or v6 protocols -V4_ENABLED="yes" -V6_ENABLED="yes" - -# On what interfaces should the DHCP server (dhcpd) serve DHCP requests? -# Separate multiple interfaces with spaces, e.g. "eth0 eth1". -INTERFACES_V4="eth0" -INTERFACES_V6="eth0" -_EOF - -set +e - -if [ -e "${DHCP_INIT}" ]; -then - echo "${DHCP_INIT} exists!" - exit 1 -fi - -set -e - -cat > ${DHCP_INIT}<<'_EOF' - -#!/bin/sh -# -# - -### BEGIN INIT INFO -# Provides: isc-dhcp-server -# Required-Start: $remote_fs $network $syslog -# Required-Stop: $remote_fs $network $syslog -# Should-Start: $local_fs slapd $named -# Should-Stop: $local_fs slapd -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: DHCP server -# Description: Dynamic Host Configuration Protocol Server -### END INIT INFO - -PATH=/sbin:/bin:/usr/sbin:/usr/bin - -test -f /usr/sbin/dhcpd || exit 0 - -# It is not safe to start if we don't have a default configuration... -if [ ! -f /etc/default/isc-dhcp-server ]; then - echo "/etc/default/isc-dhcp-server does not exist! - Aborting..." - echo "Run 'dpkg-reconfigure isc-dhcp-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.) -[ -f /etc/default/isc-dhcp-server ] && . /etc/default/isc-dhcp-server - -NAME=dhcpd -DESC="DHCPv4" -DHCPDPID=/var/run/dhcpd.pid - -NAME6=dhcpd6 -DESC6="DHCPv6" -DHCPDPID6=/var/run/dhcpd6.pid - - -# $1 -> version (-4 or -6) -# $2 -> config file (usually /etc/dhcp/dhcpd.conf or /etc/dhcp/dhcpd6.conf) -test_config() -{ - if ! /usr/sbin/dhcpd -t $1 -cf $2 -q > /dev/null 2>&1; then - echo "dhcpd self-test failed. Please fix the config file." - echo "The error was: " - /usr/sbin/dhcpd -t -6 -cf $2 - exit 1 - fi -} - -# $1 -> -v for messages, -q for none -# $2 -> PID file -# $3 -> NAME -check_status() -{ - if [ ! -r $2 ]; then - test "$1" != -v || echo "$3 is not running." - return 3 - fi - if read pid < "$2" && ps -p "$pid" > /dev/null 2>&1; then - test "$1" != -v || echo "$3 is running." - return 0 - else - test "$1" != -v || echo "$3 is not running but $2 exists." - return 1 - fi -} - - -start_daemon() -{ - VERSION=$1 - CONF_FILE=$2 - PROCESS=$3 - PIDFILE=$4 - DESCRIPTION=$5 - - shift 5 - INTERFACES=$* - - test_config "$VERSION" "$CONF_FILE"; - log_daemon_msg "Starting ISC $DESCRIPTION server" "$PROCESS"; - start-stop-daemon --start --quiet --pidfile $PIDFILE \ - --exec /usr/sbin/dhcpd -- $VERSION -q -cf $CONF_FILE \ - $INTERFACES - sleep 2 - if check_status -q $PIDFILE $NAME; then - log_end_msg 0 - else - log_failure_msg "check syslog for diagnostics." - log_end_msg 1 - exit 1 - fi -} - -stop_daemon() -{ - # Is DHCPv6 enabled? or daemon is runing ? - if test "$V6_ENABLED" = "yes" || check_status -q $DHCPDPID6 $NAME; then - log_daemon_msg "Stopping ISC DHCPv6 server" "$NAME6" - start-stop-daemon --stop --quiet --pidfile $DHCPDPID6 - log_end_msg $? - rm -f "$DHCPDPID6" - fi - - # Is DHCPv4 enabled or daemon is runing? - if test "$V4_ENABLED" = "yes" || check_status -q $DHCPDPID $NAME; then - log_daemon_msg "Stopping ISC DHCPv4 server" "$NAME" - start-stop-daemon --stop --quiet --pidfile $DHCPDPID - log_end_msg $? - rm -f "$DHCPDPID" - fi -} - - -case "$1" in - start) - # Is DHCPv6 enabled? - case "$V6_ENABLED" in - yes) - start_daemon "-6" "/etc/dhcp/dhcpd6.conf" \ - $NAME6 $DHCPDPID6 $DESC6 $INTERFACES_V6 - ;; - esac - - # Is DHCPv4 enabled? - case "$V4_ENABLED" in - yes) - start_daemon "-4" "/etc/dhcp/dhcpd.conf" \ - $NAME $DHCPDPID $DESC $INTERFACES_V4 - ;; - esac - - ;; - stop) - stop_daemon - ;; - 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 $DHCPDPID $NAME - echo -n "Status of $DESC6: " - check_status -v $DHCPDPID6 $NAME6 - - exit "$?" - ;; - *) - echo "Usage: $0 {start|stop|restart|force-reload|status}" - exit 1 -esac - -exit 0 - -_EOF - -set +e - -chmod 755 ${DHCP_INIT} - |