slitaz-forge annotate tank/files/etc/init.d/shellinabox @ rev 36
tank: Add shellinabox files.
author | Christopher Rogers <slaxemulator@gmail.com> |
---|---|
date | Wed Mar 16 15:35:15 2011 +0000 (2011-03-16) |
parents | |
children | 0900646fc6da |
rev | line source |
---|---|
slaxemulator@36 | 1 #!/bin/sh |
slaxemulator@36 | 2 |
slaxemulator@36 | 3 services="/" |
slaxemulator@36 | 4 |
slaxemulator@36 | 5 mkexe() |
slaxemulator@36 | 6 { |
slaxemulator@36 | 7 exe=$0 |
slaxemulator@36 | 8 while true; do |
slaxemulator@36 | 9 cd $(dirname $exe) |
slaxemulator@36 | 10 exe=$(basename $exe) |
slaxemulator@36 | 11 [ -L $exe ] || break |
slaxemulator@36 | 12 exe=$(readlink $exe) |
slaxemulator@36 | 13 done |
slaxemulator@36 | 14 echo $(pwd)/$exe |
slaxemulator@36 | 15 } |
slaxemulator@36 | 16 exe=$(mkexe) |
slaxemulator@36 | 17 |
slaxemulator@36 | 18 services_arg() |
slaxemulator@36 | 19 { |
slaxemulator@36 | 20 for i in $services ; do |
slaxemulator@36 | 21 echo -n "-s '$i:conspy:conspy:/tmp:LINES=25 /bin/sh -c \"$exe service $i " |
slaxemulator@36 | 22 echo -n "\${peer} \${url} \${columns} \${lines}\"' " |
slaxemulator@36 | 23 done |
slaxemulator@36 | 24 } |
slaxemulator@36 | 25 |
slaxemulator@36 | 26 pidfile=/var/run/shellinaboxd.pid |
slaxemulator@36 | 27 case "$1" in |
slaxemulator@36 | 28 service) |
slaxemulator@36 | 29 case "$2" in |
slaxemulator@36 | 30 /) |
slaxemulator@36 | 31 ulimit -t 60 |
slaxemulator@36 | 32 exec /bin/nice -n 19 /usr/bin/conspy -f -v 0 ;; |
slaxemulator@36 | 33 esac |
slaxemulator@36 | 34 ;; |
slaxemulator@36 | 35 start) |
slaxemulator@36 | 36 if ! grep -q ^conspy: /etc/passwd; then |
slaxemulator@36 | 37 adduser -h /tmp -S -D -H conspy |
slaxemulator@36 | 38 addgroup conspy tty |
slaxemulator@36 | 39 fi |
slaxemulator@36 | 40 dir=$(dirname $exe) |
slaxemulator@36 | 41 eval shellinaboxd --background=$pidfile --disable-ssl \ |
slaxemulator@36 | 42 --css=/usr/share/shellinabox/object.css \ |
slaxemulator@36 | 43 --user-css 10px:-/usr/share/shellinabox/10px.css,12px:-/usr/share/shellinabox/12px.css,14px:-/usr/share/shellinabox/14px.css,16px:+/usr/share/shellinabox/16px.css \ |
slaxemulator@36 | 44 -s /login:LOGIN $(services_arg) |
slaxemulator@36 | 45 ;; |
slaxemulator@36 | 46 stop) |
slaxemulator@36 | 47 [ -s $pidfile ] && kill $(cat $pidfile) |
slaxemulator@36 | 48 ;; |
slaxemulator@36 | 49 esac |