94 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			94 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
#! /bin/sh
 | 
						|
#
 | 
						|
# memcached      This shell script takes care of starting and stopping Memcached
 | 
						|
#
 | 
						|
# This script based off Atsushi NAGASE's script at https://gist.github.com/ngs/3081846
 | 
						|
 | 
						|
# chkconfig: - 55 45
 | 
						|
### BEGIN INIT INFO
 | 
						|
# Provides: <%= @instance %>
 | 
						|
# Required-Start: $network $syslog
 | 
						|
# Required-Stop: $network $syslog
 | 
						|
# Default-Start:       2 3 4 5
 | 
						|
# Default-Stop:        0 1 6
 | 
						|
# Description:  The memcached daemon is a network memory cache service.
 | 
						|
# Processname: memcached
 | 
						|
# Short-Description: start and stop memcached instance <%= @instance %>
 | 
						|
### END INIT INFO
 | 
						|
 | 
						|
ulimit -n <%= @ulimit %>
 | 
						|
 | 
						|
## Source function library.
 | 
						|
. /etc/rc.d/init.d/functions
 | 
						|
 | 
						|
# Source LSB function library.
 | 
						|
if [ -r /lib/lsb/init-functions ]; then
 | 
						|
    . /lib/lsb/init-functions
 | 
						|
else
 | 
						|
    echo 'Could not find necessary /lib/lsb/init-functions'
 | 
						|
    exit 1
 | 
						|
fi
 | 
						|
 | 
						|
RETVAL=0
 | 
						|
prog="memcached"
 | 
						|
 | 
						|
start () {
 | 
						|
    echo -n $"Starting $prog: "
 | 
						|
 | 
						|
    # ensure that /var/run/memcached actually exists
 | 
						|
    if [ ! -d /var/run/memcached ]; then
 | 
						|
      mkdir /var/run/memcached
 | 
						|
    fi
 | 
						|
 | 
						|
    # ensure that /var/run/memcached has proper permissions
 | 
						|
    if [ "`stat -c %U /var/run/memcached`" != "<%= @user %>" ]; then
 | 
						|
        chown <%= @user %> /var/run/memcached
 | 
						|
    fi
 | 
						|
 | 
						|
        start_daemon -p /var/run/memcached/memcached_<%= @instance %>.pid <%= @binary_path %> -d \
 | 
						|
          -P /var/run/memcached/memcached_<%= @instance %>.pid <%= @cli_options %> >> <%= @log_file %> 2>&1
 | 
						|
        RETVAL=$?
 | 
						|
        echo
 | 
						|
        [ $RETVAL -eq 0 ] && touch <%= @lock_dir %>/memcached
 | 
						|
}
 | 
						|
stop () {
 | 
						|
        echo -n $"Stopping $prog: "
 | 
						|
        killproc -p /var/run/memcached/memcached_<%= @instance %>.pid <%= @binary_path %>
 | 
						|
        RETVAL=$?
 | 
						|
        echo
 | 
						|
        if [ $RETVAL -eq 0 ] ; then
 | 
						|
            rm -f <%= @lock_dir %>/memcached
 | 
						|
            rm -f /var/run/memcached/memcached_<%= @instance %>.pid
 | 
						|
        fi
 | 
						|
}
 | 
						|
 | 
						|
restart () {
 | 
						|
        stop
 | 
						|
        start
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
# See how we were called.
 | 
						|
case "$1" in
 | 
						|
  start)
 | 
						|
        start
 | 
						|
        ;;
 | 
						|
  stop)
 | 
						|
        stop
 | 
						|
        ;;
 | 
						|
  status)
 | 
						|
        status memcached
 | 
						|
        ;;
 | 
						|
  restart|reload|force-reload)
 | 
						|
        restart
 | 
						|
        ;;
 | 
						|
  condrestart)
 | 
						|
        [ -f <%= @lock_dir %>/memcached ] && restart || :
 | 
						|
        ;;
 | 
						|
  *)
 | 
						|
        echo $"Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}"
 | 
						|
        exit 1
 | 
						|
esac
 | 
						|
 | 
						|
exit $?
 |