Letzte Aktualisierung am 14.09.2022, 14:09:02 Uhr
Wer Microsoft Windows Deployment Services (WDS) bereits einsetzt, hat eine enorme Arbeitserleichterung. Schön wäre es, wenn z.B. Memtest86+ ebenfalls über PXE gestartet werden könnte. Dadurch spart man sich das lästige CD einlegen/ USB-Stick verbinden. Auch die Aktualisierung der jeweiligen Tools ist einfacher.
Voraussetzungen
– eine funktionstüchtiges Microsoft Active Directory (Windows Server 20212R2)
– eine VM mit Windows Server 2012R2, welche Mitglied der Domäne ist. Die Rolle „Bereitstellungsdienste“ ist bereits installiert und konfiguriert.
– eine VM mit keinen Betriebssystem, um später die Funktionalität zu testen.
Konfiguration
Als Basis der Erweiterung dient das Paket SysLinux in der Version 6.03 (Download). Das Archiv herunterladen und unter C:\Temp abspeichern. Sobald der Download fertig ist das Archiv entpacken.
Anschließend ist das Verzeichnis C:\Temp\syslinux-6.03\bios wechseln.
Folgende Dateinamen (pxelinux.0, vesamenu.c32, chain.c32, ldlinux.c32, libcom32.c32, libutil.c32) über das Suchfeld rechts oben suchen und jeweils in das Verzeichnis C:\Temp\syslinux-wds kopieren:
Die Dateien aus dem Verzeichnis C:\Temp\syslinux-wds nach D:\RemoteInstall\Boot\x86 bzw. D:\RemoteInstall\Boot\x64 kopiert. In meinen Fall legt WDS seine Daten auf Laufwerk D: ab.
xcopy "C:\Temp\syslinux-wds\*" "D:\RemoteInstall\Boot\x86" xcopy "C:\Temp\syslinux-wds\*" "D:\RemoteInstall\Boot\x64"
Nun müssen drei Dateien noch unbenannt werden:
cd /d "D:\RemoteInstall\Boot\x86" ren pxelinux.0 pxelinux.com ren pxeboot.n12 pxeboot.0 ren abortpxe.com abortpxe.0 cd /d "D:\RemoteInstall\Boot\x64" ren pxelinux.0 pxelinux.com ren pxeboot.n12 pxeboot.0 ren abortpxe.com abortpxe.0
Damit die neue Startdatei vom Bereitstellungdienst genutzt werden kann, ist eine Konfigurationsanpassung notwendig.
wdsutil /set-server /bootprogram:boot\x64\pxelinux.com /architecture:x86 wdsutil /set-server /N12bootprogram:boot\x64\pxelinux.com /architecture:x86 wdsutil /set-server /bootprogram:boot\x64\pxelinux.com /architecture:x64 wdsutil /set-server /N12bootprogram:boot\x64\pxelinux.com /architecture:x64
Im nächsten Schritt müssen sowohl für x86 als auch x64 zwei Verzeichniss angelegt werden:
mkdir "D:\RemoteInstall\Boot\x86\linux" mkdir "D:\RemoteInstall\Boot\x86\pxelinux.cfg" mkdir "D:\RemoteInstall\Boot\x64\linux" mkdir "D:\RemoteInstall\Boot\x64\pxelinux.cfg"
Im Verzeichnis D:\RemoteInstall\Boot\\pxelinux.cfg (je Architektur) eine Datei mit dem Namen „default“ anlegen mit folgenden Inhalt:
DEFAULT vesamenu.c32 PROMPT 0 MENU TITLE PXE Startmenue (x64) MENU INCLUDE pxelinux.cfg/graphics.conf MENU AUTOBOOT Starte lokales System in 8 Sekunden LABEL bootlocal menu label ^Normal starten menu default localboot 0 timeout 80 TOTALTIMEOUT 9000 LABEL WDS MENU LABEL ^Microsoft WDS starten KERNEL pxeboot.0 LABEL memtest86+ menu label Memtest86+ kernel \Linux\memtest\memtest LABEL Abort MENU LABEL ^Beenden KERNEL abortpxe.0
Zu guter letzt die aktuelle Version von Memtest86+ 5.01 (Pre-Compiled Bootable Binary) heruntergeladen. Diese Datei habe ich unter C:\Temp abgelegt. Nachdem Abschluss das Archiv (wie bereits SysLinux) in ein Verzeichnis entpacken. Jetzt wird die Datei an die richtige Stelle kopiert:
mkdir "D:\RemoteInstall\Boot\x86\linux\memtest" mkdir "D:\RemoteInstall\Boot\x64\linux\memtest" copy "c:\Temp\memtest86+-5.01\memtest86+-5.01.bin" "D:\RemoteInstall\Boot\x86\linux\memtest\memtest" copy "c:\Temp\memtest86+-5.01\memtest86+-5.01.bin" "D:\RemoteInstall\Boot\x64\linux\memtest\memtest"
Abschließend erfolgt der finale Test mit der leeren Test-VM.
Wunderbar… funktioniert wie es soll.