Im vorhergehenden Blogeintrag hab ich die generelle Erstellung eines USB-Bootsticks beschrieben: http://newyear2006.wordpress.com/2009/09/19/windows-vista-windows-7-usb-boot-stick-erstellen/
Jetzt geht es aber einen Schritt weiter und wir packen zusätzliche Betriebssysteme auf den Stick. Dies macht Sinn, wenn man hin und wieder mit älterer Hardware zu tun hat, so bietet Windows Vista noch Unterstützung für Adaptec SCSI Karten älterer Generation, wo bei Windows 7 diese ausgespart wurden.
Wieder ist X: der Laufwerksbuchstabe des USB-Sticks und Y: der Laufwerksbuchstabe eines DVD-Laufwerks, wo die jeweilige Windowsversion eingelegt wird. Ich gehe im Beispiel davon aus, das im ersten Schritt ein Windows 7 USB Bootstick erstellt wurde und nun Windows Vista hinzugefügt wird.
Der nachfolgend beschriebene Weg muss für jedes zusätzliche Betriebssystem durchgeführt werden, welches mit aufgenommen werden soll. Es klappt ab Windows Vista ohne Extraaufwand für ältere Windows PE und Windows XP Versionen ist etwas mehr Aufwand zu betreiben.
Man legt auf dem USB-Stick ein Verzeichnis z. B.
MD X:\SourcesVista
an, in welches mittels
XCOPY Y:\SOURCES\*.* X:\SOURCESVISTA /s /h
Die Daten von einer Vista-DVD auf den Stick kopiert werden.
Damit man mit diesen Daten etwas anfangen kann, erweitert man den BCD-Speicher um einen weiteren Eintrag und startet von der Eingabeaufforderung mit Adminrechten:
bcdedit /store X:\BOOT\BCD /copy {default} /d “Vista Setup starten”
Dieser Eintrag hängt eine weitere Startkonfiguration an, welche auf dem vom ersten Artikel per BOOTSECT.EXE erzeugten Starteintrag basiert an. Als Meldung erhält man
Der Eintrag wurde erfolgreich in {29d442f1-b568-11df-8df6-001638f19ddb} kopiert.
Der Bezeichner (ID bzw. GUID) aus diesem Eintrag ist wichtig und wird nachfolgend benötigt.
Nun muss man den kopierten Bereich noch auf das Vistaverzeichnis umbiegen, indem
bcdedit /store X:\BOOT\BCD /set {29d442f1-b568-11df-8df6-001638f19ddb} device ramdisk=[boot]\sourcesVista\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
aufruft, sowie
bcdedit /store X:\BOOT\BCD /set {29d442f1-b568-11df-8df6-001638f19ddb} osdevice ramdisk=[boot]\sourcesVista\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
Das sollte es gewesen sein. Beim Booten vom Stick wird nun erkannt, dass es mehrere Möglichkeiten gibt und es wird automatisch ein Auswahlmenü angezeigt.
Weitere Infos zu BCDEdit hab ich hier zusammengetragen: http://newyear2006.wordpress.com/2009/09/16/boot-configuration-data-bcd-grundlagen-und-beschreibungen-fr-bcdedit-fr-windows-vista-und-nachfolgende-versionen/