it-swarm-ru.tech

Запустить VirtualBox в фоновом режиме, без окна?

Мне было интересно, можно ли запустить виртуальную машину Ubuntu, используя VirtualBox в фоновом режиме, я имею в виду, без какого-либо открытого окна.

Идея состоит в том, чтобы подключиться через SSH к хосту Linux, который будет работать в фоновом режиме.

Кто-нибудь когда-нибудь делал что-то подобное? Является ли это возможным?

105
user35425

VBoxManage startvm $VM --type headless запустит указанную виртуальную машину в фоновом режиме.

Чтобы закрыть его, запросите отключение от гостя.

89
developmentalinsanity

Это встроено в VirtualBox 4.2.

Просто удерживайте клавишу Shift при запуске VM из диспетчера.

https://blogs.Oracle.com/fatbloke/entry/what_s_new_in_Oracle

61
Greg Sansom

Абсолютно! Вы ищете безголовую установку (Virtualbox). Способ запуска машины из командной строки выглядит примерно так:

VBoxHeadless --startvm Debian --vrdp=off

Однако вам понадобится какой-то способ подключения. Что я делаю, так это сопоставление портов между гостем и хостом. При такой конфигурации ваш порт Host 2222 будет сопоставлен с портом 22 вашей гостевой машины.

VBoxManage setextradata "Debian" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol" TCP  
VBoxManage setextradata "Debian" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort" 22  
VBoxManage setextradata "Debian" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort" 2222  

После этого вы можете войти через:

ssh localhost -p2222
23
SystematicFrank

альтернатива VBoxManage startvm "{VMName}" --type headless
VBoxHeadless -startvm "{VMName}"

Достаточно забавно, но я только что понял, как запустить VM без RDP.

Примечание. По крайней мере в окнах оно заблокирует командное окно. Если вам нужно продолжить использовать консольное окно, откройте другое, чтобы запустить VM в.

Чтобы закрыть VM, вы запрашиваете отключение гостевой ОС. VBoxHeadless освобождает консоль, когда гость полностью выключен (Вы можете Ctrl+C, но я думаю, что это может быть аналогом полной перезагрузки на реальной машине).

3
Fake Name

Я не думаю, что бесшовный режим - это то, что он ищет здесь, я думаю, что правильной вещью будет VBoxHeadless, подробности о которой вы можете найти в руководстве. Он работает с использованием интерфейса командной строки и будет использоваться, например, если на сервере была запущена виртуальная машина, но отображение не было запрошено с сервера. Вы сможете удаленно подключиться к компьютеру (если вы знаете, как установить параметр с помощью командной строки).

Я бы порекомендовал спросить об этом на форумах virtualbox. На самом деле, сначала выполните поиск, так как я ожидаю, что об этом уже спрашивали.


VBoxManage был правильным, извините. Ссылка на информацию в руководстве http://www.virtualbox.org/manual/ch08.html

2
tombull89

Я использую VBoxTool от http://vboxtool.sourceforge.net/ , и он отлично работает для меня. Он может автоматически запускать виртуальные машины при загрузке и останавливать/сохранять виртуальные машины при завершении работы и обеспечивает простой интерфейс командной строки.

2
Wolfgang Ulmer

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

Удерживайте клавишу shift и запустите машину, или щелкните правой кнопкой мыши машину и найдите что-то вроде «Запуск без вывода» в пункте «Выполнить».

1
lot

Для запуска в автономном режиме с использованием графического интерфейса пользователя:

Удерживайте клавишу Shift при запуске виртуальной машины.

После этого вы также сможете подключаться и отключаться от графического интерфейса (Использование параметров Показать и Машина -> Отключить графический интерфейс ).

1
rustyx

Я обнаружил, что режим автономной работы, кажется, прекрасно работает при фоновом режиме в Linux (CentOS 5.6), но вы теряете доступ к функциональности RDP, пока процесс является фоновым. Сделайте 'fg', чтобы вернуть процесс на передний план, и функциональность RDP восстановится. Похоже, что запуск vm headless лучше всего выполнить через скрипт init, где интерактивность с консолью не требуется.

1
rhce2009

Если VM запущен и на экране отображается, вы можете скрыть его, выполнив следующие шаги.

 enter image description here

 enter image description here

0
Full Array

Я добавил эти строки в мой .bashrc:

VM='anakim'
alias vm='VBoxManage startvm $VM --type headless'
alias sshvm='ssh -p2222 localhost'

Для доступа по ssh вам не нужно менять конфигурацию, просто сохраните NAT и ​​вы можете настроить таблицу переадресации портов следующим образом:

Name      | Protocol | Host Port | Guest Port
guestssh  | TCP      | 2222      | 22
localhost | TCP      | 8080      | 80

Когда вы вставите localhost: 8080 в браузер вашего компьютера, откроется страница из VM (на порту 80).

0
radeklos