Created
October 18, 2015 19:20
-
-
Save stephdl/a0bfdfa522753774a14c to your computer and use it in GitHub Desktop.
shellinabox sysvinit
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
[root@nethserver-dev ~]# cat /etc/init.d/shellinaboxd | |
#!/bin/sh | |
# | |
# shellinaboxd Takes care of starting and stopping shellinabox. | |
# | |
# chkconfig: - 80 20 | |
# description: Publish command line shell through AJAX interface. | |
### BEGIN INIT INFO | |
# Required-Start: $local_fs $network | |
# Required-Stop: $local_fs $network | |
# Default-Start: 3 4 5 | |
# Default-Stop: 0 1 2 6 | |
# Short-Description: Publish command line shell through AJAX interface. | |
# Description: Shell In A Box implements a web server that can export arbitrary | |
# command line tools to a web based terminal emulator. This | |
# emulator is accessible to any JavaScript and CSS enabled web | |
# browser and does not require any additional browser plugins. | |
### END INIT INFO | |
# config: /etc/sysconfig/shellinaboxd | |
# pidfile: /var/run/shellinaboxd.pid | |
# Source function library. | |
. /etc/rc.d/init.d/functions | |
exec="/usr/sbin/shellinaboxd" | |
prog="shellinaboxd" | |
pid="/var/run/$prog.pid" | |
WORKING_DIR=/usr/share/shellinabox | |
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog | |
lockfile=/var/lock/subsys/$prog | |
start() { | |
[ -x $exec ] || exit 5 | |
[ -f $config ] || exit 6 | |
echo -n $"Starting $prog: " | |
cd $WORKING_DIR | |
daemon $prog -u $USER -g $GROUP --cert=${CERTDIR} --port=${PORT} --background=$pid $OPTS | |
retval=$? | |
echo | |
[ $retval -eq 0 ] && touch $lockfile | |
return $retval | |
} | |
stop() { | |
echo -n $"Stopping $prog: " | |
killproc -p $pid $prog | |
retval=$? | |
echo | |
[ $retval -eq 0 ] && rm -f $lockfile | |
return $retval | |
} | |
restart() { | |
stop | |
start | |
} | |
reload() { | |
restart | |
} | |
force_reload() { | |
restart | |
} | |
rh_status() { | |
# run checks to determine if the service is running or use generic status | |
status -p $pid $prog | |
} | |
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 $? |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment