]> git.pld-linux.org Git - packages/bigsister.git/blob - bigsister.init
- bigsister not _check_user patch
[packages/bigsister.git] / bigsister.init
1 #!/bin/sh
2 #
3 # bigsister     Big Sister System and Network Monitor
4 #
5 # chkconfig:    345 98 99
6 # description:  Big Sister is System and Network Montoring system
7
8 # Source function library
9 . /etc/rc.d/init.d/functions
10
11 # Get network config
12 . /etc/sysconfig/network
13
14 # Get service config
15 [ -f /etc/sysconfig/bigsister ] && . /etc/sysconfig/bigsister
16
17 # Check that networking is up.
18 if is_yes "${NETWORKING}"; then
19         if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
20                 # nls "ERROR: Networking is down. %s can't be run." <service>
21                 msg_network_down Big Sister
22                 exit 1
23         fi
24 else
25         exit 0
26 fi
27
28 bs_killproc() {         # kill the named process(es)
29         msg_stopping "${4-$1}"
30         pid=`ps -e -o pid,comm,args 2>/dev/null | grep -w perl 2>/dev/null | grep " $1 " 2>/dev/null | grep -v grep | awk '{ print $1 }'`
31         if [ "$pid" != "" ]; then 
32                 kill $2 $pid && ok || fail
33         else
34                 [ "$3" != "y" ] && ok || died
35         fi
36 }
37
38
39 RETVAL=0
40 # See how we were called.
41 case "$1" in
42   start)
43         # Check if the service is already running?
44         if [ ! -f /var/lock/subsys/bigsister ]; then
45                 if is_yes "$UXMON_ASROOT" ; then
46                         uxmonprefix="/bin/sh"
47                 else
48                         uxmonprefix="su - bs -s /bin/sh"
49                 fi
50                 umask 022
51                 if [ -f /usr/lib/bs/bin/bsmon -a -f /etc/bs/etc/bsmon.cfg ]; then
52                         msg_starting "Big Sister bsmon"
53                         $uxmonprefix -c "/usr/bin/setsid /usr/lib/bs/bin/bsmon" > /dev/null 2>&1
54                         RETVAL=$?
55                         [ "$RETVAL" -eq 0 ] && ok || ( fail ; exit $RETVAL )
56                 fi
57                 if [ -f /usr/lib/bs/bin/bbd -a -f /etc/bs/adm/bb-display.cfg ]; then
58                         msg_starting "Big Sister bbd"
59                         $uxmonprefix -c "/usr/bin/setsid /usr/lib/bs/bin/bbd -b /usr/lib/bs $BBD_ARGS" >/dev/null 2>&1
60                         RETVAL=$?
61                         [ "$RETVAL" -eq 0 ] && ok || ( fail ; exit $RETVAL )
62                 fi
63                 for f in /etc/bs/adm/uxmon-net* ; do
64                         set `basename $f`
65                         case $1 in
66                           *bak|*%|*~|*.rpmsave|*.rpmorig|*.rpmnew)
67                                 continue
68                                 ;;
69                           *)
70                                 msg_starting "Big Sister uxmon $1"
71                                 $uxmonprefix -c "/usr/bin/setsid /usr/lib/bs/uxmon/uxmon -r /usr/lib/bs/uxmon/uxmon-rules.pl -b /usr/lib/bs -c $1" >/dev/null 2>&1
72                                 RETVAL=$?
73                                 [ "$RETVAL" -eq 0 ] && ok || ( fail ; exit $RETVAL )
74                                 ;;
75                         esac
76                 done
77                 if [ -f /etc/bs/adm/bstrapd.cfg ]; then
78                         # bstrapd will only run as root
79                         msg_starting "Big Sister bstrapd"
80                         /usr/bin/setsid /usr/lib/bs/bin/bstrapd >/dev/null 2>&1
81                         [ "$RETVAL" -eq 0 ] && ok || ( fail ; exit $RETVAL )
82                 fi
83                 touch /var/lock/subsys/bigsister
84         else
85                 msg_already_running "Big Sister"
86         fi
87         ;;
88   stop)
89         if [ -f /var/lock/subsys/bigsister ]; then
90                 bs_killproc uxmon -QUIT y "Big Sister uxmon"
91                 bs_killproc bbd -QUIT n "Big Sister bbd if running"
92                 bs_killproc bb_event_generator -QUIT n "Big Sister bb_event_generator if running"
93                 bs_killproc bsmon -QUIT n "Big Sister bsmon if running"
94                 bs_killproc bstrapd -QUIT n "Big Sister bstrapd if running"
95                 rm -f /var/lock/subsys/bigsister
96         else
97                 msg_not_running "Big Sister"
98         fi
99         ;;
100   status)
101         ;;
102   restart|force-reload)
103         $0 stop
104         $0 start
105         exit $?
106         ;;
107   *)
108         msg_usage "$0 {start|stop|restart|force-reload|status}"
109         exit 3
110 esac
111
112 exit $RETVAL
This page took 0.034014 seconds and 3 git commands to generate.