it-swarm.com.de

VirtualBox im Hintergrund ohne Fenster ausführen?

Ich habe mich gefragt, ob es möglich ist, eine virtuelle Ubuntu-Maschine mit VirtualBox im Hintergrund auszuführen, ohne dass ein Fenster geöffnet ist.

Die Idee ist, sich über SSH mit dem Linux-Host zu verbinden, der im Hintergrund laufen würde.

Hat jemand so etwas schon einmal gemacht? Ist es möglich?

105
user35425

VBoxManage startvm $VM --type headless startet die angegebene virtuelle Maschine im Hintergrund.

Fordern Sie zum Herunterfahren das Herunterfahren beim Gast an.

89

Dies ist in VirtualBox 4.2 integriert.

Halten Sie einfach die Umschalttaste gedrückt, wenn Sie VM über den Manager starten.

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

61
Greg Sansom

Absolut! Sie suchen eine kopflose Installation (Virtualbox). So starten Sie den Computer über die Befehlszeile:

VBoxHeadless --startvm Debian --vrdp=off

Sie benötigen jedoch eine Möglichkeit, eine Verbindung herzustellen. Was ich tue, ist die Zuordnung von Ports zwischen Gast und Host. Mit dieser Konfiguration wird der Host 2222-Port dem Port 22 Ihres Gastcomputers zugeordnet.

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  

Danach können Sie sich einloggen mit:

ssh localhost -p2222
23
SystematicFrank

eine alternative zu VBoxManage startvm "{VMName}" --type headless ist
VBoxHeadless -startvm "{VMName}"

Amüsanterweise habe ich gerade herausgefunden, wie man eine VM kopflos über RDP laufen lässt.

Hinweis - Zumindest unter Windows wird Ihr Befehlsfenster blockiert. Wenn Sie Ihr Konsolenfenster weiterhin verwenden müssen, öffnen Sie ein anderes, um VM in zu starten.

Zum Herunterfahren von VM fordern Sie das Gastbetriebssystem zum Herunterfahren auf. VBoxHeadless gibt die Konsole frei, wenn der Guest vollständig heruntergefahren ist (Sie können Ctrl+C, aber ich denke, es ist möglicherweise analog zu einem Hard-Reset auf einem realen Computer).

3
Fake Name

Ich glaube nicht, dass der Seamless-Modus genau das ist, wonach er hier sucht. Ich denke, das Richtige wäre VBoxHeadless. Welche Details Sie im Handbuch finden können. Es wird über eine Befehlszeilenschnittstelle ausgeführt und beispielsweise verwendet, wenn eine virtuelle Maschine auf einem Server ausgeführt wird, die Anzeige jedoch nicht vom Server gewünscht wird. Sie können Remotedesktop auf dem Computer ausführen (vorausgesetzt, Sie wissen, wie die Option über die Befehlszeile festgelegt wird).

Ich würde empfehlen, dies in den Virtualbox-Foren nachzufragen. Führen Sie zunächst eine Suche durch, da dies meines Erachtens bereits abgefragt wurde.


VBoxManage war das Richtige, sorry. Verlinken Sie die Informationen im Handbuch http://www.virtualbox.org/manual/ch08.html

2
tombull89

Ich benutze VBoxTool von http://vboxtool.sourceforge.net/ und es funktioniert perfekt für mich. Es kann VMs beim Booten automatisch starten und VMs beim Herunterfahren stoppen/speichern und bietet eine einfache, saubere Befehlszeilenschnittstelle.

2
Wolfgang Ulmer

Sie können VBoxHeadless verwenden oder (und ich frage mich, warum das vor mir niemand erwähnt hat) einfach eine der Startoptionen auswählen, mit denen VM ohne GUI ausgeführt wird.

Halten Sie die Umschalttaste gedrückt, und starten Sie die Maschine, oder klicken Sie mit der rechten Maustaste auf die Maschine, und suchen Sie unter "Ausführen" nach "Ohne Ausgabe ausführen".

1
lot

So starten Sie im Headless-Modus mit der GUI:

Halten Sie die Umschalttaste gedrückt, wenn Sie die VM starten.

Danach können Sie auch eine Verbindung zur GUI herstellen und diese trennen (Verwenden von Show und Machine -> Detach GUI options).

1
rustyx

Ich habe festgestellt, dass der Headless-Modus beim Hintergrundbetrieb unter Linux (CentOS 5.6) anscheinend einwandfrei funktioniert, aber Sie verlieren den Zugriff auf die RDP-Funktionalität, solange der Prozess im Hintergrund ausgeführt wird. Führen Sie ein 'fg' aus, um den Prozess wieder in den Vordergrund zu stellen, und die RDP-Funktionalität wird wiederhergestellt. Sieht so aus, als würde das Starten des vm headless am besten über ein Init-Skript erfolgen, bei dem keine Interaktivität mit der Konsole erforderlich ist.

1
rhce2009

Wenn VM ausgeführt wird und der Bildschirm angezeigt wird, können Sie ihn mithilfe der folgenden Schritte ausblenden.

 enter image description here

 enter image description here

0
Full Array

Ich habe diese Zeilen in meine .bashrc eingefügt:

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

Für den SSH-Zugriff müssen Sie die Konfiguration nicht ändern. Behalten Sie nur das NAT bei, und Sie können die Portweiterleitungstabelle wie folgt einrichten:

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

Wenn Sie localhost: 8080 in Ihren Maschinenbrowser einfügen, wird die Seite von VM (auf Port 80) geöffnet.

0
radeklos