it-swarm.com.de

So fahren Sie das Gastbetriebssystem in VirtualBox mithilfe der Befehlszeile sicher herunter

Ich habe Ubuntu 10.10 und benutze VirtualBox 3.2. Als Gastbetriebssystem habe ich ein anderes Ubuntu in der VirtualBox.

Ich starte Guest Ubuntu automatisch mit dem folgenden Befehl, sobald mein Host Ubuntu hochfährt:

VBoxHeadless -startvm Ubuntu --vrdp on

Dann kann ich mit ssh oder tsclient darauf zugreifen.

Jetzt muss ich Guest Ubuntu automatisch herunterfahren, sobald ich Host Ubuntu heruntergefahren habe. Kennt jemand eine sichere Methode, um Guest Ubuntu über eine Befehlszeile automatisch herunterzufahren? Ich habe zwei Möglichkeiten herausgefunden, wie man das Gastbetriebssystem herunterfahren kann, bin mir aber nicht sicher, ob sie sicher sind oder nicht. Hier sind sie:

VBoxManage controlvm Ubuntu acpipowerbutton

oder

VBoxManage controlvm Ubuntu poweroff
69
Bakhtiyor

Wenn Sie die Gnome-Energieverwaltungseinstellungen öffnen, können Sie festlegen, welche Aktionen ausgeführt werden sollen, wenn der Netzschalter gedrückt wird. Wenn Sie festlegen, dass es heruntergefahren werden soll, wird es ordnungsgemäß heruntergefahren, wenn Sie den virtuellen Ein-/Ausschalter mit dem Befehl VBoxManage controlvm Ubuntu acpipowerbutton drücken.

55
Egil

Verwenden Sie zum sicheren Herunterfahren von vm den folgenden Befehl:

vboxmanage controlvm Ubuntu poweroff soft
16
menzer

Wenn Sie die VM herunterfahren, während der Server dies tut, müssen Sie auf die VM warten.

(In diesem Shellscript ist 'root' der Aufrufer und 'theuser' der Eigentümer von 'thevm'.)

Ich weiß, dass die vms beendet sind, wenn die Ausgabe des Befehls VBoxManage list runningvms eine leere Zeichenfolge zurückgibt.

Ich benutze dies in meinem Shell-Skript

...
stop(){
    su -c "VBoxManage controlvm thevm acpipowerbutton" -s /bin/bash theuser
    while [ "`su -c 'VBoxManage list runningvms' -s /bin/bash theuser`" != "" ]
    do
        echo waiting for VMs to shutdown
        sleep 3
    done
}
...
11
Jorge Sanchez

Mach das nicht:

VBoxManage controlvm Ubuntu poweroff

Dies entspricht dem Ziehen des Netzsteckers an einem echten Computer. Das willst du nicht!

Verwenden Sie die ACPI-Methode zum Herunterfahren (überprüfen Sie die Energieverwaltungseinstellung, wie von Egil vorgeschlagen) oder probieren Sie die Methode zum Speichern des Status (savestate) aus.

9
htorque

Sie sollten Ihr virtuelles Ubuntu genauso ausschalten wie Ihre reale Hardware. Aus einer Kommandozeile in einer SSH-Sitzung:

Sudo poweroff

Wenn Sie den Maschinenzustand speichern möchten (ähnlich wie Suspend/Hibernate), verwenden Sie den zweiten Punkt in @ htorques Antwort .

6
Takkat