Beiträge|Kommentare

PXE-Boot mit VistaPE

vischda.jpgBisher setzen wir erfolgreich BartPE ein, um übers Netzwerk Rechner zu Image- oder Diagnosezwecken zu booten. Einige Worte dazu habe ich hier schon verloren.

VistaPE bringt deutlich mehr Treiber mit als BartPE und ist m.E. auch weniger pflegeaufwändig, was das Einfügen neuer Treiber betrifft. Wie BartPE benötigt es 512 RAM Minimum. Ein CD-Boot auf Systemen mit weniger RAM funktioniert im Gegensatz zu BartPE nicht.
Alle viralen Tools sind vorhanden: diskpart, chkdsk, net use usw…

Windows Automated Installation Kit (WAIK) auf einem PC installieren
Download hier
Das WAIK ist eine Image-Datei, die auf DVD (!) gebrannt werden muss. Mit dieser DVD kann man ein VistaPE booten oder das WAIK installieren.
Nach der Installation liegen WAIK als auch VistaPE auf der Platte.

Start - Programme - Microsoft Windows AIK - Windows PE Tools Eingabeaufforderung

Es kommt ein DOS-Fenster:

copype [Arch] [Zielpfad]

[Arch] ist die Plattform: x86 oder amd64 oder ia64
[Zielpfad] ist ein lokales Verzeichnis, in dem das VistaPE-Image und später auch die ISO liegen soll - also bspw.

copype x86 c:\vistape

Dieser Befehl kopiert die VistaPE-Erstellungsumgebung in das Zielverzeichnis

VistaPE anpassen

Man hat dann im Verzeichnis c:\vistape das Image winpe.wim liegen. Dieses Image kann man bearbeiten, in dem man es in das Dateisystem mounted:

imagex /mountrw winpe.wim 1 mount

Jetzt hat man unter c:\vistape\mount die Verzeichnisstruktur und Dateien des Images im Zugriff und kann Tools reinkopieren (z.B. imagex.exe oder ghost) und Treiber hinzufügen:

peimg /inf=”[Pfad zur .inf-Datei]” c:\vistape\mount

Beispiel:

peimg /inf=”c:\Drivers\Lan\NET8254X.INF” c:\vistape\mount

Abschliessend muss das Image dismounted und geschrieben werden:

imagex /unmount /commit c:\ivistape\mount

PXE-Boot einrichten
Voraussetzung: Funktionierender PXE-Server.

Das VistaPE-Image mounten (s.o,)

cd \vistape
imagex /mountrw winpe.wim 1 mount

Ordner erzeugen, in dem alles landen soll. Der Ordner wird später auf den PXE-Server kopiert.

md c:\pxe

cd \vistape\mount\windows\boot\pxe
copy * \pxe
cd \vistape\mount\windows\boot\fonts
copy wgl4_boot.ttf \pxe
cd \waik\tools\petools\x86\boot
copy boot.sdi \pxe
cd \vistape
copy winpe.wim \pxe

Jetzt muss der Bootblock geschrieben werden (BCD, Ersatz für die boot.ini)

cd vistape\mount\windows\system32
bcdedit /createstore \pxe\BCD
bcdedit /store \pxe\bcd /create {ramdiskoptions} /d “Ramdisk options”
bcdedit /store \pxe\bcd /set {ramdiskoptions} ramdisksdidevice boot
bcdedit /store \pxe\BCD /set {ramdiskoptions} ramdisksdipath \Boot\boot.sdi
bcdedit /store \pxe\BCD /create /d “MyWinPE Boot Image” /application osloader

Man sollte eine GUID erhalten:
Der Eintrag {ed26a7d4-0ed5-11dc-9d1a-000c29ea1605} wurde erfolgreich erstellt.
Mit dieser GUID gehts weiter:

bcdedit /store \pxe\BCD /set {GUID} systemroot \Windows
bcdedit /store \pxe\BCD /set {GUID} detecthal Yes
bcdedit /store \pxe\BCD /set {GUID} winpe Yes
bcdedit /store \pxe\BCD /set {GUID} osdevice ramdisk=[boot]\Boot\winpe.wim,{ramdiskoptions}
bcdedit /store \pxe\BCD /set {GUID} device ramdisk=[boot]\Boot\winpe.wim,{ramdiskoptions}
bcdedit /store \pxe\BCD /create {bootmgr} /d “Windows VISTA BootManager”
bcdedit /store \pxe\BCD /set {bootmgr} timeout 30
bcdedit /store \pxe\BCD /displayorder {GUID}

Jetzt muss das ganze Verzeichnis c:\pxe auf den PXE-Server kopiert werden. Das Zielverzeichnis sollte “Boot” heissen und sich unterhalb der FTP-Root befinden.

Die dortige Datei pxeboot.n12 muss in startrom.0 umbenannt werden.

Die Datei pxelinux.cfg\default muss um diesen Eintrag ergänzt werden:

# Windows VistaPE Loader
LABEL VistaPE
MENU LABEL ^VistaPE
MENU PASSWD
KERNEL Boot\startrom.0

zukünfige Anpassungen

Zukünftig reicht es, Treiber oder Tools in ein gemountetes VistaPE-Image zu kopieren (s.o.) und das Image dann auf den Server zu kopieren.

Inspirationen/Quellen/Links:

2 Kommentare

Schreibe einen Kommentar»
  1. Mark
    30. Juli 2008 (21:30) | Permalink
    1

    Um es etwas zu vereinfachen habe ich die befehle von oben zu einer Batch-Datei zusammen befügt.
    Erstell euch einne Textdatei mit dem Notepad und speichert sie z.B.: “PE-BAUEN.bat” im Verzeichnis C:\Program Files\Windows AIK\Tools\PETools.
    Dann startet ihr Windows PE Tools-Eingabeaufforderung und startet hier die Datei.

    ___________________________________________________________
    REM @echo off
    if exist C:\vistape goto weiter
    copype x86 C:\vistape

    :weiter
    imagex /mountrw C:\vistape\winpe.wim 1 mount
    md C:\Boot

    copy C:\vistape\mount\windows\boot\pxe\* C:\Boot
    copy C:\vistape\mount\windows\boot\fonts\wgl4_boot.ttf C:\Boot
    copy C:\Program Files\Windows AIK\Tools\PETools\x86\boot\boot.sdi C:\Boot
    copy C:\vistape\winpe.wim C:\Boot

    echo.
    echo.Jetzt hat man unter c:\vistape\mount Tools reinkopieren
    echo.

    pause
    bcdedit /createstore C:\Boot\BCD
    bcdedit /store C:\Boot\bcd /create {ramdiskoptions} /d Ramdisk-Options
    bcdedit /store C:\Boot\bcd /set {ramdiskoptions} ramdisksdidevice boot
    bcdedit /store C:\Boot\BCD /set {ramdiskoptions} ramdisksdipath \Boot\boot.sdi
    bcdedit /store C:\Boot\BCD /create /d VistaPE-Image /application osloader

    pause
    bcdedit /store C:\Boot\BCD /set {GUID} systemroot \Windows
    bcdedit /store C:\Boot\BCD /set {GUID} detecthal Yes
    bcdedit /store C:\Boot\BCD /set {GUID} winpe Yes
    bcdedit /store C:\Boot\BCD /set {GUID} osdevice ramdisk=[boot]\Boot\winpe.wim,{ramdiskoptions}
    bcdedit /store C:\Boot\BCD /set {GUID} device ramdisk=[boot]\Boot\winpe.wim,{ramdiskoptions}
    bcdedit /store C:\Boot\BCD /create {bootmgr} /d BootManager
    bcdedit /store C:\Boot\BCD /set {bootmgr} timeout 10
    bcdedit /store C:\Boot\BCD /displayorder {GUID}

    IMAGEX /UNMOUNT /COMMIT C:\vistape\mount
    ___________________________________________________________

    Getestet habe ich unter Windows Vista mit WAIK
    Gruß Markus

  2. 31. Juli 2008 (11:47) | Permalink
    2

    An sich eine coole Sache - aber wie klappt das mit der GUID? Müsste die nicht irgendwie als Variable eingelesen werden?

4 Trackbacks

  1. 1

    [...] Meine BartPE Boot CD hat mir schon immer sehr gute Dienste geleistet. Als Grundlage wird Windows XP verwendet. In letzter Zeit habe ich aber immer wieder mit nicht erkannten Geräten zu kämpfen (vor allem Netzwerk - bzw Raidcontrollertreiber). Mit VistaPE gibt es jetzt ein bootbares Vista System. Es werden sehr viel mehr Geräte erkannt und hat kaum höhere Systemanforderungen als das alte BartPE. Zum Erstellen einer VistaPE CD wird das Windows Automated Installation Kit von Microsoft benötigt. Weitere Infos findet man direkt bei VistaPE oder Stephan. [...]

  2. Von USB-Boot mit VistaPE | Stephan A. aus B. am 16. August 2007 um 17:29
    2

    [...] Hier habe ich schon gezeigt, wie man VistaPE per PXE booten kann- das ganze geht aber auch mit einem USB-Stick. [...]

  3. Von WinPE/BartPE auf USB | Stephan A. aus B. am 4. Oktober 2007 um 23:02
    3

    [...] wenn ich bereits beschrieben habe, wie sich VistaPE via PXE oder USB booten lässt, so hat doch das gute alte BartPE natürlich seine [...]

  4. Von Nachfolger von BartPE - VistaPE | AMRILA am 15. November 2007 um 15:50
    4

    [...] Meine BartPE Boot CD hat mir schon immer sehr gute Dienste geleistet. Als Grundlage wird Windows XP verwendet. In letzter Zeit habe ich aber immer wieder mit nicht erkannten Geräten zu kämpfen (vor allem Netzwerk - bzw Raidcontrollertreiber). Mit VistaPE gibt es jetzt ein bootbares Vista System. Es werden sehr viel mehr Geräte erkannt und hat kaum höhere Systemanforderungen als das alte BartPE. Zum Erstellen einer VistaPE CD wird das Windows Automated Installation Kit von Microsoft benötigt. Weitere Infos findet man direkt bei VistaPE oder Stephan. [...]

Schreibe einen Kommentar

Deine E-Mail wird niemals veröffentlicht. Erforderliche Felder sind als * markiert.

*
*
  • Anmelden/Registrieren





  • Zufälliger Beitrag:

  • Archiv