#! /bin/bash ### BEGIN INIT INFO # Provides: memcached # Required-Start: $syslog # Required-Stop: $syslog # Should-Start: $local_fs # Should-Stop: $local_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: memcached - Memory caching daemon # Description: memcached - Memory caching daemon ### END INIT INFO # # memcached: MemCached Daemon # # chkconfig: - 90 25 # description: MemCached Daemon # PORT=11211 USER=memcached MAXCONN=1024 OPTIONS="-l 127.0.0.1" DAEMON=/usr/local/memcached/bin/memcached RETVAL=0 prog="/usr/local/memcached/bin/memcached" start_instance() { echo -n $"Starting $prog ($1): " start-stop-daemon --start --quiet --pidfile /var/run/memcached/memcached.$1.pid --exec $DAEMON -- -d -p $PORT -u $USER -m $2 -c $MAXCONN -P /var/run/memcached/memcached.$1.pid $OPTIONS RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/memcached.$1 let PORT="$PORT+1" } stop_instance() { echo -n $"Stopping $prog ($1): " start-stop-daemon --stop --quiet --oknodo --pidfile /var/run/memcached/memcached.$1.pid --exec $DAEMON RETVAL=$? echo if [ $RETVAL -eq 0 ] ; then rm -f /var/lock/memcached.$1 rm -f /var/run/memcached/memcached.$1.pid fi } start() { # insure that /var/run/memcached has proper permissions mkdir -p /var/run/memcached if [ "$(stat -c %U /var/run/memcached)" != "$USER" ]; then chown $USER /var/run/memcached fi start_instance default 256; #start_instance block 16; #start_instance content 128; #start_instance filter 128; #start_instance form 32; #start_instance menu 16; #start_instance page 8; #start_instance update 8; #start_instance views 8; } stop() { stop_instance default; #stop_instance block; #stop_instance content; #stop_instance filter; #stop_instance form; #stop_instance menu; #stop_instance page; #stop_instance update; #stop_instance views; } restart() { stop start } # See how we were called. case "$1" in start) start ;; stop) stop ;; status) status memcached ;; restart|reload|force-reload) restart ;; *) echo $"Usage: $0 {start|stop|status|restart|reload|force-reload}" exit 1 esac exit $?