File: preinst

package info (click to toggle)
sqlrelay 1%3A0.35-10
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 11,944 kB
  • ctags: 6,102
  • sloc: cpp: 41,419; python: 11,007; ansic: 10,279; java: 9,833; perl: 9,500; php: 9,229; ruby: 9,182; sh: 8,700; makefile: 3,474; tcl: 5
file content (51 lines) | stat: -rw-r--r-- 1,423 bytes parent folder | download
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