Magellan Linux

Annotation of /mage/trunk/include/mtools.minc

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2 - (hide annotations) (download)
Sat Jan 2 16:48:22 2010 UTC (14 years, 3 months ago) by niro
File size: 1617 byte(s)
-initial mage profiles and includes
1 niro 2 # $Header: /alx-cvs/mage-eglibc/include/mtools.minc,v 1.1.1.1 2008/03/05 15:10:52 niro Exp $
2    
3     # adds services to runlevels and starts them
4     # mstartservice service {/path/to/service_exec}
5     mstartservice()
6     {
7     local service="$1"
8     local service_exec="$2"
9    
10     [[ -z ${service_exec} ]] && service_exec="$(which ${service})"
11    
12     # add service to default runlevels
13     echo "Adding ${service} to default runlevels ..."
14     [[ -x ${MROOT}/etc/rc.d/init.d/${service} ]] && rc-config add ${service} &> /dev/null
15    
16     # do not start services on bootstrap or MROOT!=/
17     if [[ ${MAGE_BOOTSTRAP} != true ]] && [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]]
18     then
19     # start service
20     if [[ -n $(pidof ${service_exec}) ]]
21     then
22     # restart service
23     /etc/init.d/${service} restart
24     else
25     # start service
26     /etc/init.d/${service} start
27     fi
28     fi
29     }
30    
31     # removes services from runlevels and stops them
32     # mstopservice service {/path/to/service_exec}
33     mstopservice()
34     {
35     local service="$1"
36     local service_exec="$2"
37    
38     [[ -z ${service_exec} ]] && service_exec="$(which ${service})"
39    
40     # only stop the service if ${service_exec} does not exist
41     [[ -f ${MROOT}/${service_exec} ]] && return
42    
43     # del services from runlevel regardless if they exist or not
44     echo "Removing ${service} from default runlevels ..."
45     rc-config del ${service} &> /dev/null
46    
47     # do not stop services on bootstrap or MROOT!=/
48     if [[ ${MAGE_BOOTSTRAP} != true ]] && [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]]
49     then
50     # stop service if running
51     if [[ -n $(pidof ${service_exec}) ]]
52     then
53     killall -15 ${service_exec} &> /dev/null
54     sleep 1
55     killall -9 ${service_exec} &> /dev/null
56     fi
57     fi
58     }