Установка x11vnc в Ubuntu 16.04
Але перед тим як перейти до налаштування, потрібно встановити саму програму, вона є в офіційних репозиторіях, тому проблем з цим виникнути не повинно. Для установки виконайте:
$ Sudo apt install x11vnc
Налаштування x11vnc в Ubuntu
Коли установка VNC ubuntu буде завершена, ми зможемо перейти до налаштування. Спочатку створимо пароль для нашого сервера:
$ X11vnc -storepasswd «пароль» /etc/x11vnc.pass
Команда x11vnc з опцією -storepasswd зберігає пароль у файл, попередньо його зашифрувавши. Щоб запустити програму прямо зараз і перевірити чи працює вона ви можете скористатися такою командою:
$ X11vnc -rfbauth /etc/x11vnc.pass -noxdamage -shared -dontdisconnect -many -noxfixes
- -rfbauth - використовувати пароль для аутентифікації користувачів з файлу;
- -bg - працювати у фоновому режимі;
- -shared - дозволити підключатися одночасно декільком користувачам;
- -dontdisconnect - не відключати підключених користувачів при підключенні нового;
- -many - не завершувала роботу сервера після відключення першого клієнта.
Після виконання команди ви можете взяти інший пристрій і спробувати підключитися до цього по VNC, все повинно працювати.
Автозавантаження за допомогою Systemd
Якщо все правильно, можна створити скрипт для автоматичного запуску під час старту системи. Для цього ми будемо використовувати Systemd:
[Unit]
Description = Start x11vnc at startup.
After = multi-user.target
[Service]
Type = simple
ExecStart = / usr / bin / x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared
[Install]
WantedBy = multi-user.target
Конфігураційний файл готовий, і тепер ви можете додати його в автозавантаження, але перед цим змусимо Systemd перечитати свої конфігураційні файли:
$ Sudo systemctl daemon-reload
І робимо автозапуск x11vnc ubuntu:
$ Sudo systemctl enable x11vnc.service
Також можна запустити програму зараз:
$ Sudo systemctl start x11vnc.service
Якщо щось не працює, ви можете використовувати таку команду, щоб подивитися повідомлення про помилки:
$ Sudo systemctl status x11vnc.service