OSDN Git Service

31641 /var/lock/subsys が存在しない場合にエラーになる の修正
[ultramonkey-l7/ultramonkey-l7-v3.git] / l7vsd / init.d / l7vsd
1 #!/bin/sh
2 # Start/Stop script for l7vsd
3 #
4 # chkconfig: - 95 34
5 # description: Start and stop l7vsd
6 #              
7 # processname: l7vsd
8 #
9 # Author: Shinya TAKEBAYASHI
10 # Released: January 2008
11 # License: GNU General Public License
12
13 L7VSD_OPTIONS=""
14
15 PROG="l7vsd"
16 DAEMON="/usr/sbin/l7vsd"
17 SOCKFILE="/var/run/l7vs/l7vs"
18 PIDFILE="/var/run/l7vsd.pid"
19 LOCKFILE="/var/lock/subsys/l7vsd"
20
21 start() {
22     if [ -e $PIDFILE ]; then
23         PROCS=`ps ax | grep $DAEMON | grep -v grep | wc -l`
24         if [ $PROCS -ne 0 ]; then
25             echo "$PROG is running."
26             RETVAL=255
27             return $RETVAL
28         fi
29         cleanup
30     fi
31
32     echo -n "Starting $PROG: " 
33     `$DAEMON $L7VSD_OPTIONS`
34     RETVAL=$?
35
36     if [ $RETVAL -ne 0 ]; then
37         echo "error occurred."
38         echo "$PROG was not started."
39     else
40         echo "done."
41         pidof $PROG > $PIDFILE
42         mkdir -p `dirname $LOCKFILE`
43         touch $LOCKFILE
44     fi
45
46     return $RETVAL
47 }
48
49 stop() {
50     PID=`pidof l7vsd`
51     if [ -z $PID ]; then
52         echo "$PROG is not running."
53         RETVAL=255
54         cleanup
55         return $RETVAL
56     fi
57
58     echo -n "Stopping $PROG: "
59     kill $PID
60     RETVAL=$?
61     
62     if [ $RETVAL -eq 0 ]; then
63         echo "done."
64         cleanup
65     fi
66
67     return $RETVAL
68 }
69
70 status() {
71     if [ ! -e $PIDFILE ]; then
72         echo "$PROG is not running."
73         RETVAL=255
74     else
75         echo -n "$PROG running with pid: "
76         cat $PIDFILE
77         RETVAL=$?
78     fi
79     return $RETVAL
80 }
81
82 cleanup() {
83         rm -rf $PIDFILE
84         rm -rf $SOCKFILE
85         rm -rf $LOCKFILE
86 }
87
88
89 # Prefer for Running script
90 if [ ! -x $DAEMON ]; then
91     echo "$DAEMON does not exist!"
92     RETVAL=255
93     exit $RETVAL
94 fi
95
96 case "$1" in
97     start)
98         start
99         ;;
100     
101     stop)
102         stop
103         ;;
104     
105     status)
106         status
107         ;;
108
109     restart)
110         stop
111         sleep 1
112         start
113         ;;
114
115     condrestart)
116         stop
117         sleep 1
118         start
119         ;;
120     
121     *)
122         echo $"Usage: $0 {start|stop|restart|condrestart|status}"
123         RETVAL=255
124
125 esac
126
127 exit $RETVAL