prerm is in ejabberd 16.01-2.
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 | #! /bin/sh
# prerm script for ejabberd
#
# see: dh_installdeb(1)
set -e
ctl() {
local cmd='/usr/sbin/ejabberdctl'
for arg in "$@"; do
cmd="$cmd '$arg'"
done
su ejabberd -c "$cmd"
}
case "$1" in
remove|upgrade)
if ctl status >/dev/null ; then
# Use timestamp to make database restoring easier
TIME=$(date +%Y-%m-%dT%H:%M:%S)
BACKUPDIR=$(mktemp -d -p /var/backups/ ejabberd-$TIME.XXXXXX)
chown ejabberd:ejabberd $BACKUPDIR
BACKUP=$BACKUPDIR/ejabberd-database
ctl backup $BACKUP
# Change ownership to root:root because ejabberd user might be
# removed on package removal.
chown -R root:root $BACKUPDIR
chmod 700 $BACKUPDIR
echo
echo The ejabberd database has been backed up to $BACKUP.
echo
fi
;;
deconfigure)
;;
failed-upgrade)
;;
*)
echo "prerm called with unknown argument \`$1'" >&2
exit 1
;;
esac
# Automatically added by dh_installinit
if ([ -x "/etc/init.d/ejabberd" ] || [ -e "/etc/init/ejabberd.conf" ]) && \
[ "$1" = remove ]; then
invoke-rc.d ejabberd stop || exit $?
fi
# End automatically added section
case "$1" in
remove|purge)
pkill -u ejabberd || true
;;
esac
exit 0
|