Есть ли VNC-серверы, которые работают с Cinnamon DE 3 на Ubuntu 16.04?

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

Фоновая информация

Мне нужно подключиться удаленно с Windows к Ubuntu 16.04, используя Cinnamon DE 3.2.2.

Однако, когда я пытаюсь настроить VNC, все идет наперекосяк. После исследований я выяснил, что это связано с тем, что Cinnamon использует какое-то ускорение.

Что я пробовал

Я пробовал RealVNC, TightVNC, TigerVNC. Я просто получаю черный экран в VNC Viewer.

Я пробовал использовать RDP, и мне удалось подключиться, но только с помощью сеанса Gnome Flashback, что заставило меня использовать Gnome вместо Cinnamon, что противоречит моим целям.

Teamviewer … стоит денег для неперсонального использования.

введите описание изображения здесь

Вопрос

Существует ли какой-либо VNC-сервер (или какие-либо методы удаленного просмотра рабочего стола) которые работают с текущим, ускоренным рабочим столом Cinnamon (3.2.2), работающим на Ubuntu 16.04?


Редактировать

Вот скриншот того, что происходит. Я использую VirtualBox для хостинга машины на своем компьютере с Windows 10. Справа находится моя программа VNC viewer, которая является Real VNC.

введите описание изображения здесь


Редактировать 2

Содержимое вывода в терминале после подключения VNC:

22/12/2016 08:49:41 Получено соединение от клиента 192.168.10.92
22/12/2016 08:49:41   другие клиенты:
22/12/2016 08:49:41 Обычное сокет-соединение
22/12/2016 08:49:41 Отключена автоповтор клавиш X сервера.
22/12/2016 08:49:41   чтобы включить обратно, выполните: 'xset r on' (3 раза)
22/12/2016 08:49:41 увеличен accepted_client=1 для 192.168.10.92:56946  sock=12
22/12/2016 08:49:41 Версия протокола клиента 3.8
22/12/2016 08:49:41 отправлена версия протокола 3.8, используется 3.8
22/12/2016 08:49:41 rfbProcessClientSecurityType: выполняется обработчик для типа 1
22/12/2016 08:49:41 rfbProcessClientSecurityType: возвращение securityResult для клиента rfb версии >= 3.8
22/12/2016 08:49:41 rfbProcessClientNormalMessage: игнорируется неподдерживаемый тип кодирования Enc(0x00000016)
22/12/2016 08:49:41 rfbProcessClientNormalMessage: игнорируется неподдерживаемый тип кодирования Enc(0x00000015)
22/12/2016 08:49:41 rfbProcessClientNormalMessage: игнорируется неподдерживаемый тип кодирования Enc(0x0000000F)
22/12/2016 08:49:41 rfbProcessClientNormalMessage: игнорируется неподдерживаемый тип кодирования Enc(0xFFFFFEC6)
22/12/2016 08:49:41 Включение обновлений курсора с полной цветовой палитрой для клиента 192.168.10.92
22/12/2016 08:49:41 Включение расширения протокола NewFBSize для клиента 192.168.10.92
22/12/2016 08:49:41 Используется кодирование ZRLE для клиента 192.168.10.92
22/12/2016 08:49:41 Формат пикселей для клиента 192.168.10.92:
22/12/2016 08:49:41   8 bpp, глубина 8
22/12/2016 08:49:41   использует цветовую карту (не истинные цвета).
22/12/2016 08:49:41 rfbProcessClientNormalMessage: игнорируется неподдерживаемый тип кодирования Enc(0x00000016)
22/12/2016 08:49:41 rfbProcessClientNormalMessage: игнорируется неподдерживаемый тип кодирования Enc(0x00000015)
22/12/2016 08:49:41 rfbProcessClientNormalMessage: игнорируется неподдерживаемый тип кодирования Enc(0x0000000F)
22/12/2016 08:49:41 rfbProcessClientNormalMessage: игнорируется неподдерживаемый тип кодирования Enc(0xFFFFFEC6)
22/12/2016 08:49:41 Включение обновлений курсора с полной цветовой палитрой для клиента 192.168.10.92
22/12/2016 08:49:41 Включение расширения протокола NewFBSize для клиента 192.168.10.92
22/12/2016 08:49:41 Переключение с ZRLE на сырое кодирование для клиента 192.168.10.92
22/12/2016 08:49:41 rfbProcessClientNormalMessage: игнорируется неподдерживаемый тип кодирования Enc(0x0000000F)
22/12/2016 08:49:41 rfbProcessClientNormalMessage: игнорируется неподдерживаемый тип кодирования Enc(0x00000016)
22/12/2016 08:49:41 rfbProcessClientNormalMessage: игнорируется неподдерживаемый тип кодирования Enc(0x00000015)
22/12/2016 08:49:41 rfbProcessClientNormalMessage: игнорируется неподдерживаемый тип кодирования Enc(0xFFFFFEC6)
22/12/2016 08:49:41 Включение обновлений курсора с полной цветовой палитрой для клиента 192.168.10.92
22/12/2016 08:49:41 Включение расширения протокола NewFBSize для клиента 192.168.10.92
22/12/2016 08:49:41 Переключение с сырого на hextile кодирование для клиента 192.168.10.92
22/12/2016 08:49:41 Формат пикселей для клиента 192.168.10.92:
22/12/2016 08:49:41   32 bpp, глубина 24, маленький конец
22/12/2016 08:49:41   истинные цвета: макс r 255 g 255 b 255, сдвиг r 16 g 8 b 0
22/12/2016 08:49:41 перевода не требуется
22/12/2016 08:49:41 сеть клиента 1 скорость 1891.4 КБ/сек (1891.4 эффективных КБ/сек)
22/12/2016 08:49:41 задержка клиента 1:  0.5 мс
22/12/2016 08:49:41 dt1: 0.0002, dt2: 0.0093 dt3: 0.0005 байты: 17694
22/12/2016 08:49:41 link_rate: LR_LAN - 1 мс, 1891 КБ/с
22/12/2016 08:49:41 клиент useCopyRect: 192.168.10.92 -1
22/12/2016 08:49:41 клиент_set_net: 192.168.10.92  0.0042
22/12/2016 08:49:41 создан объект xdamage: 0x3400040
22/12/2016 08:49:42 cursor_noshape_updates_clients: 0
22/12/2016 08:49:44 cursor_noshape_updates_clients: 0
22/12/2016 08:49:49 cursor_noshape_updates_clients: 0
22/12/2016 08:49:50 создан selwin: 0x3400041
22/12/2016 08:49:50 вызван initialize_xfixes()
22/12/2016 08:49:52 cursor_noshape_updates_clients: 0

Вы пробовали TeamViewer?

https://www.teamviewer.com/en/download/linux/

Я использую его в своей системе debian с openbox, и он работает хорошо.

Поскольку рабочий стол Cinnamon является производной Gnome Shell и x11vnc хорошо работает в моей системе, я бы сказал, что проблема у вас не в оконном композиторe.

Когда вы запускаете VNC-сервер из сеанса SSH (или любой другой терминальной сессии, которая не была запущена из сеанса X11), вам нужно указать, какой X11 дисплей использовать, например:

x11vnc -display :0

или

DISPLAY=:0 x11vnc

Другие VNC-серверы могут использовать разные способы указания дисплея, но они должны принимать переменную среды DISPLAY по умолчанию.

x11vnc также позволяет использовать “символические” имена дисплеев, основанные на имени учетной записи пользователя, владеющего X-сеансом. Он также может создавать новые X-сеансы на виртуальном устройстве Xfvb. Для получения дополнительной информации смотрите описание параметра -display в x11vnc(1) руководстве.


Вы также можете попробовать Vino, графический интерфейс настройки для предоставления удаленного (VNC) доступа к текущей запущенной сессии рабочего стола.

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

Настройка удаленного доступа к рабочему столу на Ubuntu 16.04 с использованием окружения рабочего стола Cinnamon 3.2.2 может оказаться достаточно сложной задачей, особенно при использовании VNC-серверов. Рассмотрим некоторые из возможных решений и методов, которые могут помочь решить вашу проблему.

1. Проблема с VNC и Cinnamon

Cinnamon, как вы правильно заметили, использует аппаратное ускорение, что может создавать трудности при попытке подключиться к нему через VNC. Часто пользователи сталкиваются с черным экраном, поскольку VNC-сервер не может корректно захватить вывод сессии приложения.

2. Рекомендации по использованию VNC

Среди доступных VNC-серверов часто упоминают TightVNC, TigerVNC и RealVNC. Однако в вашем случае, похоже, что они не устраивают. Ниже приведены несколько дополнительных рекомендаций:

  • X11VNC: Это один из наиболее популярных VNC-серверов, который позволяет подключаться к существующим X-сессиям. Чтобы использовать X11VNC, выполните следующие шаги:

    sudo apt install x11vnc

    После установки создайте пароль для доступа:

    x11vnc -storepasswd

    Запускайте сервер с указанием дисплея:

    x11vnc -display :0

    или с использованием переменной окружения DISPLAY:

    DISPLAY=:0 x11vnc
  • Vino: Это сервер VNC, который обычно предустановлен в GNOME и может использоваться для предоставления удаленного доступа к текущей сессии. Для установки Vino выполните:

    sudo apt install vino

    Настройте Vino с помощью следующей команды:

    vino-preferences

    Далее настройте параметры доступа и проверьте, активировано ли разрешение для удаленного доступа.

3. Альтернативы VNC

Если VNC продолжает вызывать проблемы, рассмотрите возможность использования RDP. Вы уже пробовали RDP, но для подключения к Cinnamon пришлось использовать Gnome Session Flashback. Вместо этого вы можете установить xrdp, что обеспечит более стабильный доступ:

sudo apt install xrdp

Затем настройте xrdp для работы с Cinnamon:

  1. Проверьте, что ваш пользователь добавлен в группу ssl-cert.

    sudo adduser xrdp ssl-cert
  2. Настройте сессию, добавив файл .xsession в ваш домашний каталог:

    echo "cinnamon-session" > ~/.xsession

После этого перезапустите xrdp и попробуйте подключиться к Ubuntu через RDP-клиент на Windows.

4. Заключение

Удаленный доступ к Ubuntu с Cinnamon через VNC может быть сложной задачей, но использование x11vnc или Vino может значительно улучшить ситуацию. Если VNC не работает должным образом, стоит рассмотреть RDP как альтернативу.

В выбранных вами методах, обратите внимание на корректную настройку серверов и соответствующие команды, чтобы обеспечить правильный запуск. Надеюсь, эти рекомендации помогут вам успешно настроить удаленный доступ к вашей системе. Если у вас остались вопросы или необходимо больше информации по какому-либо аспекту, не стесняйтесь спрашивать.

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

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