LINUX.ORG.RU

Отобразить рабочие столы виртуалок на виртуальных рабочих столах DE


0

1

Вот в этой старой статье автор рассказывает, как обеспечить в хост-системе (windows) отображение на нескольких рабочих столах других систем, запущенных в режиме виртуализации.

У меня задача, скажем так, противоположная. Хост-системой будет linux, а в виртуальных машинах будут запущены одна или две windows-системы. Задача - отображать рабочие столы гостевых систем на виртуальные рабочие столы моей DE (mate-desktop для уточнения).

На вопрос «зачем?» отвечаю сразу. Переключаться между основной системой и двумя виртуалками во время рабочего процесса крайне неудобно, но критически важно и нужно. Отобразив содержимое рабочих столов гостевых систем на виртуальные рабочие столы хост-системы я решаю проблему эффективности моей работы и взаимодействия с коллегами в частности.

Можно не выпендриваясь просто развернуть виртуалки на полный экран, по одной на каждом из свободных виртуальных столов. Но это не очень удобно по той простой причине, что когда нужно быстро переключиться с одной виртуалки на другую, или с виртуалки на хост-систему, приходится жать дополнительные клавиши. Это всегда создаёт проблемы и потерю времени. Т.е. предпочтительным вариантом был бы, пожалуй, проброс графики с виртуалки на виртуальный рабочий стол.

Есть ли у меня варианты и какие?
Спасибо!


В VirtualBox есть «режим интеграции дисплея», только всё равно приходится по панели DE (она в таком режиме всегда видна) или другому нативному приложению кликнуть, иначе шорткат не срабатывает. Иначе и не выйдет ИМХО, виртуалка ведь захватывает клавиатуру.

Может получится, подключившись через RDP, но я не пробовал.

supreme
()
Ответ на: комментарий от supreme

Спасибо, но это не совсем то, что нужно, т.к. по сути ничего не меняет по отношению к полноэкранному режиму - остаются всё те же лишние клавиши.

В идеале хочется, чтобы проброшенный рабочий стол гостевой системы полностью заменял виртуальный рабочий стол хост-системы. Я не очень хорошо разбираюсь в особенностях Xorg, но я бы предположил, что каким-то образом нужно создать дополнительные X-сеансы, причём заставить их жить на виртуальных рабочих столах, и в эти сеансы редиректить рабочие столы с гостевых систем. Примерно таким образом рисует мне эту картину моё воображение.

dbzix
() автор топика
Ответ на: комментарий от anonymous

спасибо, это как раз то что мне и нужно было. поковыряюсь и сделаю так же :)

dbzix
() автор топика
Ответ на: комментарий от anonymous

Реализовал через wmctrl.

Пишем в: /home/dbz/virtual/.tmp/change.workspace

Формат такой же: WORKSPACE=0

Скрипт /home/dbz/virtual/.tmp/change.sh :

#/bin/bash

. /home/dbz/virtual/.tmp/change.workspace || exit 1
#echo $WORKSPACE > /home/dbz/virtual/.tmp/out.out #debug
wmctrl -s $WORKSPACE

Единственный нюанс, wmctrl не срабатывал на обычном пользователе (хотя если просто запустить скрипт ручками, то всё работает). Поэтому пришлось забивать incrontab для пользователя root:

/home/dbz/virtual/.tmp/change.workspace IN_CLOSE_WRITE /home/dbz/virtual/.tmp/change.sh

Если кто-то захочет повторить, не забываем отредактировать /etc/incron.allow и добавляем туда пользователей, для которых нужно отредактировать записи в incrontab.

---
Спасибо за помощь!

dbzix
() автор топика

notion (и наверное многие другие WM) так делают по умолчанию со всем полноэкранными приложениями.

sergej ★★★★★
()
Ответ на: комментарий от dbzix

Создают вирт рабочий стол для каждого полноэкранного приложения. Например если в firefox F11 нажать, vbox или remmina на полный экран сделать.

sergej ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.