Merging old admin.git repo.
This commit is contained in:
40
vnc.sh
Executable file
40
vnc.sh
Executable file
@@ -0,0 +1,40 @@
|
||||
#!/bin/bash
|
||||
DEFAULT_DISPLAY=:0
|
||||
X11VNC_DISPLAY="$DEFAULT_DISPLAY"
|
||||
|
||||
if [ -x /usr/bin/x11vnc ]; then
|
||||
[ "$1" == '-nocache' ] && CACHE_FLAG='-noncache' || CACHE_FLAG='-noncache'
|
||||
[ "$2" == '-guess' ] && GUESS_FLAG='-auth guess' || GUESS_FLAG=''
|
||||
[ -f /root/.vnc/passwd ] && PASSWORD="/root/.vnc/passwd"
|
||||
[ -f $HOME/.vnc/passwd ] && PASSWORD="$HOME/.vnc/passwd"
|
||||
[ ! -z "$PASSWORD" ] && x11vnc -display $X11VNC_DISPLAY -xkb -rfbauth $PASSWORD -rfbport 5900 -shared -forever -nowf -norc -notruecolor -bg $GUESS_FLAG $CACHE_FLAG -noxdamage
|
||||
EXIT_CODE=$?
|
||||
if [ $EXIT_CODE -ne 0 ]; then
|
||||
|
||||
echo "\n*********************************************************************"
|
||||
echo "*** Could not start x11vnc! Trying again with gdm MAGIC_COOKIE! ***"
|
||||
echo "*********************************************************************\n"
|
||||
|
||||
# Old GDM location for Ubuntu <= 17.10
|
||||
MAGIC_COOKIE_FILE=`sudo find /var/run/gdm/ -iname database | grep for-gdm`
|
||||
|
||||
# New GDM location for Ubuntu >= 17.10
|
||||
[ -z "$MAGIC_COOKIE_FILE" ] && NUM_MAGIC_COOKIE_FILE_SESSIONS=`sudo find /run/user/ -iwholename '*/gdm/*' -iname '*Xauthority' 2>/dev/null | wc -l`
|
||||
if [ -z "$MAGIC_COOKIE_FILE" -a "$NUM_MAGIC_COOKIE_FILE_SESSIONS" -gt 1 ]; then
|
||||
# Find the current user's session
|
||||
MAGIC_COOKIE_FILE=`sudo find /run/user/$(id -u) -iwholename '*/gdm/*' -iname '*Xauthority'`
|
||||
X11VNC_DISPLAY=":1"
|
||||
else
|
||||
# Find the GDM user's session (or whichever shows up first in ps list)
|
||||
# This should pick up the original gdm session which grabs :0
|
||||
# If you login after gdm login screen, your Xorg server may end up on another display!
|
||||
# Workaround for now is to restart x11vnc on that display number
|
||||
[ -z "$MAGIC_COOKIE_FILE" ] && MAGIC_COOKIE_FILE=`sudo find /run/user/ -iwholename '*/gdm/*' -iname '*Xauthority' | head -n1`
|
||||
fi
|
||||
# Old lightdm location for Ubuntu <= 17.10
|
||||
[ -z "$MAGIC_COOKIE_FILE" ] && MAGIC_COOKIE_FILE=`sudo find /var/lib -name '.Xauthority' -o -wholename '/var/run/lightdm/root/:0' | head -n1`
|
||||
#sudo bash -c "[ -z \"$MAGIC_COOKIE_FILE\" -a -e /var/run/lightdm/root/:0 ]" && MAGIC_COOKIE_FILE='/var/run/lightdm/root/:0'
|
||||
[ -n "$MAGIC_COOKIE_FILE" -a -z "$GUESS_FLAG" ] && AUTH_COOKIE_FLAG="-auth $MAGIC_COOKIE_FILE"
|
||||
[ ! -z "$PASSWORD" ] && sudo x11vnc -display $X11VNC_DISPLAY -xkb -rfbauth $PASSWORD -rfbport 5900 -shared -forever -nowf -norc -notruecolor -bg $GUESS_FLAG $CACHE_FLAG -noxdamage ${AUTH_COOKIE_FLAG}
|
||||
fi
|
||||
fi
|
||||
Reference in New Issue
Block a user