![Начать новый сеанс Remote X в отдельном TTY](https://rvso.com/image/1070926/%D0%9D%D0%B0%D1%87%D0%B0%D1%82%D1%8C%20%D0%BD%D0%BE%D0%B2%D1%8B%D0%B9%20%D1%81%D0%B5%D0%B0%D0%BD%D1%81%20Remote%20X%20%D0%B2%20%D0%BE%D1%82%D0%B4%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%BC%20TTY.png)
В моей домашней настройке два компьютера находятся в одной локальной сети, оба работают под управлением Ubuntu 20.04. Я надеюсь настроить способ доступа к моему вторичному компьютеру через мой основной, переключившись на новый TTY и запустив удаленный сеанс X. Я не хочу делиться экраном или получать доступ к существующему сеансу X. Кроме того, компьютер, который я использую для запуска удаленного сеанса X, имеет два монитора, и я хотел бы воспользоваться преимуществами обоих.
Я попробовал несколько вариантов. Кажется, XDMCP может делать то, что я хочу, но пока мне не повезло (получил доступ, но только черный экран с курсором). Кроме того, похоже, что он использует высокую пропускную способность и небезопасен, так что в идеале я бы использовал что-то другое.
Я пробовал X2Go, но не смог найти способ запустить его в отдельном TTY или использовать оба моих монитора.
Я также слышал о таких вещах, как xvnc и NoMachine, но не уверен, можно ли запустить хоть одну из них так, как мне бы хотелось.
Есть ли какие-либо существующие способы сделать это? Или, в качестве альтернативы, есть ли способ сжать и/или защитить XDMCP? Я видел, что XDMCP может работать через SSH, это правда?
Спасибо!
решение1
Сессии X Window не работают так, как вы ожидаете. Вы думаете, что на другой стороне есть "сервер", к которому вы подключаетесь, и который вы хотите контролировать.
На самом деле, это работает наоборот. Машина, которую вы подключаетеотвыступает в качестве сервера, и при подключении вы указываете ему отображать данные на другой машине.
Итак, X должен быть запущен на машине, С которой вы подключаетесь, затем выполните следующие действия:
Откройте xterm или любое другое ваше любимое приложение для работы с окнами терминала.
На локальной машине в терминале разрешите подключения с удаленного хоста:
xhost + 192.168.1.2 (где 192.168.1.2 — это машина, к которой вы подключаетеськ)
В том же терминале откройте оболочку для удаленной машины (192.168.1.2), используя ssh, с переадресацией X11:
ssh -Y логин@имя_хоста
На удаленном компьютере настройте свой дисплей:
export DISPLAY=192.168.1.1:0.0
(это будет машина, к которой вы подключаетесь)от)Теперь запустите программу. Просто запустите xeyes, или xcalc, или chrome, или что-то еще. Программа должна появиться в вашем локальном интерфейсе X Window через некоторое время. Она запущена на удаленной машине, но отображается локально.
Обратите внимание, что удаленной машине даже не нужно иметь запущенный на ней сервер X Window. Фактически, она действует как клиент для сервера X Window вашего локального компьютера.
XDMCP определенно "тяжелее", чем более оптимизированный протокол для изменения отображения, такой как VNC. С другой стороны, цель другая: VNC обычно работает на всем экране. И нет ничего, что могло бы помешать вам установить VNC-сервер и пойти этим путем. В этом случае подойдет любой VNC-клиент.