diff options
Diffstat (limited to 'network/skylable-sx/rc.sxserver')
-rw-r--r-- | network/skylable-sx/rc.sxserver | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/network/skylable-sx/rc.sxserver b/network/skylable-sx/rc.sxserver new file mode 100644 index 0000000000..a69e620f40 --- /dev/null +++ b/network/skylable-sx/rc.sxserver @@ -0,0 +1,114 @@ +#!/bin/sh +# +# sxserver - this init script starts and stops the SX server +# +# chkconfig: 2345 80 20 +# description: Scalable public and private cloud storage + +### BEGIN INIT INFO +# Provides: sxserver +# Required-Start: $local_fs $network $remote_fs $time +# Required-Stop: $local_fs $network $remote_fs $time +# Default-Stop: 0 1 6 +# Short-Description: start and stop sxhttpd/sx.fcgi +# Description: Scalable public and private cloud storage +### END INIT INFO + +# Source function library. +. /etc/rc.d/init.d/functions + +exec="/usr/sbin/sx.fcgi" +exec_httpd="/usr/sbin/sxhttpd" +config="/etc/sxserver/sxfcgi.conf" + +[ -e /etc/sysconfig/sxserver ] && . /etc/sysconfig/sxserver + +lockfile=/var/lock/subsys/sxserver + +start() { + [ -x $exec ] || exit 5 + [ -x $exec_httpd ] || exit 5 + [ -f $config ] || exit 6 + mkdir -p /var/run/sxserver + OWNER=`grep run-as $config |cut -f2 -d\"` + chown "$OWNER" /var/run/sxserver + action $"Starting sxserver: " daemon --pidfile /var/run/sxserver/sxfcgi.pid $exec + retval=$? + if test $retval -eq 0; then + action $"Starting sxhttpd: " daemon --pidfile /var/run/sxserver/sxhttpd.pid $exec_httpd -c /etc/sxserver/sxhttpd.conf + retval=$? + fi + [ $retval -eq 0 ] && touch $lockfile + return $retval +} + +stop() { + action $"Stopping sxhttpd: " killproc -p /var/run/sxserver/sxhttpd.pid "sxhttpd" + retval_httpd=$? + + action $"Stopping sxserver: " killproc -p /var/run/sxserver/sxfcgi.pid "sxserver" + retval=$? + + [ $retval -eq 0 ] && retval=$retval_httpd + [ $retval -eq 0 ] && rm -f $lockfile + return $retval +} + +restart() { + stop + start +} + +reload() { + restart +} + +force_reload() { + restart +} + +rh_status() { + status -p /var/run/sxserver/sxhttpd.pid sxhttpd + retval_httpd=$? + status -p /var/run/sxserver/sxfcgi.pid sxserver + retval=$? + [ $retval -eq 0 ] && retval=$retval_httpd + return $retval +} + +rh_status_q() { + rh_status >/dev/null 2>&1 +} + + +case "$1" in + start) + rh_status_q && exit 0 + $1 + ;; + stop) + rh_status_q || exit 0 + $1 + ;; + restart) + $1 + ;; + reload) + rh_status_q || exit 7 + $1 + ;; + force-reload) + force_reload + ;; + status) + rh_status + ;; + condrestart|try-restart) + rh_status_q || exit 0 + restart + ;; + *) + echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}" + exit 2 +esac +exit $? |