Ab in die VM

Egal wie gut das neue Windows 7 läuft, manchmal ist es eben doch erforderlich, noch mal auf das alte, jahrelang liebevoll gepflegte XP oder Vista zuzugreifen. Doch deswegen den alten PC behalten oder den Betriebssystem-Veteran auf ein separates Laufwerk auf dem neuen PC umziehen und dann jedes Mal zum Windows-Wechsel den PC neu starten? Mit den richtigen Handgriffen geht das bequemer.

In Pocket speichern vorlesen Druckansicht 4 Kommentare lesen
Lesezeit: 20 Min.
Von
  • Axel Vahldiek
Inhaltsverzeichnis

Da steht er nun, der schicke neue PC mit Windows 7, und der alte, auf dem XP oder Vista lief, geht endlich in Rente. Aber was, wenn man später doch noch mal das alte Windows starten will oder muss? Etwa, um Software laufen zu lassen, die es unter dem neuen Windows nicht tut, oder um beim Umzug vergessene Dateien herüberzuholen. Oder um alte Hardware mit Parallel-, Seriell- oder USB-Anschluss zu betreiben, für die es keine Windows-7-kompatiblen Treiber gibt. Oder um Optionen abzugleichen, damit sich der unter Windows 7 frisch installierte Firefox wieder genauso verhält wie der alte unter XP. Kein Problem: Mit kostenlosen Tools können Sie Ihr altes Windows so auf den neuen PC umziehen, dass Sie das neue und das alte Windows dort gleichzeitig nutzen können.

Das Nachfolgende beschreibt die nötigen Handgriffe dazu, und Sie werden viel über Registry-Fummeleien oder anderes Gefrickel in den Tiefen des Systems zu lesen bekommen. Doch keine Panik: Im Idealfall lassen Sie einfach eine Software laufen und alles wird automatisch erledigt. Es gibt jedoch Windows-Konfigurationen, die Vor- oder Nacharbeit erfordern, und in diesem Artikel finden Sie Lösungen für alle Probleme, die bei unseren Tests mit diversen Windows-Installationen auftraten. Wenn das jeweilige Problem bei Ihnen gar nicht auftritt – umso besser: Lesen Sie einfach beim nächsten Abschnitt weiter (wo Sprünge möglich sind, sagen wir es).

Um neues und altes Windows gleichzeitig nutzen zu können, verfrachten Sie das alte Windows nicht direkt auf die Festplatte des neuen PC, sondern setzen einen PC-Virtualisierer ein. So ein Programm bildet komplette PCs inklusive BIOS, CPU, Grafikkarte, Festplatten und so weiter in Software nach. In diesen virtuellen Maschinen (VMs) lassen sich Betriebssysteme wie auf einem echten PC installieren – sie laufen dann aber in einem Programmfenster des Wirts-Betriebssystems. So können Sie gleichzeitig das auf der Festplatte installierte Windows 7 und das Betriebssystem in der VM verwenden.

Der kostenlose VMware Player hat sich im Test als der robusteste kostenlose PC-Virtualisierer erwiesen.

Das Aufteilen der Festplatte in Partitionen ist dazu nicht erforderlich, denn der Virtualisierer speichert eine VM im Wesentlichen in gerade mal zwei Dateien. Die dürfen an beliebiger Stelle auf der Platte liegen. Es handelt sich um eine kleine Datei mit der Konfiguration der virtuellen Hardware und um eine große Containerdatei, die den gesamten Inhalt der virtuellen Festplatte enthält. Sie belegt normalerweise nur den wirklich notwendigen Platz auf der Platte und wächst bei Bedarf dynamisch – im Vergleich zur sonst erforderlichen kompletten Partition spart das viel Platz.

Welchen PC-Virtualisierer Sie einsetzen, ist letztlich Geschmackssache. Es gibt kostenpflichtige, aber auch kostenlose Desktop-Virtualisierer [1] . Bei unseren Tests mit den kostenlosen stellte sich der „VMware Player“ des gleichnamigen Herstellers als der robusteste heraus. Nur mit ihm bekamen wir alle Windows-Installationen in einer VM zum Laufen, während die Konkurrenz gelegentlich patzte. Bei „Virtual Box“ von Oracle etwa scheiterte aus unbekannten Gründen bei einer umgezogenen XP-Installation der Start, der Monitor blieb schlicht schwarz – mit dem VMware Player klappte der Umzug hingegen. Sie finden ihn wie alle im Artikel genannten kostenlosen Programme über den c’t-Link am Ende des Artikels.

Der „Windows Virtual PC“, den Microsoft für Windows 7 kostenlos zum Download zur Verfügung stellt [2] , scheitert in manchen Fällen wie schon sein Vorgänger „Virtual PC 2007“ an seinen Limitierungen. So darf die Partition, auf der das alte Windows installiert ist, nicht größer als 128 GByte sein (wie viel davon belegt ist, spielt keine Rolle). Denn beim Umzug in die VM wird eine virtuelle Festplatte in der Größe der Quellpartition erzeugt, und die darf bei Microsofts Virtualisierern eben nicht größer sein. Außerdem lassen sich in ihren VMs keine 64-Bit-Betriebssysteme betreiben.

Es gilt nun, das alte Windows in eine VM zu bringen. Es spricht im Grunde nichts dagegen, kurzerhand die Festplatte mit dem alten Windows in den neuen PC (was aber nicht immer geht) oder in ein externes USB-Gehäuse einzubauen (was aber Geld kostet) und sie anschließend als existierende physikalische Disk in eine neu erstellte VM reinzuhängen. Doch lässt sich der freie Platz darauf dann nicht anderweitig verwenden. Sinnvoller ist es daher meist, das alte Windows stattdessen auf eine virtuelle Platte zu kopieren, die auf der Festplatte des Wirts nicht unnötig Platz verschwendet.

Es gibt diverse Werkzeuge, die auf den ersten Blick dafür in Frage kommen. Als zuverlässigstes erwies sich der kostenlose „vConverter SC“ von Vizioncore: Er kopiert nicht nur einfach gestrickte Windows-Installationen so in eine VM, dass sie direkt darin booten, das können andere auch. Er war auch der einzige Konverter, der selbst unsere chaotischsten Testsysteme so heile in eine VM kopieren konnte, dass sie dort mit ein paar Handgriffen zum Laufen zu bekommen waren. Dazu passt der vConverter unter anderem den Bootloader an, kümmert sich darum, dass XP in der VM auf einem Laufwerk mit dem richtigen Laufwerksbuchstaben liegt und erledigt noch einiges mehr.

Der Download des vConverter erfordert die Angabe einer gültigen E-Mail-Adresse. Er kann nicht nur Windows-Installationen in eine VM kopieren, die auf dem lokalen Rechner liegen, sondern auch solche auf einem im lokalen Netz. Leider läuft er nicht unter der Home Edition von Windows XP.

Der kostenlose „VMware vCenter Converter“ des gleichnamigen Herstellers erwies sich im Test als fast so zuverlässig wie der vConverter und er funktioniert auch unter der Home Edition. Er scheiterte nur bei ungewöhnlichen Bootloader-Konfigurationen mit einer Fehlermeldung: Es gelang ihm nicht, die bereits fertiggestellte VM so anzupassen, dass Windows darin booten konnte. Der VMware Converter kann Betriebssysteme auch auf Remote-Rechnern konvertieren, erstellt aber VMs grundsätzlich nur im VMware-Format.

Überlegen Sie sich vor dem Konvertieren genau, welche Partitionen des alten Rechners Sie in die VM umziehen wollen. Der Inhalt Ihrer alten Datenpartitionen beispielsweise ist auf der physikalischen Festplatte des neuen PC besser aufgehoben – dann muss die VM für den Zugriff darauf nicht laufen, und von der VM aus können Sie bei Bedarf trotzdem zugreifen, etwa über eine Netzwerkfreigabe oder schlicht per Drag & Drop. Sie können Datenpartitionen der Wirts-Festplatte auch als „Shared Folders“ direkt in die VM einbinden. Im Idealfall landet also nur eine Partition in der VM: die, auf der Windows installiert ist.

Der vConverter-Assistent will zuerst den Namen der Quellmaschine wissen. Öffnen Sie über die kleine Schaltfläche mit den drei Punkten den „Netzwerkbrowser“, auch der lokale Rechner lässt sich nur hierüber auswählen. Falls Ihr Rechner dort nicht auftaucht, tragen Sie seinen Namen einfach von Hand ein (Sie finden ihn in der Systemsteuerung unter System).

Das klappt aber nicht immer ohne Weiteres: Damit Windows auf einem PC bootet, muss auf der ersten primären aktiven Partition ein Bootloader liegen. Windows selbst lässt sich aber auch auf jeder anderen Partition installieren. Wenn Sie also nur die Windows-Partition konvertieren, fehlt anschließend womöglich der Bootloader. Zwei Alternativen stehen in einem solchen Fall zur Auswahl: Entweder kopieren Sie sowohl die Boot- als auch die Windows-Partition oder Sie installieren nach dem Konvertieren in der VM einen neuen Bootloader (dazu später mehr). Die erste Methode spart Zeit, die zweite unter Umständen Platz auf der Platte des neuen PC.

Wählen Sie das Format der virtuellen Maschine, die erstellt werden soll (hier für den VMware Player). Mit „Zieldatei“ ist der Zielordner gemeint, der auf der eingebauten Platte, einem USB- oder einem Netzlaufwerk liegen kann.

Um herauszufinden, ob es sich beim Boot- und beim Windows-Laufwerk um zwei getrennte Partitionen handelt, müssen Sie sie zuerst identifizieren. Das klappt ganz einfach mit dem Explorer: Die Windows-Partition erkennen Sie am Windows-Ordner, die Boot-Partition an der Datei „ntldr“ (XP) beziehungsweise „Bootmgr“ (Vista) im Wurzelverzeichnis. Beide Dateien sind versteckt – der Explorer zeigt sie, wenn Sie in der Systemsteuerung „Ordneroptionen/Ansicht“ das Häkchen vor „Geschützte Systemdateien ausblenden (empfohlen)“ entfernen.

Wählen Sie die zu kopierenden Partitionen aus. Wenn Windows und der Bootloader auf getrennten Partitionen liegen, können Sie beide kopieren oder den Bootloader später nachrüsten.

Eventuell kann es unter XP nach dem Umzug erforderlich werden, sich an das Konto „Administrator“ anzumelden. Stellen Sie daher vorsichtshalber noch vor dem Umzug sicher, dass Sie das dazugehörige Passwort kennen. Notfalls vergeben Sie im alten XP in einer mit administrativen Rechten gestarteten Eingabeaufforderung ein neues mit dem Befehl: net user Administrator Passwort. Im Nachhinein lässt sich das Kennwort nur mit Hilfsmitteln ändern, etwa mit Microsofts „Diagnostic and Recovery Toolkit 5.0“, das als 30-Tage-Testversion mal eine Zeit lang zum freien Download zur Verfügung stand [3] . Alternativ können Sie zum c't-Notfall-Windows 2010 greifen, dessen Plug-in NTPWedit das Kennwort ändern kann [4] .

Nach dem Auswählen der zu konvertierenden Partitionen erscheint dieser Dialog mit teilweise irritierend übersetzten Optionen, die Sie aber so lassen können, wie sie sind. Vor allem sollten Sie vor der obersten kein Häkchen setzen, sonst erstellt das Programm keine dynamisch wachsende virtuelle Festplatte, sondern weist den kompletten Platz sofort zu.

Für Windows ist der Umzug in die VM dasselbe wie ein Umzug auf eine neue Hardware: Es wird auf neue Geräte treffen, auf die es nicht vorbereitet ist. Das spielt besonders beim Festplatten-Controller eine wichtige Rolle, denn wenn es den nicht korrekt erkennt, scheitert das Booten mit einem Bluescreen oder einer Neustart-Endlosschleife – obwohl die Treiber normalerweise sogar an Bord sind.

Microsoft hat in seiner Knowledge Base unter http://support.microsoft.com den Artikel 314082 bereitgestellt, der sich dem Problem widmet und eine Lösung nennt: Wenn die Registry des alten Windows mit einigen passenden Einträgen geimpft ist und die richtigen Dateien im Systemverzeichnis liegen, erkennt Windows den neuen Festplatten-Controller und bootet. In den meisten Fällen schafft es der vConverter, Windows passend vorzubereiten, doch leider nicht in allen. Er impft zuverlässig nur das erste Windows, das er auf der Platte vorfindet. Sie können Ihr Windows nun vorsichtshalber impfen oder das Konvertieren einfach ohne Impfung probieren (und dann bei „Und los“ weiterlesen) – riskieren aber, eventuell von vorn anfangen zu müssen.

Das Impfen von Hand ist aber relativ trivial: Die nötigen Änderungen an der Registry erledigt eine Reg-Datei namens „MergeIDE.reg“, die Sie über den c’t-Link finden – Doppelklick, fertig. Außerdem müssen unter Windows\System32\Drivers vier Dateien liegen: Atapi.sys, Intelide.sys, Pciide.sys und Pciidex.sys. Fehlen sie dort, können Sie sie in den Cab-Dateien unter C:\Windows\Driver Cache\i386 finden. Liegen hier mehrere Cab-Dateien, verwenden Sie die mit dem Namen des zuletzt installierten Service Pack.

Schwieriger ist das Impfen der Registry, wenn die Festplatte mit dem alten XP nicht mehr im alten PC steckt (etwa weil der kaputt ist), sondern in den neuen PC oder ein USB-Gehäuse eingebaut wurde: Dann müssen Sie das alte Windows von außen impfen. Starten Sie den Registry-Editor „regedit“ und markieren Sie den Schlüssel HKEY_LOCAL_MACHINE (nachfolgend als HKLM bezeichnet). Klicken Sie nun unter „Datei“ auf „Struktur laden“ und hangeln Sie sich in dem Öffnen-Dialog zum Windows-Ordner des alten Windows durch. Wählen Sie dort unter System32\config die Datei „System“ aus (die ohne Endung). Vergeben Sie einen beliebigen Namen, etwa „XP“. Als Nächstes prüfen Sie unter HKLM\XP\select, welchen Wert der Eintrag Current hat (normalerweise 1).

Laden Sie nun die Datei MergeIDE.reg in einen Texteditor. Darin suchen und ersetzen Sie alle Zeichenfolgen „CurrentControlSet“ durch „ControlSet001“ (oder durch „ControlSet002“, wenn Sie bei Current eine 2 ausgelesen haben oder durch …). Außerdem suchen und ersetzen Sie alle Zeichenfolgen „HKEY_LOCAL_MACHINE“ durch „HKEY_LOCAL_MACHINE\XP“. Nun noch speichern, die Reg-Datei im Explorer doppelklicken und schließlich im Registry-Editor HKLM\XP markieren und unter Datei die Struktur entfernen.

Wenn der Assistent durch ist, können Sie auf den Tab „Conversion Tasks“ klicken, dort sehen Sie die „Aufgabe“. Bevor Sie sie starten können, müssen Sie sie speichern (Klick auf das Diskettensymbol). Sie starten die Aufgabe danach über die grüne Schaltfläche mit dem Pfeil. Ein Klick auf das Lupensymbol zaubert ein weiteres Fenster hervor, in dem Sie den Fortschritt überwachen können.

Nun kann es endlich losgehen: Installieren Sie den vConverter auf dem alten PC und starten Sie ihn mit administrativen Rechten. In der Menüleiste finden Sie unter „Konvertierung“ einen Assistenten, der Sie nacheinander nach den wichtigsten Einstellungen fragt (siehe Screenshots). Zwischenzeitliche Nachfragen der Windows-Firewall, weil der vConverter dort Löcher hineinbohren will, können Sie mit „Weiterhin blocken“ beantworten – das wäre nur beim Umzug eines Remote-Rechners erforderlich.

Vor dem ersten Start der VM sollten Sie einige Anpassungen vornehmen. Die erste empfiehlt sich, um die fertige VM an einen anderen Ort verschieben zu können. Denn der vConverter schreibt in ihre Konfigurationsdatei einen festen Pfad zur virtuellen Festplatte, obwohl das gar nicht erforderlich ist. In dem Ordner, in dem Sie die VM vom vConverter speichern ließen, liegt eine Datei mit der Endung .vmx. Hierbei handelt es sich um die Konfigurationsdatei. Öffnen Sie diese mit dem Windows-eigenen Notepad (oder irgendeinem anderen Texteditor). In der Zeile, die mit ide0:0.fileName = beginnt, steht der komplette Pfad zur virtuellen Festplatte. Kürzen Sie diesen soweit, dass nur noch der Name der Datei zusammen mit der Endung stehenbleibt, also etwa auf „meinWindows.vmdk“. Solange die Containerdatei der virtuellen Platte und die Konfigurationsdatei im selben Ordner liegen, findet der PC-Virtualisierer die Platte trotzdem.

Als Nächstes sollten Sie einen Blick in die Eigenschaften der VM werfen. Öffnen Sie dazu die VM im VMware Player („Open a Virtual Machine“), markieren Sie ihren Namen im linken Teil des Fensters und klicken Sie dann auf „Edit virtual machine settings“. Hier können Sie ganz nach Geschmack die virtuelle Hardware der VM zusammenklicken, also etwa einen Parallel-Anschluss zum antiken Drucker in die VM durchschleifen. Auf dem zweiten Reiter „Options“ sollten Sie unbedingt unter „General“ das Betriebssystem prüfen: Wenn etwa Vista voreingestellt, aber XP in der VM installiert ist (was passieren kann, wenn der Vista-Bootloader auf dem alten PC installiert war), wird es mit der virtuellen Netzwerkkarte nichts anfangen können. Stellen Sie also erst das richtige System ein und entfernen Sie dann die Netzwerkkarte, um direkt anschließend eine neue hinzuzufügen – die erkennt XP dann.

Damit Windows ins Netz kommt, muss in den Eigenschaften der VM das richtige Betriebssystem eingestellt sein.

Nun können Sie die VM starten. Im Idealfall bootet umgehend das Windows darin (dann geht es bei „Es bootet!“ weiter), doch das klappt leider nicht immer – es kann an einem fehlenden (siehe oben) oder nicht funktionierenden Bootloader scheitern – wurde die Festplatte mit dem alten Windows mittlerweile in einen anderen PC oder in ein USB-Gehäuse umgebaut, schlug es in jedem Fall fehl. Abhilfe schafft das Installieren eines neuen Bootloaders. Dazu binden Sie eine zum installierten Betriebssystem passende Windows-CD/-DVD in die VM ein (im Dialog zum Zusammenklicken der virtuellen Hardware). Es muss keine echte Silberscheibe sein, ein ISO-Abbild tut es genauso. Booten Sie die VM davon: Ein Druck auf die Esc-Taste ruft das Boot-Menü der VM auf, in dem Sie die CD auswählen können. Dazu bleibt allerdings nur wenig Zeit, weil Sie ja vor dem Tastendruck erst noch in die VM klicken müssen. Waren Sie zu langsam, starten Sie die VM mit Strg-Alt-Einfg kurzerhand neu und drücken dann die Esc-Taste (bitte nicht verwechseln mit Strg-Alt-Entf, was weiterhin dem Wirtssystem gilt).

Wenn Vista nach dem Umzug glaubt, nicht mehr auf C: zu liegen, reicht der Austausch der Namen zweier Registry-Einträge und ein Neustart, um den Irrtum zu korrigieren.

Bei XP drücken Sie die Taste R zum Starten der Wiederherstellungskonsole. Melden Sie sich mit dem Passwort des Administrators an und tippen Sie dann folgende Befehle ein: fixmbr schreibt einen neuen Master Boot Record, fixboot erzeugt einen neuen Bootsektor und bootcfg /rebuild erstellt eine neue Bootloader-Konfiguration. Nach einem Neustart sollte XP booten.

Bei Vista wählen Sie die Sprache und anschließend „Computerreparaturoptionen“. Vistas Setup-Programm untersucht nun die Platte und sollte den Bootmanager automatisch restaurieren. Bei unseren Tests brauchte es dazu allerdings gelegentlich bis zu drei Anläufe (unter Virtual Box scheiterte es gar einmal komplett, obwohl es dieselbe VM im VMware Player reparieren konnte. Es half nur, das gleiche Spiel statt mit einer Vista- mit einer Windows-7-DVD zu wiederholen, damit gelang es auf Anhieb).

XP bootet nun anstandslos bis zum Anmeldebildschirm, Sie können sich aber noch nicht anmelden: Windows muss zuerst einiges an neuer Hardware erkennen, und dazu gehören unter anderem Tastatur und Maus – erst danach können Sie das Kennwort eintippen. Wer kein Vista konvertiert hat, kann nun bei „Treiber“ weiterlesen.

Vista bootet auch, kommt aber nicht bis zur Anmeldung, sondern zeigt stattdessen nur haufenweise Fehlermeldungen. Die können Sie zwar wegklicken, doch der Anmeldeschirm erscheint nicht. Drücken Sie Strg-Alt-Einfg und starten Sie den Taskmanager in der VM. Dort können Sie unter „Datei/Neuer Task“ einfach „Explorer“ eintippen, worauf der Desktop endlich erscheint. Jedoch sieht er ungewohnt aus. Kein Wunder: Vista verwendet ein temporäres Profil. Den Grund für das ganze Theater sehen Sie, wenn Sie den Explorer starten: Vista glaubt, nicht wie gewohnt auf C: zu liegen, sondern auf einem Laufwerk mit einem anderen Buchstaben.

Die Abhilfe: Starten Sie den Registry-Editor „regedit“ und öffnen Sie darin den Schlüssel HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices. Hier sind einige Einträge nach dem Muster „\DosDevices\C” enthalten. Entscheidend sind zwei: Der mit dem C: im Namen und der mit dem Laufwerksbuchstaben, den Vista momentan für das Systemlaufwerk hält, zum Beispiel D:. Diese beiden müssen Sie nur tauschen: Machen Sie aus dem C: vorübergehend etwa X: (oder irgendeinen anderen hier nicht auftauchenden Buchstaben), dann D: zu C: und schließlich X: zu C:. Nach einem Neustart läuft Vista endlich.

Als Nächstes sollten Sie Windows die neue Hardware näherbringen. Eine umständliche Treibersuche entfällt, alles Nötige ist in einem ISO-Abbild enthalten, das VMware zum kostenlosen Download bereitstellt: Klicken Sie im VMware Player unter VM auf „Install VMware Tools“, dann sollte er das passende Abbild automatisch zum Download anbieten. Sonst finden Sie es über den Link am Ende des Artikels. Das Abbild gehört in den Ordner „C:\Program Files\VMware\VMware Player“ (bei x64-Windows unter „Program Files (x86)“).

Nach der Installation der VMware Tools kennt Windows nicht nur die komplette virtuelle Hardware. Sie können nun Daten auch per Drag & Drop mit dem Wirt austauschen.

Sofern es sich um ein aktivierungspflichtiges Windows handelt, will es neu aktiviert werden. Das sollten Sie erst nach der Treiberinstallation erledigen, sonst droht eine Wiederholung dieser Aktion.

Jetzt sollte die VM mit dem alten Windows anstandslos laufen. Schwierigkeiten kann es jedoch noch geben, wenn Sie auf dem alten PC einige Pfade etwa zu den „Eigenen Dateien“ so angepasst haben [5] , dass sie auf ein Laufwerk zeigten, das Sie nicht mit in die VM kopiert haben. An solchen Pfaden ins Nirwana verschlucken sich beispielsweise gern (De-)Installationsprogramme, die dann über ein „unzulässiges Laufwerk D:\“ meckern. Korrigieren Sie die Pfade so, dass sie wieder auf gültige Ziele verweisen. Vista und XP bieten dafür unterschiedliche Wege an, letztlich entscheiden jedoch stets die Einträge unter HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders über die Pfade – Sie können die Pfade an dieser Stelle auch direkt korrigieren.

[1] Andreas Beier, Axel Vahldiek, Betriebssystem-Jongleure, Virtualisierung für Windows und Mac OS X, c’t 11/09, S. 134

[2] Andreas Beier, Alter Zopf, Der XP-Modus von Windows 7, c’t 24/09, S. 79

[3] Axel Vahldiek, Ersthelfer, Microsofts Reparatur- und Rettungs-CD, c’t 20/07, S. 206

[4] Markus Debus, Hajo Schulz, Rettungsscheibe, c't-Notfall-Windows 2010 auf Basis von Windows 7, c’t 6/10, S. 172

[5] Axel Vahldiek, In getrennten Betten, Persönliche Dateien von Windows 7 trennen, c’t 5/10, S. 168

www.ct.de/1008172 (axv)