it-swarm.com.de

Wie wird "Oracle VirtualBox (VBOX)" im Hintergrund "Microsoft Windows (WIN)" ausgeführt?

PROBLEM

Ich möchte Autostart ausführen " Virtual Machine (VM) " ohne " Oracle VirtualBox (VBOX) " " Grafische Benutzeroberfläche (GUI) " auf lokaler DEV-Maschine mit " Microsoft Windows (SIEG) ".

Wie kann ich das im Hintergrund ausführen?

44
BG Bruno

LÖSUNG

Der Trick besteht darin, VM ohne GUI auszuführen. Damit können Sie VM auf einem WIN-Server auch wie ein Dienst ausführen.

0) Voraussetzung ist, dass einige VMs vorhanden sind, Sie haben bereits einige. Geben Sie unten seinen Namen anstelle von {VM_Name} ein.

1) Zuerst verwenden wir die eingebaute ausführbare Datei "VBoxHeadless.exe".

erstelle Datei

vm.run.bat

code eingeben

cd "c:\Program Files\Oracle\VirtualBox\"
VBoxHeadless.exe -s {vm_name} -v on

ausführen und testen - WIN " Befehlszeilenschnittstelle (CLI) " aufgerufen " Command Shell " ist geöffnet und VM wird im Hintergrund ausgeführt.

vm.run.bat

2) Dann verwenden wir " Windows-basiertes Skript Host (WSCRIPT) " und Sprache " Microsoft Visual Basic Script (VBS) " und führen über der Datei "vm.run.bat" mit aus.

erstelle Datei

vm.run.vbs

code eingeben

Set WshShell = WScript.CreateObject("WScript.Shell")
obj = WshShell.Run("vm.run.bat", 0)
set WshShell = Nothing

ausführen und testen - CLI wird im Hintergrund ausgeführt.

wscript.exe vm.run.vbs

VERWEISE

Danke an Iain 

http://web.archive.org/web/20150407100735/http://www.techques.com/question/2-188105/Virtualbox-Start-VM-Headless-on-Windows

45
BG Bruno

Sie können VBoxManage zum Starten eines VM Headless verwenden:

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm "Your VM name" --type headless
35
Samuel

Ich habe etwas Ähnliches wie Samuels Lösung verwendet, das hervorragend funktioniert.

Klicken Sie mit der rechten Maustaste auf den Desktop (oder einen beliebigen Ordner) und wählen Sie Neu-> Verknüpfung.

Geben Sie im Ziel Folgendes ein:

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm {uuid} --type headless

Geben Sie im Namen den gewünschten Namen ein und klicken Sie auf Fertig stellen.

Um dieselbe VM zu stoppen, erstellen Sie eine neue Verknüpfung mit dem Ziel:

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" controlvm {uuid} poweroff

Ein Doppelklick auf diese startet und stoppt die VM, ohne dass ein Fenster geöffnet bleibt.

15
Sam F

Ab VirtualBox 4.2 können Sie einfach Shift gedrückt halten, während Sie die VM starten, um sie vollständig im Hintergrund auszuführen. Siehe Details hier .

9
mt_serg

Eine alternative Lösung: http://vboxvmservice.sourceforge.net/

Es funktioniert perfekt für mich! 

7

Wenn Sie die Anwendung einmal manuell bedienen möchten, beenden Sie das Betriebssystem im Hintergrund. Hier sind die Optionen:

Öffnen Sie die virtuelle Box . Klicken Sie mit der rechten Maustaste auf Ihr Gast-Betriebssystem. Wählen Sie: Start Headless .

Schließen Sie dann die Virtual Box-Anwendung.

2
Bimal Poudel

Der Antwort von Bruno Garett nach meiner Erfahrung folgen: Das Testen der vm.run.bat-Datei schlägt fehl, es wird ein Nur-Lese-Fehler ausgegeben, das Skript VB wird jedoch problemlos ausgeführt. Nur um Zeit zu sparen.

Um headless auszuschalten, können Sie auch ein anderes Batch-Skript verwenden (die Lösung von Sam F. funktioniert nicht mit der Lösung von Bruno):

cd "c:\Program Files\Oracle\VirtualBox\"
VBoxManage controlvm "Ubuntu Server" acpipowerbutton

Die zweite Zeile wurde von hier abgerufen, Sie können die gewünschte Option verwenden.

1
DonD

Auch in der GUI gibt es eine einfache manuelle Option:

 Screenshot from Virtualbox 5.2

(Aus Virtualbox 5.2 genommen)

0
bernie

Sie benötigen kein zusätzliches VBScript. Sie können den Befehl im Hintergrund direkt aus der Batchdatei senden:

start "MyBackgroundVM" "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm {uuid} --type headless
0
Roman Haefeli