srynoname
Goto Top

Workstation-VMs beim Herunterfahren beenden

Ich nutze VMWare Workstation 9.0.1 build-894247 (Windows 7) mit der Option "Keep VMs running after Workstation closes". Beim Herunterfahren des Systems (oder bei Abmeldung des Benutzers) werden die laufenden VMs direkt abgeschalten. Ich möchte, dass laufende VMs suspended werden oder zumindest sauber heruntergefahren werden.
Ich habe es daher mit einen Shutdown- als auch Logoff-Skript versucht, beides hilft jedoch nicht, denn die protokollierte Ausgabe von "vmrun list" zeigt mir, dass selbst bei Aufruf des Logoff-Skripts bereits die laufenden VMs beendet wurden - weiß jemand, wie ich es dennoch schaffe, meine VMs sauber zu beenden? Gibt es eine Möglichkeit, ein Skript noch früher als normale Logoff-Skripte auszuführen?

Content-ID: 201150

Url: https://administrator.de/contentid/201150

Ausgedruckt am: 22.11.2024 um 12:11 Uhr

Onitnarat
Onitnarat 01.02.2013 um 17:34:24 Uhr
Goto Top
Hi,
das kann wohl VMWorkstation nicht, ist den Serverprodukten vorbehalten.

Google: https://www.google.de/search?q=vmware+workstation+shutdown+guest+when+ho ...
Mögliche Lösung: http://communities.vmware.com/thread/100252

Ich kann es selbst nicht testen, aber sieht vielversprechend aus.

Gruß
Marcus
DerWoWusste
DerWoWusste 01.02.2013 um 19:18:10 Uhr
Goto Top
Hi.

Hab Onitnarats Link nicht gelesen, somit vielleicht ein doppelter Vorschlag: Erstell eine Batch, die zunächst die Maschinen und dann den Host runterfährst.
srynoname
srynoname 01.02.2013 aktualisiert um 21:51:44 Uhr
Goto Top
@Onitnarat:
Danke dir, den Startup/Shutdown-Eintrag gibt es bei VMware Workstation aber leider nicht \:
Während dass ganze evtl. den Serverprodukten vorbehalten ist, frage ich mich langsam, ob das irgendwie künstlich eingeschränkt wurde, wenn selbst Logoff-Skripte schon zu spät zum sauberen beenden sind \:
Leider braucht z.B. ESX ja wieder einen extra (physikalischen) Rechner, insofern sind die Serverprodukte einfach keine Alternative für mich.
srynoname
srynoname 01.02.2013 um 21:51:19 Uhr
Goto Top
Zitat von @DerWoWusste:
Hi.

Hab Onitnarats Link nicht gelesen, somit vielleicht ein doppelter Vorschlag: Erstell eine Batch, die zunächst die Maschinen
und dann den Host runterfährst.

Danke, ja, das wäre so die Notlösung. Schöner wäre es natürlich, dass ganze über entsprechende Skripte "direkter in das Betriebssystem zu implementieren".
Pjordorf
Pjordorf 02.02.2013 um 19:20:16 Uhr
Goto Top
Hallo,

Zitat von @srynoname:
irgendwie künstlich eingeschränkt wurde
Es wurde sogar so Entwickelt um eben dich damit zu Ärgern.face-smile Natürlich ist es so gewollt. Und ein großes Auto (LKW) wurde extra deshalb gebaut damit dein kleines Auto (Mini) eben nicht die 20 Tonnen Doppel T-Träger mit 10 meter Länge transportieren mussface-smile

insofern sind die Serverprodukte einfach keine Alternative für mich.
Oder dein Konzept ist nicht ganz durchdacht. Ist schon eine schwe.... wenn Desktopprodukte künstlich eingeschränkt werden, gell face-smile

Gruß,
Peter
srynoname
srynoname 02.02.2013 um 21:16:05 Uhr
Goto Top
Zitat von @Pjordorf:
> insofern sind die Serverprodukte einfach keine Alternative für mich.
Oder dein Konzept ist nicht ganz durchdacht. Ist schon eine schwe.... wenn Desktopprodukte künstlich eingeschränkt
werden, gell face-smile
naja, die verwendung von windows-logoff skripten bewusst zu blocken (falls dem so ist) bzw. funktionen des betriebssystems zu blocken, finde ich wenig angemessen. dass die desktopprodukte weniger bzw. andere funktionen haben ist natürlich ok. was mein konzept angeht: ich brauche die VMs genau dann, wenn mein desktoprechner läuft, insofern macht es für meinen anwendungsfall durchaus sinn - keine extra hardware, kein extra stromverbrauch usw.
Pjordorf
Pjordorf 03.02.2013 um 13:00:50 Uhr
Goto Top
Hallo,

Zitat von @srynoname:
naja, die verwendung von windows-logoff skripten bewusst zu blocken (falls dem so ist) bzw. funktionen des betriebssystems zu blocken, finde ich wenig angemessen.
Du hast die Ironoie Tags nicht gelesenface-smile Da wird nichts am OS verändert.

Du solltest dir mal darüber klar werden was bei einem Herunterfahren deines OS passiert und vor allemm wann es passiert. Zu deinem VMWare Workstation lies mal hier http://superuser.com/questions/542305/suspend-vms-on-host-shutdown kurz durch. Wenn du dir ein entsprechendes Protokoll mal schreibst sollte es sich so bestätigen. Deine VMs sind da schon nicht mehr existient. Dein Shutdown skript kommt zu spät. Ob das änderbar ist? Vermutlich nicht. Das die beim Abmmelden auch rausgekickt werden liegt daran das du vermutlich mit der VM GUI machst
brauche die VMs genau dann, wenn mein desktoprechner läuft
und beim Abmelden werden eben Prozesse des abmeldenden Anwenders beendet. Deine VM GUIss gehören nunmal dazu. Also bis dahin auch alles korrekt.

Benutzerwechseln anstatt Benutzer Abmelden könnte eins deiner Probleme lösen. Vor dem Abmelden halt die VMs Manuell beenden oder eine Batchdatei verwenden die es für dich macht und alle beendet.

Anstatt den Windows Button zum herunterfahren nehmen eine Batchdatei starten welche zuerst deine jetzt noch laufenden VMs herunterfährt / Suspendiert. nachdem deine VMs beendet sind dann dein Windows Host OS per shutdown.exe beenden. Dann sollte es möglich sein deine VMs in einen von dir definierten Zustand zu versetzen.

Gruß,
Peter
srynoname
srynoname 03.02.2013 um 13:09:47 Uhr
Goto Top
Zitat von @Pjordorf:
Du solltest dir mal darüber klar werden was bei einem Herunterfahren deines OS passiert und vor allemm wann es passiert.
Zu deinem VMWare Workstation lies mal hier http://superuser.com/questions/542305/suspend-vms-on-host-shutdown kurz durch. Wenn du
dir ein entsprechendes Protokoll mal schreibst sollte es sich so bestätigen. Deine VMs sind da schon nicht mehr existient.
Dein Shutdown skript kommt zu spät. Ob das änderbar ist? Vermutlich nicht. Das die beim Abmmelden auch rausgekickt
werden liegt daran das du vermutlich mit der VM GUI machst
> brauche die VMs genau dann, wenn mein desktoprechner läuft
und beim Abmelden werden eben Prozesse des abmeldenden Anwenders beendet. Deine VM GUIss gehören nunmal dazu. Also bis dahin
auch alles korrekt.
Mein Verständnis wäre, dass bei einem Logout erst die benutzerdefinierten Skripte ausgeführt werden, dann die Prozesse des Nutzers beendet werden und nicht umgekehrt? Mit Logoff-Skripten habe ich es ja auch schon probiert ):
srynoname
srynoname 07.02.2013 aktualisiert um 20:37:14 Uhr
Goto Top
Lösung gefunden!
VM als shared VM ausführen (shared VM mode = neuer VMware Server, vgl. http://blogs.vmware.com/workstation/2012/02/vmware-workstation-8-as-an- ..), dann dazu ein Shutdown-Skript (vmrun und suspend Parameter). Logoff-Skript geht nicht, testen als Admin auch nicht, da Dienst als SYSTEM o.ä. ausgeführt wird - Shutdown-Skript wird aber genau mit diesen Rechten ausgeführt.

P.S.: Ja, das Shutdown-Skript braucht man wirklich, denn auch der VMware "Server" killt sonst einfach die VMs...