2

Необходимость

Я запускаю виртуальную виртуальную машину VirtualBox и хотел бы программно открывать и закрывать окно виртуальной машины по желанию из командной строки (скажем, нажав на значок в доке, который запускает командную строку).

Я не говорю о сворачивании окна. Я хочу, чтобы WM переключался между безголовым и оконным режимом.

Дело в том, что мы близки к этому!

  • Случай без головы -> окно - простая командная строка.
  • Случай с windowed-> headless может быть выполнен в интерактивном режиме, я хочу сделать это исключительно из командной строки.

Поиск перед публикацией

Можно открыть ВМ без головы:

VBoxManage startvm testVM --type headless

а затем показать окно:

VBoxManage startvm testVM --type separate

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

Но как спрятаться от командной строки?

Можно в интерактивном режиме скрыть окно, щелкнув гаджет закрытия и выбрав "продолжить в фоновом режиме".

Но я не могу найти, как это сделать из командной строки без этого интерактивного меню.

Нерешение

Я знаю, что есть SDK для загрузки, но это, вероятно, по крайней мере, на порядок сложнее реализовать, чем эти простые командные строки.

1 ответ1

0

Я запускаю виртуальную виртуальную машину VirtualBox и хотел бы программно открывать и закрывать окно виртуальной машины по желанию из командной строки (скажем, нажав на значок в доке, который запускает командную строку).

В итоге я все время выполнял виртуальную машину в автономном режиме, но включал RDP-сервер, предоставляемый VirtualBox (часть пакета расширений). Затем вместо того, чтобы переключаться между автономным и оконным режимом, я просто запускаю и покидаю программу просмотра RDP с правильной настройкой аутентификации.

У этого решения есть некоторые ограничения:

  • Графическая производительность, конечно, не так хороша, как с обычным оконным дисплеем виртуальной машины, но, поскольку мой вариант использования не требует высокопроизводительной графики (без 3D или видео внутри виртуальной машины), это нормально.
  • Настроить определение рабочего стола не так просто, как с обычным оконным дисплеем виртуальной машины. Снова здесь все в порядке.

Вызовы к API, специфичным для VirtualBox, могут обеспечить более тонкую интеграцию, но пока в этом не было необходимости.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .