File: oar-common.postrm

package info (click to toggle)
oar 2.6.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 9,700 kB
  • sloc: perl: 34,517; sh: 6,041; ruby: 5,840; sql: 3,390; cpp: 2,277; makefile: 402; php: 365; ansic: 335; python: 275; exp: 23
file content (103 lines) | stat: -rw-r--r-- 3,560 bytes parent folder | download | duplicates (7)
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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#! /bin/sh
# postrm script for oar-common
#
# see: dh_installdeb(1)

set -e
#set -x 

OAROWNER=oar
OAROWNERGROUP=oar

case "$1" in
	remove|disappear)
	    chsh -s /bin/bash $OAROWNER
            ;;
        upgrade|failed-upgrade|abort-install|abort-upgrade)
	    ;;
	purge)

            # find first and last SYSTEM_UID numbers
            for LINE in `grep SYSTEM_UID /etc/adduser.conf | grep -v "^#"`; do
                case $LINE in
                    FIRST_SYSTEM_UID*)
                        FIRST_SYSTEM_UID=`echo $LINE | cut -f2 -d '='`
                        ;;
                    LAST_SYSTEM_UID*)
                        LAST_SYSTEM_UID=`echo $LINE | cut -f2 -d '='`
                        ;;
                    *)
                        ;;
                esac
            done
            # Remove system account if necessary
            CREATEDUSER="$OAROWNER"
            if [ -n "$FIRST_SYSTEM_UID" ] && [ -n "$LAST_SYSTEM_UID" ]; then
                if USERID=`getent passwd $CREATEDUSER | cut -f 3 -d ':'`; then
                    if [ -n "$USERID" ]; then
                        if [ "$FIRST_SYSTEM_UID" -le "$USERID" ] && \
                            [ "$USERID" -le "$LAST_SYSTEM_UID" ]; then
                        echo -n "Removing $CREATEDUSER system user.."
                        deluser --quiet $CREATEDUSER || true
                        echo "..done"
                    fi
                fi
            fi
        fi
        # Remove system group if necessary
        CREATEDGROUP=$OAROWNERGROUP
        FIRST_USER_GID=$(grep ^USERS_GID /etc/adduser.conf | cut -f2 -d '=')
        if [ -n "$FIRST_USER_GID" ]; then
            if GROUPGID=$(getent group $CREATEDGROUP | cut -f 3 -d ':'); then
                if [ -n "$GROUPGID" ]; then
                    if [ "$FIRST_USER_GID" -gt "$GROUPGID" ]; then
                        echo -n "Removing $CREATEDGROUP group.."
                        delgroup --only-if-empty $CREATEDGROUP || true
                        echo "..done"
                    fi
                fi
            fi
        fi

        # Remove the possible conffiles 
        for conffile in /etc/oar/oar.conf \
                        /etc/oar/oarnodesetting_ssh \
                        /etc/oar/update_cpuset_id.sh; do 
            # we mimic dpkg as closely as possible, so we remove configuration
            # files with dpkg backup extensions too:
            ### Some of the following is from Tore Anderson:
            for ext in '~' '%' .bak .dpkg-tmp .dpkg-new .dpkg-old .dpkg-dist .ucf-old .ucf-new .ucf-dist;  do
                    rm -f $conffile$ext
            done
            # remove the configuration file itself
            rm -f $conffile
            # and finally clear it out from the ucf database
            if which ucf >/dev/null; then
                    ucf --purge $conffile
            fi
            if which ucfr >/dev/null; then
                    ucfr --purge oar-common $conffile
            fi
        done

        for ext in .0 .1.gz .2.gz .3.gz .4.gz .5.gz .6.gz .7.gz; do
            rm -f /var/log/oar.log$ext
        done
        rm -f /var/log/oar.log
        rm -rf /var/run/oar
        rm -f /var/lib/oar/.bash_oar
        rm -f /var/lib/oar/.bash_profile
        rm -f /var/lib/oar/.bashrc
        rm -f /var/lib/oar/.batch_job_bashrc
        rm -rf /var/lib/oar/.ssh
        rmdir /var/lib/oar || true
        rmdir /etc/oar || true
        ;;
  *)
    echo "postrm called with unknown argument \`$1'" >&2
    exit 1
esac

#DEBHELPER#

exit 0