VirtualBox: virtuelle Maschinen mit Windows starten und herunterfahren

Unter Linux, Solaris und Mac OSX ist es ein Feature für VirtualBox, wie dem Handbuch aus Kapitel 9 zu entnehmen ist: virtualbox.org/manual/ch09.html#autostart. Nicht jedoch unter Windows, hier muß man tricksen.

Desktop-Verknüpfung erzeugen

Startoption ändern

Die Desktop-Verknüpfung hat Eigenschaften, das Ziel ändern zu:

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm "VM Name" --type headless

Verschieben nach Autostart

Den Autostart-Ordner öffnen mit shell:startup

Die Desktop-Verknüpfung hierher verschieben.

Beim nächsten Neustart der Windows-Maschine wird die virtuelle Maschine automatsch gestartet.

Jetzt fehlt nur noch eine Option zum automatischen Herunterfahren der virtuellen Maschine. Wird diese Option nicht eingestellt, verhält sich die virtuelle Maschine beim Herunterfahren der Wirtsmaschine so, als ob man den Stecker ziehen würde. Dies ist auf Dauer natürlich schädlich!

Automatisch herunterfahren

Dies wird mit dem Tool vboxmanage setextradata eingestellt. Es findet sich im VirtualBox-Installationsverzeichnis, normalerweise auf C:\Programme\Oracle\VirtualBox. Am besten zuerst einen Pfad auf diesen Ordner setzen:

Da jetzt der Pfad gesetzt ist, stehen die verschiedenen VBox-Befehle in der Eingabeaufforderung  zur Verfügung.

Virtuelle Maschinen auflisten

vboxmanage list vms

Ergibt eine Liste der installierten virtuellen Maschinen samt ihrer UUID.

Shutdown-Aktion einstellen

Es gibt 4 verschieden Optionen für das Herunterfahren einer virtuellen Maschine

  1. Shutdown
    Fährt die virtuelle Maschine korrekt herunter
  2. PowerOff
    killt die virtuelle Maschine auf die harte Tour – zieht den virtuellen Stecker
  3. PowerOffRestoringSnapshot
    lädt den letzten Snapshot
  4. SaveState
    friert die virtuelle Maschine ein – so wie Hibernate unter Windows. Dies wird für die meisten Anwendungen wohl die beste Option sein.

Nachdem wir durch den list-Befehl jetzt wissen, wie unsere virtuellen Maschinen heißen, können wir nun die Shutdown-Aktion einstellen:

vboxmanage setextradata "Name der VM" GUI/DefaultCloseAction SaveState

Ab jetzt wird die virtuelle Maschine automatisch gesichert, wenn der Wirtscomputer heruntergefahren wird. Da wir bereits auch die Autostart-Option angelegt haben, wird die virtuelle Maschine beim nächsten Neustart automatisch wiederhergestellt.

Reached target Shutdown

Speziell in Ubuntu Linux bleibt die VM nach einem halt gerne bei Reached target Shutdown stehen. Ein shutdown -h now wäre in diesem Fall besser gewesen. Wenn wir nun das Fernster einfach schließen, wird in diesem Fall die virtuelle Maschine gespeichert (also der Shutdown-Zustand), weil wir aber zuvor als Shutdown-Aktion SaveState eingegeben haben.

Hier muß man das virtuelle Stromkabel ziehen, um die VM zu schließen:

vboxmanage controlvm "Name der VM" poweroff