aboutsummaryrefslogtreecommitdiff
path: root/src/partimage/partimaged
blob: da810cbb1147c586d6cf47ec3680d9244499e8a8 (plain)
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
#!/bin/bash
# This file belongs in /etc/rc.d
#
###############################################################################

#inserting certain functions (like stat_busy)
. /etc/rc.conf
. /etc/rc.d/functions

PARTIMAGE=/usr/sbin/

# Check the file is there and is executable.
[ -x $PARTIMAGE/partimaged ] || exit 0

PID=`pidof -o %PPID /usr/sbin/partimaged`

# See how we were called.
case "$1" in
  start)
	stat_busy "Starting Partimage Daemon "
	if [ -z "$PID" ]; then 
	   /usr/sbin/partimaged -D &>/dev/null
	   RETVAL=$? #storing the status of the last command to RETVAL
	   if [ $? -gt 0 ]; then #if the status was other than 0, the command failed
	      stat_fail
	      exit 1
           else			
	      add_daemon partimaged
	      stat_done
	   fi
	else
	   stat_fail
	   echo ":: Daemon already started as pid $PID"
	   exit 1
	fi			    
	;;
  stop)
	stat_busy "Stopping Partimage Daemon "
	if [ "$PID" != "" ]; then #if PID exists
	   kill -KILL $PID &>/dev/null
	   stat_done
	   if [ $? -gt 0 ]; then
	      stat_fail
	      exit 1
	   else		  
	      RETVAL=$?
	      rm_daemon partimaged
      	   fi
  	 else   
	   stat_fail
	   echo ":: Daemon already stopped"
	   exit 1
   	fi
	;;
  restart|reload)
	$0 stop
	$0 start
	RETVAL=$?
	;;
  *)
	echo "Usage: partimaged {start|stop|restart|reload}"
	exit 1
esac
exit $RETVAL