conectando ao vncserver se iniciado com o serviço

0

Eu segui as instruções aqui para configurar um serviço vncserver: link

Eu usei apenas a seção sobre a configuração do serviço vncserver, pois eu já tinha o vnc4server instalado.

Opções para iniciar o vncserver:

  1. Use o serviço que criei executando: %código%. Funciona bem e chuta o processo do Xvnc4.
  2. Basta digitar vncserver no terminal.

Em ambos os casos, verifiquei que o serviço Xvnc4 associado ao vnc4server foi iniciado e executado usando sudo service vncserver start/stop/restart .

Em ambos os casos, uma exibição é criada e anexada à exibição 1.

Meu problema: Quando eu uso a opção 1 para iniciar o meu vncserver, não consigo me conectar ao monitor criado a partir do meu pc do windows usando o vncviewer.

Quando uso a opção 2, consigo conectar-me ao monitor do meu pc do Windows usando o vncviewer. Eu simplesmente forneço ps -aux | grep vnc .

Por que não consigo conectar quando uso a opção 1. Além disso, a sugestão é configurar um túnel seguro usando algo como massa e depois conectá-lo apenas por segurança? Eu pergunto porque quando eu inicio o meu vncserver usando a opção 2 acima, eu consigo me conectar remotamente usando serverip:<display#> sem usar putty ou qualquer tipo de túnel.

Aqui está meu servername or ip:display# :

#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &

Aqui está o meu arquivo de serviço ~/.vnc/xstartup :

#!/bin/bash
PATH="$PATH:/usr/bin/"
export USER="mo"
DISPLAY="1"
DEPTH="16"
#GEOMETRY="1024x768"
#GEOMETRY="1600x1200"
GEOMETRY="1366x768"
OPTIONS="-depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY} -localhost"
. /lib/lsb/init-functions

case "$1" in
start)
log_action_begin_msg "Starting vncserver for user '${USER}' on localhost:${DISP$
su ${USER} -c "/usr/bin/vncserver ${OPTIONS}"
;;

stop)
log_action_begin_msg "Stopping vncserver for user '${USER}' on localhost:${DISP$
su ${USER} -c "/usr/bin/vncserver -kill :${DISPLAY}"
;;

restart)
$0 stop
$0 start
;;
esac
exit 0
    
por mo_maat 28.12.2017 / 00:36

1 resposta

1

Graças aos apontamentos do steeldriver, meu problema era que minhas configurações no putty no meu pc estavam erradas. Eu estava usando meu endereço de servidor remoto em vez de usar "localhost". Para atender à minha necessidade de dois monitores, configurei dois túneis diferentes em massa sob a mesma conexão:

localhost:5901

localhost:5902

Em seguida, modifiquei meu /etc/init.d/vncserver para iniciar duas instâncias do vncserver em duas exibições diferentes.

#!/bin/bash
PATH="$PATH:/usr/bin/"
export USER="mo"
DISPLAY="1"
DISPLAY2="2"
DEPTH="16"
#GEOMETRY="1024x768"
#GEOMETRY="1600x1200"
GEOMETRY="1366x768"
OPTIONS="-depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY} -localhost"
OPTIONS2="-depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY2} -localhost"

. /lib/lsb/init-functions

case "$1" in
start)
log_action_begin_msg "Starting vncserver for user '${USER}' on localhost:${DISP$
su ${USER} -c "/usr/bin/vncserver ${OPTIONS}"


log_action_begin_msg "Starting vncserver for user '${USER}' on localhost:${DISP$
su ${USER} -c "/usr/bin/vncserver ${OPTIONS2}"

;;

stop)
log_action_begin_msg "Stopping vncserver for user '${USER}' on localhost:${DISP$
su ${USER} -c "/usr/bin/vncserver -kill :${DISPLAY}"


log_action_begin_msg "Stopping vncserver for user '${USER}' on localhost:${DISP$
su ${USER} -c "/usr/bin/vncserver -kill :${DISPLAY2}"

;;

restart)
$0 stop
$0 start
;;
esac

Eu era então capaz de usar o vncviewer no meu windows pc para conectar-se ao display 1 e exibir dois, portanto, um pouco imitando uma configuração de tela dupla. Funciona para mim. Se alguém tiver quaisquer avisos ou insights sobre por que isso não deveria ser feito, ficarei feliz em receber o feedback.

    
por mo_maat 28.12.2017 / 02:14