postinst is in isc-dhcp-server 4.2.4-7ubuntu12.
This file is a maintainer script. It is executed when installing (*inst) or removing (*rm) the package.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 | #!/bin/sh
#
# Inspiration stolen from the fetchmail* packages. Thanks Henrique!
#
#
set -e
case "$1" in
configure)
# create system dhcpd user and group
adduser --system --quiet --no-create-home --home /var/run --group dhcpd
# create ddns keys directory
if [ ! -e /etc/dhcp/ddns-keys/ ]; then
mkdir -m 750 /etc/dhcp/ddns-keys/
chown root:dhcpd /etc/dhcp/ddns-keys/
fi
;;
abort-upgrade|abort-remove|abort-deconfigure)
exit 0
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 0
;;
esac
# Handle debconf
. /usr/share/debconf/confmodule
INITCONFFILE="/etc/default/isc-dhcp-server"
# We generate several files during the postinst, and we don't want
# them to be readable only by root.
umask 022
# Generate configuration file if it does not exist, using default values.
[ -r "${INITCONFFILE}" ] || {
echo Generating ${INITCONFFILE}... >&2
cat >${INITCONFFILE} <<'EOFMAGICNUMBER1234'
# Defaults for isc-dhcp-server initscript
# sourced by /etc/init.d/isc-dhcp-server
# installed at /etc/default/isc-dhcp-server by the maintainer scripts
#
# This is a POSIX shell fragment
#
# Path to dhcpd's config file (default: /etc/dhcp/dhcpd.conf).
#DHCPD_CONF=/etc/dhcp/dhcpd.conf
# Path to dhcpd's PID file (default: /var/run/dhcpd.pid).
#DHCPD_PID=/var/run/dhcpd.pid
# Additional options to start dhcpd with.
# Don't use options -cf or -pf here; use DHCPD_CONF/ DHCPD_PID instead
#OPTIONS=""
# On what interfaces should the DHCP server (dhcpd) serve DHCP requests?
# Separate multiple interfaces with spaces, e.g. "eth0 eth1".
INTERFACES=""
EOFMAGICNUMBER1234
}
# ------------------------- Debconf questions start ---------------------
db_get isc-dhcp-server/interfaces || true
INTERFACES="${RET}"
if [ -n "$INTERFACES" ]; then
TMPFILE="$(mktemp -q ${INITCONFFILE}.new.XXXXXX)"
sed -e "s,^[[:space:]]*INTERFACES[[:space:]]*=.*,INTERFACES=\"${INTERFACES}\"," \
<${INITCONFFILE} >${TMPFILE}
cp ${TMPFILE} ${INITCONFFILE}
rm ${TMPFILE}
fi
# ------------------------- Debconf questions end ---------------------
db_stop
if [ ! -e /var/lib/dhcp/dhcpd.leases ]; then
if test -e /var/lib/dhcp3/dhcpd.leases; then
cp /var/lib/dhcp3/dhcpd.leases /var/lib/dhcp/dhcpd.leases
else
touch /var/lib/dhcp/dhcpd.leases
fi
fi
# If we're upgrading from dhcp3, copy the config and leases over to the new
# locations
if [ -z "$2" ]; then
if [ -f /etc/dhcp3/dhcpd.conf ]; then
cp /etc/dhcp3/dhcpd.conf /etc/dhcp/dhcpd.conf
fi
if [ -f /var/lib/dhcp3/dhcpd.leases ]; then
cp /var/lib/dhcp3/dhcpd.leases /var/lib/dhcp/dhcpd.leases
fi
fi
[ -x /sbin/restorecon ] && restorecon /var/lib/dhcp/dhcpd.leases
init_script_error_handler()
{
return 0
}
# Automatically added by dh_installinit
if [ -x "/etc/init.d/isc-dhcp-server" ] || [ -e "/etc/init/isc-dhcp-server.conf" ]; then
if [ ! -e "/etc/init/isc-dhcp-server.conf" ]; then
update-rc.d isc-dhcp-server defaults >/dev/null
fi
invoke-rc.d isc-dhcp-server start || exit $?
fi
# End automatically added section
# Automatically added by dh_installinit
update-rc.d -f isc-dhcp-server remove >/dev/null || exit $?
# End automatically added section
# Automatically added by dh_installinit
if [ -x "/etc/init.d/isc-dhcp-server6" ] || [ -e "/etc/init/isc-dhcp-server6.conf" ]; then
if [ ! -e "/etc/init/isc-dhcp-server6.conf" ]; then
update-rc.d isc-dhcp-server6 defaults >/dev/null
fi
invoke-rc.d isc-dhcp-server6 start || exit $?
fi
# End automatically added section
# Automatically added by dh_installinit
update-rc.d -f isc-dhcp-server6 remove >/dev/null || exit $?
# End automatically added section
# Automatically added by dh_apparmor
if [ "$1" = "configure" ]; then
APP_PROFILE="/etc/apparmor.d/usr.sbin.dhcpd"
if [ -f "$APP_PROFILE" ]; then
# Add the local/ include
LOCAL_APP_PROFILE="/etc/apparmor.d/local/usr.sbin.dhcpd"
test -e "$LOCAL_APP_PROFILE" || {
tmp=`mktemp`
cat <<EOM > "$tmp"
# Site-specific additions and overrides for usr.sbin.dhcpd.
# For more details, please see /etc/apparmor.d/local/README.
EOM
mkdir `dirname "$LOCAL_APP_PROFILE"` 2>/dev/null || true
mv -f "$tmp" "$LOCAL_APP_PROFILE"
chmod 644 "$LOCAL_APP_PROFILE"
}
# Reload the profile, including any abstraction updates
if aa-status --enabled 2>/dev/null; then
apparmor_parser -r -T -W "$APP_PROFILE" || true
fi
fi
fi
# End automatically added section
exit 0
|