VNC или Virtual Network Computing - это одна из самых популярных технологий удаленного доступа к рабочему столу, которая используется в Linux. Ранее очень часто для доступа к удаленному рабочему столу в Linux использовался VNC сервер x11vnc, но после перехода Ubuntu на Wayland настройка X11vnc стала сложной. Но у него есть несколько альтернатив, например, TigerVNC, который мы сегодня рассмотрим.
В отличие от X11vnc здесь вы не можете подключиться к уже запущенной рабочей сессии, вместо этого каждый запущенный процесс VNC сервера будет создавать свою рабочую сессию на отдельном виртуальном экране дисплейного сервера. Дальше мы рассмотрим как выполняется установка и настройка VNC Server Ubuntu 18.04, а также первоначальная настройка программы для начала работы.
Содержание статьи
Установка VNC Server на Ubuntu 18.04
Протокол VNC позволяет делиться рабочим столом, поэтому вам будет необходимо иметь установленное окружение рабочего стола. В редакции Ubuntu для рабочего стола используется окружение Gnome. Но если вы пытаетесь установить программу на сервер, то сначала установите графическую оболочку.
Чтобы установить VNC server в Ubuntu выполните такую команду:
sudo apt install tigervnc-standalone-server tigervnc-common tigervnc-xorg-extension tigervnc-viewer
Также необходимо установить эмулятор терминала xterm, его программа будет использовать для запуска тестового окружения:
sudo apt install xterm
Для запуска сервера используется команда vncserver. Её синтаксис очень прост:
vncserver порт:номер_дисплея опции
А вот её основные опции:
- -dry-run - тестовый запуск, не выполнять никаких реальных действий;
- -verbose - включить более подробный вывод;
- -useold - запустить VNC сервер только если он ещё не запущен;
- -cleanstale - очистить оставшиеся файлы после предыдущего запуска;
- -localhost - разрешить подключения только с локального компьютера;
- -name - имя VNC сервера, которое будет отображаться при подключении, по умолчанию используется host:display# (username);
- -geometry - разрешение экрана для запускаемого окружения, например, 1024x768;
- -depth - глубина цвета, доступны значения: 8, 15, 16 и 24;
- -fg - не запускать сервис в фоновом режиме и оставить его привязанным к терминалу;
- -autokill - автоматически останавливать сервер после завершения подключения;
- -xstartup - программа, которую следует использовать вместо оболочки;
- -list - список запущенных серверов;
- -kill - завершить запущенный vnc сервер.
Теперь можно попытаться запустить VNC Server:
vncserver -xstartup /usr/bin/xterm
При первом запуске утилита предложит вам ввести пароль, который можно будет использовать для подключения к компьютеру, а также ввести пароль для подключения в режиме только просмотр. Последнее можно пропустить. Обратите внимание, что утилиту необходимо запускать от имени обычного пользователя, а не суперпользователя.
Утилита не только создаст конфигурацию, но и запустит VNC сервер. Посмотреть список запущенных серверов можно командой:
vncserver -list
Чтобы завершить запущенный VNC сервер используйте опцию kill и идентификатор дисплея, на котором запущен сервер из предыдущей команды:
vncserver -kill :1
Мы запускали TigerVNC с рабочем окружением в виде терминала, но теперь нам необходимо полноценное рабочее окружение Gnome. Чтобы его настроить создайте файл ~/.vnc/xstartup со следующим содержимым:
Это скрипт, который запускает рабочее окружение Gnome, вы также можете запускать и другие окружения. Теперь запущенный VNC сервер появится в списке доступных серверов и вы можете к нему подключиться.
Чтобы показать использование других опций давайте запустим vncserver на четвертом виртуальном дисплее с разрешением экрана 1024x768:
vncserver :1 -geometry 1024x768
Подключение к VNC серверу
Во-первых, на локальной машине вы можете подключиться к только что запущенному VNC серверу с помощью команды, которую предлагает сам сервер после запуска:
vncviewer -SecurityTypes VncAuth -passwd /home/sergiy/.vnc/passwd :1
В этой команде мы указываем тип авторизации и передаем файл с паролем, который создали при первом запуске VNC сервера. Перед вами откроется окно удаленного соединения.
Также можно запустить vncviewer Ubuntu без параметров, тогда утилита откроет графический интерфейс, где вам нужно ввести ip адрес машины, на которой запущен сервер, а также номер дисплея или порта:
После этого нужно ввести пароль для подключения и откроется это же окно удаленного соединения:
Выводы
В этой статье мы рассмотрели как выполняется установка VNC на Ubuntu 18.04, а также как настроить программу для полноценной работы.
Это все для Х-сессии. А есть ли способ поднять VNC-сервер в wayland.
Потому как для Х-сессий гораздо проще настроить VINO.
Как то раз имел дело с vino-preferences удобная и очень простая штука, т.к. мне нужно было управлять сессией текущего пользователя
Следующие пакеты имеют неудовлетворённые зависимости:
tigervnc-xorg-extension : Зависит: xserver-xorg-core (>= 2:1.7.7)
Я бы еще добавил команду -localhost no иначе сервер будет слушать только localhost и удаленно зайти не получиться, не смотря на то что сервер работает:
vncserver -localhost no :1 -geometry 1024x768
Еще бы добавил такое, что после перезагрузки перестает работать мышь и клавиатура.
Что бы этого избежать заранее или после перезагрузки уже по ssh подключившись, дать команду
#apt install xserver-xorg-input-all
#apt xserver-xorg-core
Есть мануал про Vinagre? встроенная программа просмотра удаленных рабочих столов в Гном, к ней так же нужно устанавливать vnc server или он уже в пакете с ней? не могу подключиться...
Не удаётся подключиться к серверу VNC! Это первая статья которая мне не помогла на этом сайте!