есть ли какие-либо решения для установки textmode debian wheezy, в котором я могу запустить виртуальную машину, на которой установлен графический интерфейс, который будет отображаться на одном из экранов?
Debian Wheezy-VM с GUI на хосте без GUI-возможно? [закрытый]
1 ответ
нет, не совсем, но обратите внимание, что все различие между "текстовым режимом Debian" и "GUI Debian" существует только в вашей голове; -)
идея в том, что обычно вам нужен либо "сервер", а затем это обычно означает" текстовый режим", либо" рабочая станция", а затем это обычно означает некоторую среду рабочего стола, например GNOME или KDE или XFCE или что-то еще. Загвоздка здесь в том, что виртуальные пакеты установка соответствующих "рабочих столов" обычно зависит на одном или другом пакете, предоставляющем так называемый менеджер отображения-программа, которая запускается при загрузке, порождает X-сервер (сложная часть программного обеспечения, фактически предоставляющая консоль GUI), запускает на нем менеджер входа в систему, и как только вам удастся успешно войти в систему, он отвечает за настройку сеанса для вас. Как только вы выходите из сеанса, менеджер дисплея снова запускается, поэтому вы возвращаетесь к квадрату 0.
но ничего не требует, чтобы у вас был установлен менеджер дисплея (или запуск при загрузке). Просто установите xorg
пакет, и вы получите X-сервер, который вы сможете запустить вручную.
теперь перейдем к более хардкорные вещи.
во-первых, вам нужно запустить X-сервер, а затем вам нужно запустить программу GUI таким образом, он знает, как связаться с порожденного X-сервера.
отложим на минуту вопрос запуска экземпляра X-сервера и поговорим о том, как программа с поддержкой X находит сервер. Там больше, чем один способ сделать это, но наиболее распространенным является поиск переменной среды с именем "DISPLAY", которая должна содержать имя гнездо экземпляр X-сервера прослушивает подключение клиента и так называемый номер дисплея. Я не хочу писать слишком много об этом здесь: решающий бит для понимания заключается в том, что после запуска X-сервера программы, которые хотят его использовать, обычно должны видеть соответствующий набор env. переменной уметь найти сервер.
и вот тут на сцену выходит концепция "X-сессии": в то время как вы можете запустить экземпляр X-сервера вручную, проще использовать специальную программу, чтобы сделать это за вас, и в дополнение к запуску программы или набора программ в специально приготовленной среде, чтобы они могли найти запущенный сервер.
в старые добрые времена ручного запуска X-серверов и подключенных к ним сессий люди обычно использовали startx
скрипт, который по-прежнему поддерживается и является частью xinit
пакета. Он порождает X-сервер и либо запускает указанную программу, либо выполняет ~/.xinitrc
сценарий оболочки. Вы получаете идею.
но в наши дни может быть удобнее использовать менеджер дисплея с автологином-так что у вас есть готовый сеанс X, сидящий на указанном VT прямо при загрузке. Используйте nodm
пакет для этого. Это автозапуске X-сервер, а затем запускает указанный скрипт имени указанного пользователя.
в любом случае, просто убедитесь, что ваша виртуальная машина работает как часть процесса запуска X сессии, или сделать программное обеспечение виртуальной машины увидеть правильный DISPLAY
переменные среды.
Обновление ПО 2016-09-20 ответ @LauriK
комментарий:
...не совсем. Позвольте мне объяснить. В своем ответе я объяснил, как X-клиенты находят X-сервер. В X парадигмы системы Windows, X-клиенты (программы) ничего не рисуют сами но скорее канальные запросы, чтобы сделать это с экземпляром X-сервера, к которому они подключены-через сокет. Таким образом, графический экран (с указателем мыши), который вы видите на локальном компьютере, на котором вы сидите (то есть на вашем мониторе), представлен вам экземпляром X-сервера, работающего локально.
теперь интересное свойство подключаемого X-клиента и X-сервера над сокетом является то, что они действительно могут быть запущены на разных компьютерах - если этот сокет подключен к сети (скажем, предоставлено стек TCP/IP). Это несколько менее известное свойство X Window System, который называется прозрачность сети.
решающий бит прозрачности сети X является то, что X-сервер всегда работает на локальной машине (той, которая имеет монитор и устройства ввода, подключенные к нему) в то время как X клиенты, опираясь на него может выполняться локально или на любом количестве удаленных компьютеров.
эта парадигма родилась естественно потому что он был изобретен в "универсальный era": в основном, в помещениях типичного предприятия / лаборатории / что угодно, существовал бы одиночный дорогой мощный универсальный и несколько путь более менее мощные рабочие места которые, - был более менее мощны,- оборудуйте с графическими экранами. В таких установках, рабочие станции бы запустить их x программ на ЭВМ, и эти программы будут рисовать на X-серверах, работающих на рабочих станциях.
сделать это может быть более ясным, х протокол поддерживает набор примитивов для рисования (таких как линии, прямоугольники, заливка областей определенного цвета и т. д.).
NX suite (what nomachine.com
предоставляет) вроде "переворачивает" подход
все совсем как в RDP (терминальный доступ к серверу)
протокол Windows или VNC.
в этой парадигме и X-клиенты, и X-сервер рисуют через все они расположены на удаленной машине ("сервер"), но вместо рисования на фактическом экране оборудования (скажите, a монитор) X-сервер "рисует" где-то (подробнее об этом в секунду), и эта информация отражена и удаленно подключенного клиента. То есть, вся" экранная " информация передается оптом. От клиента на сервер поступает другой поток информации: данные от устройств ввода клиента, такие как нажатия клавиш клавиатуры и движения указывающих устройств.
в этой парадигме вся "графическая сессия" выполняется на сервер, рисуется там, и эта постоянно меняющаяся "картинка экрана" непрерывно передаются на подключенный клиент (очень эффективно). Вы можете смотреть на это так, как будто сервер генерирует бесконечное видео youtube который вы транслируете и просматриваете.
как вы можете видеть, эта парадигма противоположна по сравнению с оригиналом X модель прозрачности сети, как X-сервер работает удаленно, а также.
вы, как клиент, обычно "видите" весь удаленный графический сессия в одиночном окне представленном специализированной частью програмного обеспечения которая используется для создания и поддержания удаленного сеанса.
преимущество этого подхода заключается в том, что он облегчает перенос неграфическая информация во время сеанса, например звук, совместное использование принтеров и других устройств и т. д.
последний бит головоломки, как данные с удаленного сервера X доставляется удаленно подключенному клиенту.
в принципе, есть два способа достичь этого:
специальная часть програмного обеспечения бежать "крюки" сервер-стороны в рисование событий, созданных X-сервером, и их обработка: определяет, какие области экрана были обновлены, и как, сочетает в себе обновления в пакеты, возможно "downscales" их (снижение глубина цвета и/или разрешение), сжимает их и отправляет клиенту.
так работает серверное программное обеспечение VNC.
X-сервер может рисовать на реальном оборудовании прибор или может нарисовать в специальную область памяти под названием фреймбуфер. Последний подход позволяет запускать любое количество графических сессий удаленные клиенты на "безголовых" машина-которой нет графические устройства вывода или только элементарные, такие как текстовые консоли.
сервер использует специальный драйвер дисплея, который работает как любой другой "реальный" драйвер дисплея, управляющий аппаратным устройством, таким как видеокарта, но этот водитель просто не что делает программное обеспечение, описанное выше-делает убедитесь, что выходные данные сервера эффективно доставляются клиенту.
насколько мне известно, NX / nomachine (и его аналог F/OSS, X2Go) реализует второй подход.
обратите внимание, что NX/X2Go-не единственные решения, использующие эту парадигму. Популярный стек виртуализации KVM поддерживает протокол SPICE подключиться к виртуализированному графическому экрану своих гостей. Есть драйверы Windows, реализующие специальный делать протокола QXL их графический вывод будет эффективно доставлен клиентам с помощью SPICE (и VNC также).
Также обратите внимание, что можно "экспортировать" только одно приложение
запуск удаленно с помощью этой парадигмы. Я опустил эту возможность в
мое объяснение не перегружать вас информацией.
Например, посмотрите на xpra
.
наконец, обратите внимание, что текущие" игры изменения " технологии в * Никс графика-Вэйланд проект-фактически поддерживает только это ПХ-подход к работе с удаленными графическими программами. Когда он берет на себя, "X-way" прозрачность сети станет в прошлое. ; -)
надеюсь, что это помогает.
Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]