]> git.pld-linux.org Git - packages/memcached.git/blob - memcached.init
- rebuild with libevent 2.1.11
[packages/memcached.git] / memcached.init
1 #!/bin/sh
2 #
3 # memcached             memcached
4 #
5 # chkconfig:    345 60 40
6 #
7 # description:  memcached is a cache daemon.
8 #
9 # processname:  memcached
10 # pidfile:      /var/run/memcached.pid
11 #
12
13 # Source function library
14 . /etc/rc.d/init.d/functions
15
16 # Get network config
17 . /etc/sysconfig/network
18
19 MEMUSAGE="64"
20 MEMCACHED_RUNAS="memcached"
21 MAXCONN="1024"
22 LISTEN="127.0.0.1:11211"
23
24 # Get service config
25 [ -f /etc/sysconfig/memcached ] && . /etc/sysconfig/memcached
26
27 if [ "$LISTENON" -a "$PORT" ]; then
28         # backward compat config
29         LISTEN="$LISTENON:$PORT"
30 fi
31
32 start() {
33         # Check if the service is already running?
34         if [ -f /var/lock/subsys/memcached ]; then
35                 msg_already_running "memcached"
36                 return
37         fi
38
39         local listen ip port ret=0
40         for listen in $LISTEN; do
41                 ip=${listen%:*}
42                 port=${listen##*:}
43                 msg_starting "memcached ($ip:$port)"
44                 pidfile=/var/run/memcached/"$ip.$port.pid"
45                 daemon --pidfile $pidfile --user $MEMCACHED_RUNAS \
46                         /usr/sbin/memcached -d -P $pidfile -l $ip -p $port \
47                         -m $MEMUSAGE -c $MAXCONN -u $MEMCACHED_RUNAS $MEMCACHED_OPTS
48                 ret=$?
49                 [ $ret = 0 ] || RETVAL=$?
50         done
51         [ $RETVAL -eq 0 ] && touch /var/lock/subsys/memcached
52 }
53
54 stop() {
55         if [ ! -f /var/lock/subsys/memcached ]; then
56                 msg_not_running "memcached"
57                 return
58         fi
59
60         local listen ip port
61         for listen in $LISTEN; do
62                 ip=${listen%:*}
63                 port=${listen##*:}
64                 msg_stopping "memcached ($ip:$port)"
65                 pidfile=/var/run/memcached/"$ip.$port.pid"
66                 killproc --pidfile $pidfile memcached
67         done
68         rm -f /var/lock/subsys/memcached >/dev/null 2>&1
69 }
70
71 condrestart() {
72         if [ ! -f /var/lock/subsys/memcached ]; then
73                 msg_not_running "memcached"
74                 RETVAL=$1
75                 return
76         fi
77
78         stop
79         start
80 }
81
82 reload() {
83         if [ ! -f /var/lock/subsys/memcached ]; then
84                 msg_not_running "memcached"
85                 RETVAL=7
86                 return
87         fi
88
89         local listen ip port
90         for listen in $LISTEN; do
91                 ip=${listen%:*}
92                 port=${listen##*:}
93                 msg_reloading "memcached ($ip:$port)"
94                 pidfile=/var/run/memcached/"$ip.$port.pid"
95                 killproc --pidfile $pidfile memcached -HUP
96                 RETVAL=$((RETVAL + $?))
97         done
98 }
99
100 RETVAL=0
101 # See how we were called.
102 case "$1" in
103   start)
104         start
105         ;;
106   stop)
107         stop
108         ;;
109   restart)
110         stop
111         start
112         ;;
113   try-restart)
114         condrestart 0
115         ;;
116   reload|force-reload)
117         reload
118         ;;
119   status)
120         status memcached
121         exit $?
122         ;;
123   *)
124         msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status}"
125         exit 3
126 esac
127
128 exit $RETVAL
This page took 0.105587 seconds and 3 git commands to generate.