postinst is in check-mk-config-icinga 1.2.8p16-1ubuntu0.1.
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 | #!/bin/bash
set -e
# a little helper for getting permissions right
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
chown "$user":"$group" "$file"
chmod "$mode" "$file"
fi
}
dpkg-maintscript-helper mv_conffile \
/etc/icinga/objects/check_mk_templates.cfg \
/etc/icinga/objects/check_mk/check_mk_templates.cfg \
1.1.10-2 -- "$@"
# older releases (1.1.12p7-1 at least) delivered the multisite conffile to
# /etc/apache2/conf.d. If it exists we need to move it to conf-available
# once it's moved then the code below will setup the conf.d symlink.
# This code wasn't in place until 1.2.6p4-2, so we need to check everything
# before that.
dpkg-maintscript-helper mv_conffile \
/etc/apache2/conf.d/check_mk_multisite.cfg \
/etc/apache2/conf-available/check_mk_multisite.cfg \
1.2.6p4-2 -- "$@"
if [ -e '/etc/icinga/objects/check_mk_objects.cfg' ];
then
echo 'Migrate /etc/icinga/objects/check_mk_objects.cfg to /etc/icinga/objects/check_mk/check_mk_objects.cfg'
mv /etc/icinga/objects/check_mk_objects.cfg \
/etc/icinga/objects/check_mk/check_mk_objects.cfg
fi
case "$1" in
configure)
#make sure our nagios user exists
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
#fix permissions for some directorys
test -d /etc/icinga/objects/check_mk || mkdir -p /etc/icinga/objects/check_mk
setperm root nagios 0775 /etc/icinga/objects/check_mk
#handle the apache2.2 -> apache2.4 upgrade (see https://wiki.debian.org/Apache/PackagingFor24)
CONF="check-mk-multisite"
COMMON_STATE=$(dpkg-query -f '${Status}' -W 'apache2.2-common' 2>/dev/null | awk '{print $3}' || true)
if [ -e /usr/share/apache2/apache2-maintscript-helper ] ; then
. /usr/share/apache2/apache2-maintscript-helper
apache2_invoke enconf $CONF || exit $?
elif [ "$COMMON_STATE" = "installed" ] || [ "$COMMON_STATE" = "unpacked" ] ; then
if [ -d /etc/apache2/conf.d/ ]; then
if [ -L /etc/apache2/conf.d/$CONF.conf ]; then
# it's a symlink, all is well
true
elif [ -e /etc/apache2/conf.d/$CONF.conf ]; then
# it's not a symlink, but exists, error
echo "ERROR: /etc/apache2/conf.d/$CONF.conf is not a symlink, please investigate" 1>&2
else
# we need to create the symlink
ln -s ../conf-available/$CONF.conf /etc/apache2/conf.d/$CONF.conf
fi
fi
fi
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \$1'" >&2
exit 1
;;
esac
|