Archiv Windows XP 25.916 Themen, 128.567 Beiträge

Windows XP o. 2000 bootet nicht mehr nach clonen auf neue HD

F-I-T / 0 Antworten / Flachansicht Nickles

Eins mal voraus: Das hier ist keine Frage. Aber da ich im Internet keine genau passende Antwort auf mein Problem gefunden habe, dachte ich, ich stelle es mal hier rein, damit es in Zukunft jemand besser finden kann.

Das Problem: Ich wollte mit Drive Image / Drive Copy von Powerquest oder mit Norton Ghost meine alte 80GB-Boot HD auf eine neue 120GB HD clonen.
Ich konnte jedoch kopieren womit und wie ich wollte (Alle Sektoren 1:1 bei gleicher Größe etc...), Windows XP (auf NTFS Partition übrigens) wollte nicht booten.
Es blieb immer vor dem User Login hängen. Es kam noch ein blauer Bildschirm mit Windows-XP Logo, aber das war\'s dann auch. Ein parallel installiertes Windows 98 machte dagegen keine Probleme.

Als Ursache des Problems stellte sich dann aber folgendes heraus:
Ich habe ein Multi-Boot System mit 3 primären Partitionen, die physikalisch 3. davon ist die Windows XP Partition. Bei der Installation von Windows XP suchte es sich aus nicht mehr nachvollziehbaren Gründen (evtl. andere primäre Partitionen sichtbar/nicht versteckt) den Laufwerksbuchstaben S: für die Startpartition aus. Ein Laufwerk C: hatte ich dadurch dann überhaupt nie.

Wenn ich nun von der neuen Festplatte gebootet habe, hat Windows XP die Laufwerkszuordnung neu erstellt, da es wohl auch bei einer 1:1 Kopie erkennt, dass die Partitionen nicht die gleichen sind. (Windows XP vergibt eine GUID für jede Partition).

Dadurch hat es die Bootpartition als Laufwerk C: eingebunden. Das Problem kommt dann an der Stelle wo XP die Datei USERINIT.EXE laden will. Da trickst sich XP nämlich selbst mit einem absoluten Bezug auf einen festen Laufwerksbuchstaben aus. In der Registry zu finden unter:

HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows NT\\Current Version\\Winlogon\\Userinit:Reg_SZ:C:\\WINNT\\system32\\userinit.exe
Wie löst man das Problem aber wenn man nicht booten kann?
Ganz einfach: Man schließt die Original Festplatte wieder zusätzlich als Slave an, wobei natürlich die Partitionen (auf jeden Fall aber die alte Windows XP Startpartition) sichtbar sein müssen.
Das Booten von der neuen HD sollte dann gelingen. Durch die Zuordnung der Laufwerksbuchstaben per eindeutiger GUID landet die alte Startpartition dann nämlich auf dem alten Laufwerksbuchstaben (in meinem Fall S:), und das Windows XP von der neuen Platte findet seine Datei dann in der alten Installation und bootet zumindest erstmal.
Jetzt kann man zuerst mal den absoluten Pfadbezug entfernen. Dazu einfach als Wert des o.a. Registry-Eintrags nur „USERINIT.EXE“ ohne Pfadbezug angeben. Siehe auch:

http://support.microsoft.com/default.aspx?scid=kb;en-us;249321

Damit würde XP jetzt auch ohne die alte HD booten. Allerdings liegt der Laufwerksbuchstabe auf der neuen HD dann nicht mehr bei S:, sondern in meinem Fall bei C: oder dem nächsten freien Buchstaben (z.B. T:), was natürlich Probleme mit einigen installierten Programmen gibt.
Also muss man die alte Zuordnung wiederherstellen. Die Datenträgerverwaltung von XP erlaubt es aber „natürlich“ nicht, den Laufwerksbuchstaben der Systempartition zu ändern. Dafür muss man wieder in die Registry eingreifen. Unter

HKEY_LOCAL_MACHINE\\SYSTEM\\MountedDevices

findet man die Zuordnung. Dabei gibt es einen Registryeintrag pro Laufwerksbuchstabe in der Form
„\\DosDevices\\C:“ als Name und der GUID als Wert. Nun kann man mit Umbenennung der Einträge die Laufwerksbuchstaben manuell verschieben. Siehe auch:

http://support.microsoft.com/default.aspx?scid=kb;en-us;223188

http://www.winfaq.de/faq_html/tip1025.htm


Erst dann hat man endlich sein System 1:1 kopiert!
Die beschriebene Vorgehensweise ist übrigens wohl unter Windows 2000 und Windows XP identisch.