123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- #!/bin/bash
-
- # Scripted by Maxim Heijndijk
-
- # chkconfig: 2345 91 35
- # description: Starts and stops vncserver. \
- # Used to provide remote X administration services.
-
- ### BEGIN INIT INFO
- # Provides: vncservers
- # Default-Start: 2 3 4 5
- # Default-Stop: 0 1 6
- # Required-Start: networking
- # Required-Stop: networking
- # Short-Description: Starts and stops vncserver
- # Description: Used to provide remote X administration services.
- ### END INIT INFO
-
- # Source function library.
-
- . /lib/lsb/init-functions
-
- VNCSERVERS=""
-
- [ -f /etc/default/vncservers ] && . /etc/default/vncservers || exit 0
-
- start() {
-
- ulimit -S -c 0 >/dev/null 2>&1
-
- RETVAL=0
-
- for display in ${VNCSERVERS}; do
-
- eval cd ~${display##*:}
-
- if [ -e ".vnc/passwd" ]; then
-
- log_begin_msg "Starting VNC Server for user ${display##*:}:"
-
- unset BASH_ENV ENV
-
- su ${display##*:} -c "cd ~${display##*:} && vncserver :${display%%:*}"
-
- RETVAL="$?"
-
- if [ "$RETVAL" -ne 0 ]; then
-
- log_end_msg 1
-
- break
-
- else
-
- log_end_msg 0
-
- fi
-
- else
-
- log_begin_msg "Not starting VNC Server for user ${display##*:}.\n File \"~${display##*:}/.vnc/passwd\" not found.\n Create a password file for the VNC server with vncpasswd"
-
- log_end_msg 1
-
- fi
-
- done
-
- [ "$RETVAL" -eq 0 ] && touch "/var/lock/vncserver"
-
- }
-
- stop() {
-
- unset BASH_ENV ENV
-
- for display in ${VNCSERVERS}; do
-
- log_begin_msg "Shutting down VNC Server for user ${display##*:}: "
-
- su ${display##*:} -c "vncserver -kill :${display%%:*}" >/dev/null 2>&1
-
- RETVAL="$?"
-
- [ "$RETVAL" -eq 0 ] && log_end_msg 0 || log_end_msg 1
-
- done
-
- [ -f "/var/lock/vncserver" ] && rm -f "/var/lock/vncserver"
-
- }
-
- case "$1" in
-
- start) start
- ;;
-
- stop) stop
- ;;
-
- restart|reload) stop
- start
- ;;
-
- *) echo $"Usage: $0 {start|stop|restart}"
- exit 1
- ;;
-
- esac
-
- exit 0
|