Настройка запуска X11VNC до авторизации пользователей.

Сообщения
68
#1
Ниже опишу как установить и настроить X11VNC (Сервер удаленного доступа по протоколу VNC) так, чтобы он запускался при старте дисплей менеджера (до авторизации пользователей):

1) Зайдем под root'ом:
su root

2) Установим пакет x11vnc:
apt-get install x11vnc

3) Зададим пароль для удаленного доступа (запишем его в файл "/etc/x11vnc.pass"):
x11vnc -storepasswd /etc/x11vnc.pass

4) Напишем демона для управление x11vnc как службой:
nano /lib/systemd/system/x11vnc.service
Код:
[Unit]
Description=Start x11vnc at startup.
After=multi-user.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -display :0 -auth $(ls /var/run/xauth/{*}) -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared -env FD_XDM=1

[Install]
WantedBy=multi-user.target
5) Добавим демона x11vnc в автозагрузку:
systemctl enable x11vnc.service

6) Обновим данные о демонах:
systemctl daemon-reload

7) Запустим демона x11vnc:
systemctl start x11vnc

На этом всё. X11vnc работает и будет работать сразу после загрузки не дожидаясь пока пользователь войдет в систему.
Стоит обратить внимание на такой момент, если, вы подключены удаленно к системе (не важно до авторизации пользователя или после), и в этот момент завершить графический сеанс пользователя, то сессия VNC прервется и вы отключитесь от удаленной системы. Но не стоит пугаться, x11vnc продолжает работать и вы тут же сможете подключиться к системе вновь.
 
Сообщения
68
#2
После обновления до версии 2.12.40 описанный выше вариант перестал работать, а вот вариант описанный здесь работает. Так же apt начал ругаться на репозитории debian (или вернее сказать начал просить gpg ключ), если их просто прописать в "/etc/apt/sources.list ", что в общем-то не совсем корректно, но раньше у меня работало. Учитывая это всё инструкция получилась следующей (всё делаем под root'ом):

1) Установим пакеты "debian-archive-keyring dirmngr" для того, чтобы подключить репозиторий debian, как советуют здесь:
apt install debian-archive-keyring dirmngr

2) Подключим репозиторий debian:
echo "deb https://mirror.yandex.ru/debian/ stretch main contrib non-free" >> /etc/apt/sources.list
apt update


3) Установим пакет x11vnc:
apt install x11vnc

4) Отключим репозиторий debian:
head -n -1 /etc/apt/sources.list > /etc/apt/sources.list.sav ; mv /etc/apt/sources.list.sav /etc/apt/sources.list
apt update


5) Зададим пароль для удаленного доступа (запишем его в файл "/etc/x11vnc.pass"):
x11vnc -storepasswd /etc/x11vnc.pass

6) Напишем демона для управление x11vnc как службой:
nano /lib/systemd/system/x11vnc.service
Код:
[Unit]
Description=Start x11vnc at startup.
After=multi-user.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbport 5900 -shared -dontdisconnect -rfbauth /etc/x11vnc.pass -o /var/log/x11vnc.log

[Install]
WantedBy=multi-user.target
7) Добавим демона x11vnc в автозагрузку:
systemctl enable x11vnc.service

8) Обновим данные о демонах:
systemctl daemon-reload

9) Запустим демона x11vnc:
systemctl start x11vnc
 

ilarionov

New member
Сообщения
2
#3
После обновления до версии 2.12.40 описанный выше вариант перестал работать, а вот вариант описанный здесь работает. Так же apt начал ругаться на репозитории debian (или вернее сказать начал просить gpg ключ), если их просто прописать в "/etc/apt/sources.list ", что в общем-то не совсем корректно, но раньше у меня работало. Учитывая это всё инструкция получилась следующей (всё делаем под root'ом):

1) Установим пакеты "debian-archive-keyring dirmngr" для того, чтобы подключить репозиторий debian, как советуют здесь:
apt install debian-archive-keyring dirmngr

2) Подключим репозиторий debian:
echo "deb https://mirror.yandex.ru/debian/ stretch main contrib non-free" >> /etc/apt/sources.list
apt update


3) Установим пакет x11vnc:
apt install x11vnc

4) Отключим репозиторий debian:
head -n -1 /etc/apt/sources.list > /etc/apt/sources.list.sav ; mv /etc/apt/sources.list.sav /etc/apt/sources.list
apt update


5) Зададим пароль для удаленного доступа (запишем его в файл "/etc/x11vnc.pass"):
x11vnc -storepasswd /etc/x11vnc.pass

6) Напишем демона для управление x11vnc как службой:
nano /lib/systemd/system/x11vnc.service
Код:
[Unit]
Description=Start x11vnc at startup.
After=multi-user.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbport 5900 -shared -dontdisconnect -rfbauth /etc/x11vnc.pass -o /var/log/x11vnc.log

[Install]
WantedBy=multi-user.target
7) Добавим демона x11vnc в автозагрузку:
systemctl enable x11vnc.service

8) Обновим данные о демонах:
systemctl daemon-reload

9) Запустим демона x11vnc:
systemctl start x11vnc
Доброго дня. Метод рабочий, спасибо. Скажите, удалось ли настроить корректно работающий буфер обмена?
У меня возникает следующая беда: с удалённой машины копируются корректно только латинские буквы. Вместо кириллицы копируются знаки вопроса.
С той машины, с которой подключаюсь (win 10) на удалённую машину копируется точно также. Латинские буквы и символы - отлично копируются, а вот с кириллицей беда.
 
Сообщения
68
#4
Доброго дня. Метод рабочий, спасибо. Скажите, удалось ли настроить корректно работающий буфер обмена?
У меня возникает следующая беда: с удалённой машины копируются корректно только латинские буквы. Вместо кириллицы копируются знаки вопроса.
С той машины, с которой подключаюсь (win 10) на удалённую машину копируется точно также. Латинские буквы и символы - отлично копируются, а вот с кириллицей беда.
У меня аналогичная проблема.