Я формулировал свой вопрос очень тщательно. После большого исследования и метода проб и ошибок, я могу иметь x11vnc, запускаются при начальной загрузке как системная служба при помощи этой командной строки в моем сервисном файле:
ExecStart=/usr/bin/x11vnc -auth /run/user/121/gdm/Xauthority -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared
Я выяснил, поскольку у многих других есть это auth guess
аргумент не работает в 17,10. Я также выяснил, что 121 число для пользователя 'gdm', который владеет зазывалой X сессий, и это то, где мой Xauthority
файл находится. Проверка Xorg обрабатывает через ssh:
user@foo:~$ ps -ax |grep xorg
886 tty1 Sl+ 0:00 /usr/lib/xorg/Xorg vt1 -displayfd 3 -auth /run/user/121/gdm/Xauthority -background none -noreset -keeptty -verbose 3
Хорошо, таким образом, я могу соединиться через vnc клиент, и я вижу зазывалу и вход в систему, но входящие в систему урожаи простой черный экран с активным указателем мыши. Рассмотрение снова процессов Xorg:
user@foo:~$ ps -ax |grep xorg
886 tty1 Sl+ 0:00 /usr/lib/xorg/Xorg vt1 -displayfd 3 -auth /run/user/121/gdm/Xauthority -background none -noreset -keeptty -verbose 3
1384 tty2 Sl+ 0:00 /usr/lib/xorg/Xorg vt2 -displayfd 3 -auth /run/user/1000/gdm/Xauthority -background none -noreset -keeptty -verbose 3
Я вижу, что существует новое X сессий, принадлежавших пользователю, который вошел в систему (меня!), и использование Xauthority
файл в том месте. Проблема, кажется, что клиент VNC застревает на исходной X сессии для зазывалы, принадлежавшей 'gdm'. Как я могу подключить vnc клиент коаксиальным кабелем для следования к новому за X сессиями, не открывая второй экземпляр клиента? Конечно, возможно войти в систему и использовать графический интерфейс среды рабочего стола с x11vnc и vnc клиентом, нет? Спасибо очень любезно!
У меня нет того же варианта использования как Вы, но это подобно, и это могло бы дать некоторые подсказки для разрешения Вашей проблемы, если это еще не решено. На самом деле я удаленно соединяюсь со смартфона с помощью консоли через SSH и клиент VNC. Мое компьютерное выполнение x11vnc
в настоящее время находится под Ubuntu 18.04.2 LTS.
Когда зазывала отображена, я работаю:
sudo x11vnc -safer -localhost -once -display :0 -auth /run/user/125/gdm/Xauthority (... other options)
Затем я вхожу в систему через клиент VNC. Затем что касается Вас, я вижу простой черный экран. Я затем уничтожаю выполнение x11vnc
.
Затем я вручную работаю (1000, число пользователя, входящего в систему):
x11vnc -safer -localhost -once -display :1 -auth /run/user/1000/gdm/Xauthority (... other options)
Я могу затем видеть свой рабочий стол (с моими приложениями...) по моему смартфону через мой клиент VNC. Я могу затем сделать удаленно что-либо, как будто я сидел перед своим использующим компьютеры клавиатура и мышь.
Я думаю, что заключение для Вас состоит в том, что необходимо выполнить секунду x11vnc
с другим значением для -auth
опция. Я думаю, что можно настроить это как сценарий "входа в систему", который выполняется непосредственно после того, как данный пользователь входит в систему.
Примечание 1: как комментарий стороны, обратите внимание на то, что -display
опция ожидает сначала :0
затем :1
, это заставило меня потерять много времени!
Примечание 2: для Вас 121
число для пользователя 'gdm', для меня это 125
но я нашел это через Ваш вопрос так спасибо за это.
Примечание 3: Я знаю, что вопросу больше чем 1 год, но так как сам вопрос помог мне, я хотел попытаться помочь в ответ столько, сколько я могу.