Ich benötige oft verschiedene Betriebssysteme parallel und habe mir nicht zuletzt deswegen eine Xeon-Workstation mit 32 GByte RAM (wird noch erweitert) besorgt. Da kann ich über Virtualisierung parallel mehrere Betriebssysteme laufen lassen. Mein Host ist derzeit Windows 8.1.
Grundsätzlich nutze ich schon lange VirutalBox, aber mittlerweile auch den VMWare-Player. Die Tools haben für mich jeweils in einigen Bereichen spezifischen Vorteile.
Soweit, so gut. Aber nun habe ich gestern auch das Visual Studio 2013 als auch 2015 installiert. Samt der Emulation für Windows Phone. Und da wird Hyper-V als Virtualisierung benutzt.
Dummerweise vertragen sich VMWare und Hyper-V nicht. Oder anders ausgedrückt – sie können nicht gleichzeitig auf einem Rechner laufen (nach meinem Wissensstand – vielleicht gibt es ja irgendwelche Tricks).
Aber Hyper-V wird – wenn vorhanden – von Windows nach der Installation standardmäßig gestartet. Wenn man nun mit dem VMWare-Player eine VM starten will, bekommt man die Fehlermeldung „VMware Player and Hyper-V are not compatible. Remove the Hyper-V role …„.
Das Problem hatte ich vor einiger Zeit in Graz bei Aufnahmen bei Video2Brain schon mal und daher wusste ich, was zu tun ist. Die Lösung ist auch einfach – man deaktiviert einfach Hyper-V und aktiviert es erst dann, wenn man wirklich was mit dem Visual Studio emulieren will. Das ist etwas unbequem, geht eigentlich aber ganz gut.
Um VMWare also zum Laufen zu bringen, sind mir grundsätzlich zwei sinnvolle Möglichkeiten bekannt.
- Man deaktiviert Hyper-V in den “Programmen & Features” von Windows
- Man setzt den Bootstatus von Hyper-V auf “off”.
Zu Punkt 1 startet man das Programm OptionalFeatures.exe und entfernt man das Häkchen vor Hyper-V. Danach noch neu Starten und VMWare sollte ohne Fehlermeldung starten.
Für Punkt 2 kann man Hyper-V über ein Bootflag und das Programm bcdedit.exe in der Konsole deaktivieren. Dort führt man zwei Kommandos aus (was ich aber noch nicht ausprobiert habe):
C:WindowsSystem32bcdedit.exe /set {current} hypervisorlaunchtype off shutdown /r /f /t 0 1 2
C:WindowsSystem32bcdedit.exe /set {current} hypervisorlaunchtype off shutdown /r /f /t 0
Mit folgendem Kommando kann man Hyper-V wieder reaktivieren:
C:WindowsSystem32bcdedit.exe /set {current} hypervisorlaunchtype auto shutdown /r /f /t 0 1 2
C:WindowsSystem32bcdedit.exe /set {current} hypervisorlaunchtype auto shutdown /r /f /t 0