Ubuntu 22.04 LTS удаленный рабочий стол устаревший VNC принимает только одно соединение

Вопрос или проблема

Как указано в заголовке, я включил службу общего доступа к экрану по умолчанию в ubuntu gnome. Хорошая новость в том, что она поддерживает как MS RDP, так и VNC протоколы. Однако я обнаружил, что VNC принимает только одно соединение. Если один пользователь уже подключен к рабочему столу через VNC, второй пользователь (использующий realVNC) получит сообщение об ошибке “Соединение неожиданно закрыто”. Еще одно преимущество заключается в том, что соединение RDP не имеет этого ограничения. Несколько пользователей могут одновременно подключаться к одному и тому же рабочему столу через RDP (что также странно, поскольку настоящая версия Windows DESKTOP принимает только одно соединение). В /var/log/syslog есть лог-событие “gnome-remote-de[идентификатор процесса]: Отказ в новом VNC-соединении: уже активная сессия”

Кто-нибудь знает, как сделать несколько VNC-соединений? Конечно, я могу использовать RDP, но я бы предпочел остаться с VNC, так как другие компьютеры прекрасно работают с VNC. Использовать больше одного инструмента кажется… раздражающим. Установка другого VNC-сервера кажется избыточной.

Исправление: Я только что заметил, что рабочий стол – это X11, а не wayland. Удалите все “wayland” выше.

Вам нужно определить больше дисплеев в вашей X11 настройке для vnc. В данный момент у него есть только один физически подключенный дисплей. Я не делал ничего подобного, поэтому не знаю, как это сделать. Google – ваш друг: Добавить виртуальный X11 экран для использования через VNC

Ответ или решение

Решение проблемы с несколькими подключениями VNC в Ubuntu 22.04 LTS

Введение

Использование VNC (Virtual Network Computing) для удалённого доступа к рабочему столу Ubuntu 22.04 LTS может сталкиваться с ограничениями по количеству одновременных подключений. В данной статье мы рассмотрим, почему VNC в вашем случае принимает только одно соединение, и как добиться поддержки нескольких подключений, сохраняя при этом функциональность системы.

Описание проблемы

Вы включили стандартный сервис удалённого рабочего стола GNOME, который поддерживает как протоколы VNC, так и RDP. Однако, при попытке подключиться к одному и тому же рабочему столу через VNC, вам систематически выдаётся ошибка "The connection closed unexpectedly" после того, как уже есть активное соединение. В то же время, RDP позволяет нескольким пользователям одновременно подключаться к одному и тому же рабочему столу.

Лог-файл /var/log/syslog указывает на ошибку: gnome-remote-de[process id]: Refusing new VNC connection: already an active session, что явно указывает на невозможность создания новых VNC-сессий при наличии активной.

Причины ограничения

По умолчанию, сервис VNC в Ubuntu настроен на использование одного активного соединения, что связано с конфигурацией X11. Если система подключена к физическому экрану, такой как консоль Linux, то она будет ограничена одним пользователем.

Решение проблемы

Чтобы разрешить несколько VNC-соединений на одной машине, вам необходимо создать несколько виртуальных дисплеев в X11. Вот шаги, которые помогут вам настроить это:

1. Установка необходимых пакетов

Убедитесь, что у вас установлены необходимые пакеты для работы с VNC:

sudo apt update
sudo apt install tightvncserver

2. Конфигурация виртуальных дисплеев

Создайте конфигурацию для дополнительных виртуальных дисплеев. Для этого вам потребуется редактировать файл конфигурации вашего дисплея:

  1. Создайте скрипт для запуска нового VNC-сервера. Например, создайте файл ~/.vnc/xstartup и добавьте в него содержимое:

    #!/bin/sh
    xrdb $HOME/.Xresources
    startgnome &
  2. Дайте права на выполнение этому файлу:

    chmod +x ~/.vnc/xstartup
  3. Запустите VNC сервер на новом виртуальном дисплее:

    vncserver :1

    Это создаст новый виртуальный дисплей, на котором будет доступен другой экземпляр рабочего стола GNOME.

3. Подключение к VNC

Теперь вы можете подключаться к различным виртуальным дисплеям, используя :1 для первого дополнительного соединения, :2 для второго и так далее.

4. Управление VNC-сессиями

Чтобы остановить или перезапустить VNC-сессии, можно использовать следующие команды:

vncserver -kill :1

Заключение

Следуя данным шагам, вы сможете настроить поддержку нескольких VNC-соединений на вашем Ubuntu 22.04 LTS. Это позволит вам использовать протокол VNC по мере необходимости, сохраняя доступ к функциональности нескольких удалённых пользователей. Если понадобятся дополнительные настройки, вы всегда можете обратиться к сообществу или специализированной документации. Помните, что использование RDP также является отличным вариантом, если вы хотите использовать одновременное подключение нескольких клиентов.

Оцените материал
Добавить комментарий

Капча загружается...