addthis

Mittwoch, 11. Januar 2012

Multiboot über USB

Multiboot über USB: nur ein Stick für Windows und Linux
systembetreuung scherer

Mit einem Boot-Stick lässt sich normalerweise genau eine Windows-Version installieren. Systembetreuung Scherer zeigt einen einfachen Weg auf, wie man mehrere Windows- und Linux-Betriebssysteme auf einem einzigen USB-Medium zum Setup bereithält.

CDs und DVDs werden auch als Boot-Medium immer unpopulärer. Der
handliche USB-Stick hingegen hat viele Vorteile: Die heruntergeladene ISO-Datei ist schnell aufgespielt, die Installation geht deutlich schneller und außerdem kann man den Stick immer am Schlüsselbund mitführen.

Faktisch gibt es für alle modernen Betriebssysteme die Möglichkeit, einen USB-Stick als Boot-Medium zu verwenden. Die meisten Hersteller liefern dazu eigene Tools mit, wie man eine ISO-Datei in bootfähiger Form auf einen Stick bekommt.

USB-Sticks mit 16 GByte und mehr wecken Begehrlichkeiten, gleich mehrere Betriebssysteme boot- und installationsfähig auf dem Stick vorzuhalten. Zudem soll die Möglichkeit bestehen bleiben, den freien Platz auf dem Stick noch für andere Zwecke nutzen zu können.

Für Linux gibt es ein paar sehr gute Tools, um mehrere Distributionen gleichzeitig auf einen Stick zu bringen, etwa YUMI. Windows bietet von sich aus keine Möglichkeit, mehrere Versionen, zum Beispiel Windows 7 Ultimate mit SP1 32-Bit Deutsch und Windows Server 2008 R2 64-Bit US auf einen Stick zu bringen.

Mit ein paar Tricks ist aber auch das möglich. Im ersten Teil dieser Anleitung wird gezeigt, wie man einen USB-Stick erstellt, der mehrere Windows-Betriebssysteme enthält. Im zweiten Teil wird der Windows-Stick so erweitert, dass man davon auch beliebige Linux-Distributionen booten kann.
Als Ergebnis entsteht ein Stick, der eine Auswahl verschiedener Linux-Distributionen und Windows-Versionen zur Installation anbietet, aber trotzdem noch für die Speicherung von Daten genutzt werden kann, sofern noch Platz ist.

Als erstes erstellt man dazu einen Boot-Stick für eine Windows-Version wie gewohnt. Dazu kann man etwa das Microsoft-Tool Windows 7 USB/DVD Download verwenden. Damit kann man jede Windows-Version, die den Bootloader Bootmgr verwendet, von einer ISO-Datei auf einen Stick bringen. Das sind alle Versionen ab Vista inklusive der Developer-Preview-Version von Windows 8. Windows XP und älter werden hier nicht weiter betrachtet. Wer keine ISO-Datei hat, sondern eine fertige Installations-CD, kommt mit der zweiten Methode schneller zum Ziel. 

Man sollte immer die neueste Version zuerst aufspielen, da sie eine aktuelle Fassung der Datei bootmgr beinhaltet. Neue Bootloader, zum Beispiel der aus Windows 7 mit SP1, können auch ältere Versionen, etwa Vista, booten. Umgekehrt ist das nicht der Fall oder es werden nicht alle Features unterstützt, etwa die Installation von Windows 7 in einer VHD-Datei.

Wer keine aktuelle Windows-Version auf Basis von Build 7601 wie Server 2008 R2 SP1 oder Windows 7 SP1 zur Hand hat, kann die offiziellen Testversionen von Microsoft herunterladen (zum Download von Windows 7 oder Windows Server 2008 R2) und seine Erstinstallation auf den Stick mit diesen ISO-Dateien durchführen. Das dient in erster Linie dazu, den aktuellen Bootmanager zu bekommen. Man kann die Installationsdateien später vom Stick löschen, wenn man sie nicht benötigt. Man kann auch eine Beta- oder Preview-Version von Windows 8 verwenden, aber das führt möglicherweise zu Problemen. ZDNet hat das nicht getestet, will aber experimentierfreudige Leser nicht daran hindern. 

Wer einen Standard-Boot-Stick mit Hilfe des Microsoft-Tools oder einer anderen Anleitung erstellt hat, erhält einen Stick, der mit FAT32 formatiert ist. Normalerweise ist das problemlos. Wenn man aber die Developer Preview von Windows 8 nutzen möchte, hat man es mit Installationsdateien zu tun, die größer als 4 GByte sind. Das wird von FAT32 nicht unterstützt. Das gleiche gilt, wenn man seinen Stick später auf Linux erweitert. Manche Distributionen, etwa CentOS, kommen auf ISO-Dateien mit mehr als 4 GByte.
In diesem Fall muss der Stick zu NTFS konvertiert werden. Das hat aber auch Nachteile.

•    NTFS-Sticks sind langsamer als FAT32-Sticks
•    Die Sticks können nicht auf Systemen benutzt werden, die kein NTFS unterstützen, zum Beispiel
     auf manchen Mediaplayern oder im Autoradio

Systembetreuung scherer empfiehlt daher, den Stick zunächst mit FAT32 zu nutzen. Erst, wenn man ein Problem mit der Dateigröße bekommt, sollte der Stick mit dem Kommandozeilenbefehl convert G: /FS:NTFS umgewandelt werden. Das G: ist durch den Laufwerksbuchstaben zu ersetzen, den der Stick tatsächlich hat.

Systembetreuung Scherer hat im Test zunächst Windows 7 SP1 Ultimate 32-Bit US-Englisch auf den Stick gespielt. Nach der erfolgreichen Erstellung legt man im Root-Verzeichnis des Sticks einen neuen Ordner an. Zweckmäßigerweise wählt man eine aussagekräftige Bezeichnung wie Windows7-32-bit-Ultimate-SP1. Anschließend wird das Verzeichnis \sources in den neu erstellten Ordner verschoben.

Um eine weitere Windows Version hinzuzufügen legt man im Root des Stick ein weiteres Verzeichnis an. Systembetreuung Scherer will Windows Server 2008 R2 64-Bit SP1 hizufügen und wählt daher den Namen Windows-2008R2-64-bit-SP1. Anschließend sollte der USB-Stick im Windows-Explorer wie folgt aussehen:













 Als nächstes kopiert man alle Dateien von der Original-DVD des zweiten Windows-Betriebssystems in den neu erstellten Ordner (\Windows-20008R2-64-bit-SP1) auf den Stick. Wer eine ISO-Datei hat, muss diese zuvor mit einem Tool wie 7-Zip oder WinRAR auspacken. Als wird der Boot-Store aktualisiert, damit er das Setup-Image im richtigen Verzeichnis findet. Das geht mit Kommandozeilen-Tool BCDEDIT. Man startet dazu CMD.EXE mit Administratorrechten.

Im Folgenden wird davon ausgegangen, dass der Stick den Laufwerksbuchstaben G: trägt und die Verzeichnisse wie im Bild benannt wurden. Als erstes passt man die ursprüngliche Installation an. Das geht mit den Befehle:

bcdedit /store G:\boot\bcd /set {default} device "ramdisk=[boot]\Windows7-32-bit-Ultimate-SP1\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}"

bcdedit /store G:\boot\bcd /set {default} osdevice "ramdisk=[boot]\Windows7-32-bit-Ultimate-SP1\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}"

bcdedit /store G:\boot\bcd /set {default} description "Windows 7 SP1 Ultimate 32-Bit US"

Die grün dargestellten Zeichen müssen eventuell an die individuellen Gegebenheiten angepasst werden. Anschließend erstellt man einen weiteren Bootmenüeintrag für das neu hinzugefügte Betriebssystem. Dazu kopiert man am besten den Default-Eintrag mit

bcdedit /store g:\boot\bcd /copy {default} /d "Windows Server 2008 R2 SP1 64-Bit US"

BCDEDIT zeigt dabei die GUID des neuen Eintrags an, in der Form {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}. Sie lässt sich jederzeit wieder mit dem Befehl bcdedit /store g:\boot\bcd anzeigen.
Als Letztes wird neue Eintrag noch so modifiziert, dass er auf das richtige Verzeichnis verweist. Das geht mit den Befehlen

bcdedit /store G:\boot\bcd /set {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} device "ramdisk=[boot]\Windows-2008R2-64-bit-SP1\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}"

bcdedit /store G:\boot\bcd /set {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} osdevice "ramdisk=[boot]\Windows-2008R2-64-bit-SP1\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}"

Sofern man noch Platz hat, kann man weitere Betriebssysteme hinzufügen. Dazu legt man für jedes OS ein neues Verzeichnis auf dem Stick an, schreibt die Dateien von der DVD dort hinein, kopiert den Default-Eintrag im Boot-Store erneut und passt ihn wie oben gezeigt an.

Der Bootstick mit mehreren Windows-Betriebssystemen ist jetzt fertig. Wer zur Kontrolle noch einmal bcdedit /store g:\boot\bcd eingibt, sollte etwa Folgendes sehen:


Nachdem der Stick über das Taskleistensymbol "Hardware sicher entfernen und Medium auswerfen" neu gemountet wurde, darf er entfernt und auf einem anderem Rechner zum Booten benutzt werden.
Dort sollte folgendes Bild erscheinen:



Nach der Auswahl eines Betriebssystems startet die Installation. Allerdings ist noch eine Kleinigkeit zu beachten: Die Installation läuft nicht durch. Mit der Anpassung des BCD-Stores wird zwar das korrekte Boot-Image boot.wim geladen, jedoch erwartet das Installationsprogramm die weiteren Dateien im Verzeichnis \sources, das jedoch verschoben werden musste.



Nachdem man die Installation begonnen hat, meldet sich Windows nach kurzer Zeit mit einer falschen Fehlermeldung, dass ein Treiber fehle, wie im Bild oben gezeigt. 

Um den Fehler auszumerzen, drückt man Shift+F10, um eine Kommandozeile zu bekommen. Danach muss der Laufwerksbuchstabe des USB-Sticks ermittelt werden. Auf einem "jungfräulichen" Rechner, auf dem noch keine von Windows unterstützte Partitionen angelegt sind, ist das C:.



Andernfalls muss man weitersuchen, bis man mit dir d:\, dir e:\ und so weiter den Stick gefunden hat. Man erkennt ihn schnell an den selbst angelegten Unterverzeichnissen mit den Betriebssystemen. Mit dem Befehl subst y: c:\Windows-7-32-bit-Ultimate-SP1 lässt sich das Installationsprogramm jedoch austricksen, siehe Bild oben.

Anschließend schließt man alle Fenster durch Klick auf das "X" oben rechts und beantwortet die Frage "Are you sure you want to cancel Windows installation" mit "Yes". Danach zeigt sich wieder folgendes Bild:



Nach erneutem Klick auf "Install now" läuft das Setup-Programm ohne Fehler durch.

Keine Kommentare:

Kommentar veröffentlichen