Es gibt verschiedene Möglichkeiten, ein Betriebssystem von einem USB Stick zu booten.
Hier wird eine Möglichkeit beschrieben, die sich als relativ leicht umsetzbar erwiesen hat. Dabei werden Vorkenntnisse vorausgesetzt. Dies ist keine Schritt-für-Schritt Anleitung für Anfänger!
Inhaltsverzeichnis
Voraussetzungen
Der PC, der mit dem USB Stick gebootet werden soll muss ein BIOS haben, das das Booten von USB gestattet. Dies kann im BIOS fest eingestellt werden (per Bootreihenfolge), oder aber es gibt ein Boot-Menü, das (per Taste) aktiviert werden kann, in dem dann während des Bootvorgangs das gewünschte Bootmedium ausgewählt wird.
Benötigte Software
- BartPE Builder
- SIBLO Boot Loader ( ehemals http://simplux.org/siblo/ , inzwischen muss aber gegoogled werden :( )
- Windows CD mit der Version (WindowsXP oder Windows 2003) auf die BartPE aufsetzen soll.
- Die Datei "NTDETECT.COM" der Windows-Version, auf der BartPE aufsetzen soll.
- Die Datei "SETUPLDR.BIN" von einer Windows 2003 SP1 CD (Verzeichnis "I386").
- Die Datei "ramdisk.sys" (bzw. zunächst "ramdisk.sy_") von einer Windows 2003 CD (SP1 oder SP2!) (Verzeichnis "I386"). Benötigt wird hierfür auch eine beliebige "expand.exe", um sie zu entpacken. Die expandierte Datei sollte die Version 5.2.3790.1830 oder 5.2.3790.3959 haben.
- Treiber für den Festplatten-Controller der PCs, die mit dem Stick gebootet werden sollen. Diese müssen in der Form vorliegen, wie sie für Floppy-Disks während des Windows-Setups vorgesehen ist (inkl. "txtsetup.oem").
- [Das Programm HP USB Disk Storage Format Tool]
Zusammenfassung
Das hier verwendete Prinzip macht sich die Fähigkeit des Windows2003 NT-loaders zu Nutze, eine ISO-Datei in eine RAM-disk laden zu können und den Bootvorgang von dort aus fortzusetzen. Der Bootvorgang wird per Bootloader (SIBLO) auf dem USB Stick angestoßen und erfordert, dass dort die Dateien NTLDR, NTDETECT.COM, winnt.sif und die ISO Datei im root-Verzeichnis liegen. Hier muss beachtet werden, dass sich die korrekte "ramdisk.sys" schon IN der ISO Datei befinden muss!
Vorbereiten des USB Sticks
USB Sticks werden normalerweise unter Windows so formatiert, dass sie nicht als Bootmedium genutzt werden können. Ich meine, es kann sogar sein, dass sie ohne Partitionstabelle auskommen und direkt mit dem Bootsektor beginnen. Für einen bootbaren Stick ist eine Partitionstabelle jedoch in jedem Fall nötig!
Existiert keine Partitionstabelle, kann einfach das Tool "HP USB Disk Storage Format Tool" verwendet werden, das den Stick wie eine Festplatte (also mit MBR und Partitionstabelle) formatiert.
Ist dann eine Partitionstabelle vorhanden, muss die (einzige) Partition auf dem USB Stick als "aktiv" markiert werden. Dies kann z.B. per Sektoreditor (WinHex) erreicht werden. Offset 446 (0x1BE) auf den Wert 128 (0x80) setzen.
Der USB Stick ist jetzt prinzipiell bootbar.
Installation und Konfiguration von SIBLO
Die Installation des Booloader SIBLO richtet sich nach dessen Anleitung. Er beschreibt die ersten paar (reservierten) Sektoren gleich hinter dem MBR. Die Konfigurationsdatei "siblo.cfg" muss im root-Verzeichnis des USB Sticks liegen und beispielsweise so aussehen:
default 1 label 1 ntloader ntldr
Es wird also einfach ohne Rückfrage ein NT-loader geladen, der "ntldr" heißt.
NTLDR, NTDETECT.COM und winnt.sif
Die Datei "SETUPLDR.BIN" wird umbenannt in "NTLDR" und in das root-Verzeichnis des USB Sticks kopiert.
Die Datei "NTDETECT.COM" wird in das root-Verzeichnis des USB Sticks kopiert.
Die Datei "winnt.sif" wird im root-Verzeichnis des USB Sticks erstellt und sollte den Inhalt haben:
[SetupData] BootDevice = "ramdisk(0)" BootPath = "\I386\SYSTEM32\" OsLoadOptions = "/noguiboot /fastdetect /minint /rdexportascd /rdpath=bartpe.iso"
BartPE ISO Datei
Wie man BartPE bedient, sucht man besser bei google oder direkt auf der website, von der man den PE Builder bekommt.
[...]
Was man beachten muss:
Man erstellt die BartPE CD erst im Zielverzeichnis, ohne die ISO zu erstellen.
Falls man BartPE nicht ohnehin auf Windows 2003 SP1 oder SP2 aufsetzt, kopiert man die spezielle "ramdisk.sys" in das Zielverzeichnis (nach I386\SYSTEM32\DRIVERS) und erstellt anschließend aus dem Verzeichnis die ISO Datei.
Letzte Schritte
Die fertige ISO Datei wird nun in das root-Verzeichnis des USB Sticks kopiert und der Name (8.3, nicht länger!) in der winnt.sif im Parameter "/rdpath=" eingetragen (hier im Beispiel bartpe.iso).
Wenn jetzt vom USB Stick gebootet wird, müsste BartPE starten!