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
|
#!/bin/sh
# postinst script for x2gobroker-agent
#
# see: dh_installdeb(1)
set -e
# Source debconf library.
. /usr/share/debconf/confmodule
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
configure)
# setup user/group x2gobroker
if ! getent group x2gobroker 1>/dev/null; then
echo "Creating x2gobroker group." 1>&2
addgroup --system x2gobroker
else
echo "Group x2gobroker already exists." 1>&2
fi
if ! getent passwd x2gobroker 1>/dev/null; then
echo "Creating x2gobroker user." 1>&2
adduser --system \
--disabled-password --disabled-login \
--shell /bin/bash --group --home /var/lib/x2gobroker x2gobroker
else
echo "User x2gobroker already exists." 1>&2
# make sure the home directory exists belongs to x2gobroker:x2gobroker
mkdir -p /var/lib/x2gobroker
chown x2gobroker:x2gobroker /var/lib/x2gobroker -f
# make sure all settings are appropriate
if getent passwd x2gobroker | grep /dev/null 1>/dev/null 2>/dev/null; then
usermod --home /var/lib/x2gobroker x2gobroker
fi
if getent passwd x2gobroker | grep /bin/false 1>/dev/null 2>/dev/null; then
usermod --shell /bin/bash x2gobroker
fi
fi
# the x2gobroker-agent has to be installed setuid root
if ! dpkg-statoverride --list /usr/lib/x2go/x2gobroker-agent 1>/dev/null; then
dpkg-statoverride --add --update root x2gobroker 4750 /usr/lib/x2go/x2gobroker-agent
fi
mkdir -p /var/log/x2gobroker && chown x2gobroker:adm /var/log/x2gobroker && chmod 2755 /var/log/x2gobroker
touch /var/log/x2gobroker/broker.log && chown x2gobroker:adm /var/log/x2gobroker/broker.log
touch /var/log/x2gobroker/error.log && chown x2gobroker:adm /var/log/x2gobroker/error.log
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" 1>&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0
|