подключение к vncserver при запуске службы

Я выполнил инструкции для настройки службы vncserver: https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-vnc-on-ubuntu-14-04

Я использовал раздел настройки службы vncserver, поскольку у меня уже установлен vnc4server.

Параметры для запуска vncserver:

Использовать службу, созданную мной бег: sudo service vncserver start/stop/restart. Он отлично работает и пинает процесс Xvnc4. Просто введите vncserver в терминал.

В обоих случаях я дважды проверил, что служба Xvnc4, связанная с vnc4server, запускается и запускается с использованием ps -aux | grep vnc.

В обоих случаях создается и подключается дисплей 1.

Моя проблема: когда я использую опцию 1 для запуска своего vncserver, я не могу подключиться к экрану, созданному на моем компьютере с Windows, используя vncviewer.

Когда я использую параметр 2 , Я могу подключиться к дисплею с моего ПК с помощью vncviewer. Я просто предоставляю serverip:<display#>.

Почему я не могу подключиться, когда я использую параметр 1. Также есть предложение настроить безопасный туннель, используя что-то вроде шпатлевки, а затем подключаться к нему только для обеспечения безопасности? Я спрашиваю, потому что, когда я запускаю свой vncserver, используя опцию 2 выше, я могу удаленно подключаться с помощью servername or ip:display# без использования шпатлевки или любого туннеля.

Вот мой ~/.vnc/xstartup:

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

Вот мой сервисный файл /etc/init.d/vncserver:

#!/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
0
задан 28 December 2017 в 03:42

2 ответа

Благодаря указателям steeldriver моя проблема заключалась в том, что мои настройки в шпаклере на моем компьютере были неправильными. Я использовал адрес удаленного сервера вместо использования «localhost». Чтобы удовлетворить мою потребность в двух дисплеях, я установил два разных туннеля в putty под тем же соединением:

localhost:5901 localhost:5902

Затем я модифицировал мой /etc/init.d/vncserver, чтобы запустить два экземпляра vncserver on два разных дисплея.

#!/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

Затем я смог использовать vncviewer на моем ПК с Windows, чтобы подключиться к дисплею 1 и отобразить два, что несколько подражает настройке с двумя экранами. Меня устраивает. Если у кого-то есть какие-либо предупреждения или соображения относительно того, почему этого не должно быть сделано, я был бы рад получить обратную связь.

1
ответ дан 18 July 2018 в 00:20

Благодаря указателям steeldriver моя проблема заключалась в том, что мои настройки в шпаклере на моем компьютере были неправильными. Я использовал адрес удаленного сервера вместо использования «localhost». Чтобы удовлетворить мою потребность в двух дисплеях, я установил два разных туннеля в putty под тем же соединением:

localhost:5901 localhost:5902

Затем я модифицировал мой /etc/init.d/vncserver, чтобы запустить два экземпляра vncserver on два разных дисплея.

#!/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

Затем я смог использовать vncviewer на моем ПК с Windows, чтобы подключиться к дисплею 1 и отобразить два, что несколько подражает настройке с двумя экранами. Меня устраивает. Если у кого-то есть какие-либо предупреждения или соображения относительно того, почему этого не должно быть сделано, я был бы рад получить обратную связь.

1
ответ дан 24 July 2018 в 17:12

Другие вопросы по тегам:

Похожие вопросы: