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
|
#!/bin/bash
set -e
# debconf-devel(7) asks we do this
. /usr/share/debconf/confmodule
# some shorthands for sanity
en="/etc/nagios4"
enc="/etc/nagios4/conf.d"
usn="/usr/share/nagios4"
# location of the default apache configuration for nagios.
apacheconf="${en}/apache2.conf"
# location of the default htdigest authentication file.
htdigest="${en}/htdigest.users"
setperm() {
local user="${1}"
local group="${2}"
local mode="${3}"
local file="${4}"
shift 4
# only do something when no setting exists
if ! dpkg-statoverride --list "${file}" >/dev/null 2>&1
then
if [ -e "${file}" ]
then
chown "${user}":"${group}" "${file}"
chmod "${mode}" "${file}"
fi
fi
}
case "${1}" in
configure)
if ! getent passwd nagios > /dev/null
then
echo 'Adding system-user for nagios' 1>&2
adduser \
--system --group --home /var/lib/nagios \
--disabled-login --force-badname nagios > /dev/null
fi
# register apache2.conf via ucf:
ucf --debconf-ok /usr/share/nagios4-cgi/apache2.conf "${apacheconf}"
# apache2.conf uses this file
if [ ! -e "${htdigest}" ]
then
touch "${htdigest}"
setperm nagios www-data 0640 "${htdigest}"
fi
echo "enabling Apache2 config..."
COMMON_STATE=$(dpkg-query -f '${Status}' -W 'apache2.2-common' 2>/dev/null | awk '{print $3}' || true)
[ ! -s /usr/share/apache2/apache2-maintscript-helper ] || (
. /usr/share/apache2/apache2-maintscript-helper
apache2_invoke enmod cgi
apache2_invoke enconf nagios4-cgi
)
if [ -e /var/lib/nagios4/rw ]
then
setperm nagios www-data 0750 /var/lib/nagios4
setperm nagios www-data 2710 /var/lib/nagios4/rw
fi
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument '${1}'" >&2
exit 1
;;
esac
#DEBHELPER#
|