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
|
#!/bin/sh
ADMIN=sqlrelay
# Make sure the administrative user exists
getent group ${ADMIN} >/dev/null 2>&1 ||
(
echo Adding ${ADMIN} group
addgroup ${ADMIN}
grep "^${ADMIN}:" /etc/group
)
getent passwd ${ADMIN} >/dev/null 2>&1 ||
(
echo Adding ${ADMIN} user
adduser --system --shell /bin/bash --home /var/cache/${ADMIN} --ingroup ${ADMIN} --gecos "SQLRelay administrator" ${ADMIN}
grep "^${ADMIN}:" /etc/passwd
)
pid=`ps aux | grep ^${ADMIN} | grep -v grep | awk '{print $2}'`
if [ -n "${pid}" ]
then
if [ "$1" = upgrade ]
then
# Since we are upgrading, this script must exist:
su - ${ADMIN} -c /usr/sbin/sqlr-stop
/usr/sbin/sqlr-ipclean
sleep 2
fi
# Just in case something is still running
pid=`ps aux | grep ^${ADMIN} | grep -v grep | awk '{print $2}'`
if [ -n "${pid}" ]
then
echo Stopping SQLRelay instances +${pid}+ \(not found by the init.d script\)
kill ${pid}
sleep 1
kill -9 ${pid} 2>/dev/null
test -x /usr/sbin/sqlr-ipclean && /usr/sbin/sqlr-ipclean
fi
fi
# release 0.32 had a buggy sqlrelay.dtd
if ( test -f /etc/sqlrelay/sqlrelay.dtd && grep -q '<!DOCTYPE sqlrelay \[' /etc/sqlrelay/sqlrelay.dtd ); then
cp /etc/sqlrelay/sqlrelay.dtd /etc/sqlrelay/sqlrelay.dtd.pre-update
grep -v '<!DOCTYPE sqlrelay \[' /etc/sqlrelay/sqlrelay.dtd.pre-update | grep -v '\]>' > /etc/sqlrelay/sqlrelay.dtd
fi
#DEBHELPER#
exit 0
|