Created
November 28, 2015 06:12
-
-
Save pawitp/0b0c9023b0dfc86db5db to your computer and use it in GitHub Desktop.
CentOS's memcached init script, modified to support running socket-based user-specific instance
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#! /bin/sh | |
# | |
# chkconfig: - 55 45 | |
# description: The memcached daemon is a network memory cache service. | |
# processname: memcached | |
# pidfile: /var/run/memcached-$USER/memcached.pid | |
# Standard LSB functions | |
#. /lib/lsb/init-functions | |
# Source function library. | |
. /etc/init.d/functions | |
PORT=11211 | |
USER=yourusernamegoeshere | |
MAXCONN=1024 | |
CACHESIZE=64 | |
OPTIONS="-s /home/$USER/memcached.sock" | |
# Check that networking is up. | |
. /etc/sysconfig/network | |
if [ "$NETWORKING" = "no" ] | |
then | |
exit 0 | |
fi | |
RETVAL=0 | |
prog="memcached-$USER" | |
start () { | |
echo -n $"Starting $prog: " | |
# insure that /var/run/memcached-$USER has proper permissions | |
if [ "`stat -c %U /var/run/memcached-$USER`" != "$USER" ]; then | |
chown $USER /var/run/memcached-$USER | |
fi | |
daemon --pidfile /var/run/memcached-$USER/memcached.pid memcached -d -p $PORT -u $USER -m $CACHESIZE -c $MAXCONN -P /var/run/memcached-$USER/memcached.pid $OPTIONS | |
RETVAL=$? | |
echo | |
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/memcached-$USER | |
} | |
stop () { | |
echo -n $"Stopping $prog: " | |
killproc -p /var/run/memcached-$USER/memcached.pid /usr/bin/memcached | |
RETVAL=$? | |
echo | |
if [ $RETVAL -eq 0 ] ; then | |
rm -f /var/lock/subsys/memcached-$USER | |
rm -f /var/run/memcached-$USER/memcached.pid | |
fi | |
} | |
restart () { | |
stop | |
start | |
} | |
# See how we were called. | |
case "$1" in | |
start) | |
start | |
;; | |
stop) | |
stop | |
;; | |
status) | |
status -p /var/run/memcached-$USER/memcached.pid memcached-$USER | |
;; | |
restart|reload|force-reload) | |
restart | |
;; | |
condrestart) | |
[ -f /var/lock/subsys/memcached-$USER ] && restart || : | |
;; | |
*) | |
echo $"Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}" | |
exit 1 | |
esac | |
exit $? |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment