Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save lsbardel/257298 to your computer and use it in GitHub Desktop.
Save lsbardel/257298 to your computer and use it in GitHub Desktop.
Init.d Redis script for Ubuntu
#! /bin/sh
### BEGIN INIT INFO
# Provides: redis-server
# 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: redis-server - Persistent key-value db
# Description: redis-server - Persistent key-value db
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/redis-server
DAEMON_ARGS=/etc/redis/redis.conf
NAME=redis-server
DESC=redis-server
PIDFILE=/var/run/redis.pid
test -x $DAEMON || exit 0
test -x $DAEMONBOOTSTRAP || exit 0
set -e
case "$1" in
start)
echo -n "Starting $DESC: "
touch $PIDFILE
chown redis:redis $PIDFILE
if start-stop-daemon --start --quiet --umask 007 --pidfile $PIDFILE --chuid redis:redis --exec $DAEMON -- $DAEMON_ARGS
then
echo "$NAME."
else
echo "failed"
fi
;;
stop)
echo -n "Stopping $DESC: "
if start-stop-daemon --stop --retry 10 --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON
then
echo "$NAME."
else
echo "failed"
fi
rm -f $PIDFILE
;;
restart|force-reload)
${0} stop
${0} start
;;
*)
echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload}" >&2
exit 1
;;
esac
exit 0
@nicStuff
Copy link

Wouldn't it be better to send the SHUTDOWN command to the server (through the redis client)? Sending the command seems more clean to me (for example with that command, the state will be persisted on the disk if there are savepoints).

@manojghorela
Copy link

redis has master slave configuration.If master goes down slave become master.
How can i again restart the previous master using sccript

@gamedev8
Copy link

It's best to follow the steps on the Redis website.

https://redis.io/topics/quickstart

@mustmodify
Copy link

mustmodify commented Jul 19, 2018

@ezarko just edit your first comment to use this URL: https://gist.githubusercontent.com/lsbardel/257298/raw/redis-server-for-init.d-startup

As it changes, command will still work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment