PXE: WDS Server mit Linux pxe Menü

Bis dato hatte ich als PXE Server einfach die tftp.exe am Windows Server als Dienst eingerichtet. Damit lässt sich ein einfaches PXE Menü bauen das für Bootdisks, ISO Dateien und Linux Installationen verwendet werden kann. Jedoch wäre die direkte Windows Installation umständlich bzw. nicht so einfach möglich wie mit den Windows RIS/WDS Diensten.

Der Plan lautet also: WDS installieren und danach das PXE Menü (für Linux Installation) weiterhin zu nutzen, bzw. einzubauen.

Information zum Testumfeld:

  • Windows Server 2012 mit den Rollen AD, DHCP, DNS
  • Windows Server 2008 mit der Rolle WDS (Windows Bereitstellungsdienste)

Auffälligkeiten zu PXE Boot in virtuellen Umgebungen:

  • Oracle VM Virtualbox:   Das „Oracle VM VirtualBox Extension Pack“ muss installiert werden.

WDS Server Einrichtung:

Bei der Installation kann der Ort der Installationsdateien beliebig gewählt werden.

Einstellungen die in den Eigenschaften des WDS-Servers gesetzt wurden:

  • PXE-Antowort: Allen Clientcomputern antworten (bekannten und unbekannten)
  • Start: PXE-Start immer fortsetzen (Bekannte und Unbekannte Clients)

DHCP Optionen:

Der Reiter DHCP in den WDS Eigenschaften ist selbsterklärend, (je nach dem ob die WDS Maschine auch DHCP-Server ist). Da dies bei meiner Testumgebund nicht der Fall ist, ist die DHCP-Option 60 = PXEClient, NICHT definiert.

  • DHCP-Option 66 = %WDS-Servername%
  • DHCP-Option 67= boot\x86\wdsnbp.com

Nur mit wdsnbp.com kann für die Windows-Installation zwischen x64 oder x86 Architektur gewählt werden.

Das WDS Verzeichnis wird automatisch als „reminst“ im Netzwerk freigegeben.

Um am WDS zb. eine Windows7 Installation hinzuzufügen muss dazu ein Startabbild und Installationsabbild hinzugefügt werden. Diese Startabbilder sind auf den Windows Datendrägern (iso) im Ordner Sources enthalten (WIM Dateien).

  • Startabbild = Sources\boot.wim
  • Installationsabbild = Sources\install.wim

Am besten eine x86 und x64 Windows Variante einbauen.


Einbauen von WDS Linux (pxelinux.cfg):

Ich gehe darauf gar nicht genauer ein da ich hier mein „default“ PXE-Menü zum Download anbiete wo alle WDSLinux Dateien enthalten sind.

Dazu müssen ein paar Dateien aus dem SYSLinux Paket kopiert werden, diese Schritte sind hier beschrieben: http://www.syslinux.org/wiki/index.php/WDSLINUX. Aufgefallen ist hier das dies mit aktuellen SYSLINUX Versionen nicht richtig funktionierte, die richtige Version ist „syslinux-4.05“. Kopieren der Dateien „pxelinux.0 vesamenu.c32 chain.c32“ usw…

Da der WDS zwischen x86, x64 Clients unterscheidet müsste die ganze Arbeit doppelt verrichtet werden. Ich habe dies per Symlink gelöst. (ja das kann nun auch endlich Windows.. 😛

Anstatt die ganzen PXE Menü Dateien doppelt unter „boot\x86“ und „boot\x64“ zu erstellen, symlinke ich die benötigten Ordner [mklink [[/d] | [/h] | [/j]] <Link> <Ziel>]

1. Download des Pakets

Download (956,7 KB)

 

2. Entpacke die ZIP-Datei, und kopiere dessen Inhalt nach \\%wds-server%\reminst auf den Server.

Die folgenden Schritte sind am WDS Server auszuführen (laut Syslinux-Wiki)!

3. Dateien kopieren:

  • Wechsle nach Boot\x86
  • Kopiere die Datei pxeboot.n12, benenne die Kopie: pxeboot.0
  • Kopiere die Datei abortpxe.com, benenne die Kopie: abortpxe.0
  • Wechsle nach Boot\x64
  • Kopiere die Datei pxeboot.n12, benenne die Kopie: pxeboot.0
  • Kopiere die Datei abortpxe.com, benenne die Kopie: abortpxe.0

4. Dem WDS Server die Startdateien bekannt geben..

wdsutil /set-server /bootprogram:boot\x86\pxelinux.com /architecture:x86
wdsutil /set-server /N12bootprogram:boot\x86\pxelinux.com /architecture:x86
wdsutil /set-server /bootprogram:boot\x64\pxelinux.com /architecture:x64
wdsutil /set-server /N12bootprogram:boot\x64\pxelinux.com /architecture:x64

5. Ordner am Server symlinken, wechsle dazu in das WDS-Vereichnis „am Server“ und gehe in den Ordner Boot\x86. Somit ist die doppelte Pflege pase.

cd Boot\x86
mklink /D pxelinux.cfg ..\x64\pxelinux.cfg
mklink /D pxemenu ..\x64\pxemenu
mklink /D Images2 ..\x64\Images2
mklink /D thinstation ..\x64\thinstation

Wenn nun ein PXE Client startet wird das PXE Menü (pxelinux.cfg\default) aufgerufen.

Um das Menü übersichtlicher zu gestalten habe ich es in weitere Submenüs unterteilt, diese Dateien sind im Ordner „pxemenu“ zu finden.

Nun sind noch die default, bzw. die *.menu Dateien den eigenen Bedürfnissen anzupassen. Die fehlenden *.iso Dateien herunterzuladen und bei Bedarf eigenen Diskettenabbilder (*.IMG) zu erstellen..

 


Ein paar Bilder zum Linux PXE Menü am WDS Server:
pxe1

pxe2

pxe3

pxe4

pxe5

Viel Spass beim booten/starten/installieren über das Netzwerk.. 🙂

10 Gedanken zu “PXE: WDS Server mit Linux pxe Menü”

  1. Hallo erstmals ein super lob für die Veröffentlichung eines solchen Projekts nun zu meinen Fragen
    1. ich hab Das ganze zum Test auf einem WDS 2012 eingerichtet und kaspersky resc hinzugefügt
    folgendes Problem zeigt sich auf ich komme in das Menü wähle das gewünschte Programm in diesem fall Kaspersky resk diese Wirt auch nach einiger zeit gestartet lädt aber zuvor ewig mit ………………………………………………………….. das macht auf mich den Anschein als würde zuerst die ganze iso übertragen auf den Ram und wird dann erst gestartet. Ist das so normal oder kann man das umstellen das er beim staten die Daten die er braucht ziht so wie z.B. bei Xboot vom USB Stick
    2. Muss man irgendwie darauf achten welches Betriebssystem in der iso ist oder funktioniert das mit allem mit den Standard Einstellungen.
    3. Wie muss ich die Skripte ändern um z.B. die Daten die mit Xboot auf einem usb Stick erstellt worden sind zu verwenden also ohne das Debian Menü sondern das von xboot
    Xboot basiert ja im Grunde auf der selben Programmierung und ist automatisiert zu erstellen.

    Über eine Antwort würde ich mich sehr freuen

    Mfg B.Huber

  2. Zu der ersten Frage:
    Die richtige PXE Variante mit initrd.img(temporäres Dateisystem), linuz(Kernel) und ev. SquashFS ist sicherlich effizienter als die memdisk-ISO Variante.
    Bei kompletten ISOs die per memdisk geladen, werden diese immer zuerst in den Arbeitsspeicher geladen.

    PXE Bootdateien scheinen von Kaspersky selbst leider nicht angeboten zu werden,
    habe zum Selbstbau folgendes gefunden: http://www.richud.com/wiki/Kaspersky_Rescue_Disk_10_PXE_Boot oder http://www.howtogeek.com/64259/how-to-network-boot-the-bitdefender-rescue-cd-pxe/

    Zu xboot Frage kann ich nichts schreiben da ich es nicht kenne, da es sich jedoch um eine USB-Boot-Menü zu handeln scheint,
    werden diese Bootdateien nicht 1:1 auf PXE angewendet werden können. (hier werden wie oben beschrieben „initrd“, „linuz“ benötigt).

  3. Funktioniert! Danke dir! Nur das mit dem Drucken hättest du ruhig durchgehen lassen können 😉
    Tolle Anleitung!

  4. Super Anleitung! Genau das was ich gesucht habe um mein neues Windows Server Netzwerk Perfekt Auszubauen! Ich hab schon sehr lange ein Howto gesucht das die Einrichtung eines Windows-PXE Systems Aufzeigt! Deine Schritte haben alle Super funktioniert und laufen nun bei einem Kunden von Mir als PXE-Netzwerk Umgebung.

Schreibe einen Kommentar



error: