postinst is in isc-dhcp-server 4.1.ESV-R4-0ubuntu5.
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 | #!/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
;;
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 dhcp initscript
# sourced by /etc/init.d/dhcp
# installed at /etc/default/isc-dhcp-server by the maintainer scripts
#
# This is a POSIX shell fragment
#
# 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}"
TMPFILE=`mktemp -q ${INITCONFFILE}.new.XXXXXX`
sed -e "s,^[[:space:]]*INTERFACES[[:space:]]*=.*,INTERFACES=\"${INTERFACES}\"," \
<${INITCONFFILE} >${TMPFILE}
cp ${TMPFILE} ${INITCONFFILE}
rm ${TMPFILE}
# ------------------------- 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 [ -e "/etc/init/isc-dhcp-server.conf" ]; then
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 [ -e "/etc/init/isc-dhcp-server6.conf" ]; then
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
|