WDS-funkciók bővítése: UEFI rendszerindítási képesség hozzáadása

Hello!

Ez a cikk leírja azokat a lépéseket, amelyeket követnie kell ahhoz, hogy UEFI rendszerindítási képességet adjon a WDS-hez.

Azok. A cikkben található utasítások feltételezik, hogy már rendelkezik a következő konfigurációval:

1. Windows Server 2012R2 (или новее)
2. Полностью настроенный DHCP для работы с WDS
3. Собственно сам WDS
4. IIS
5. Виртуальная машина или ПК с Ubuntu

Ezenkívül itt olyan tevékenységeket ismertetünk, amelyek nem hozták meg a megfelelő eredményt.
Azért írtam le őket, hogy megkönnyítsem a keresést és időt takaríts meg.

Előszó

Csináltam egy WDS-t a munkahelyemen, sok finomsággal, tk. belefáradt abba, hogy állandóan rohangálok egy rakás pendrive-vel és felülírom őket.

Ezek a cikkek egyébként segítettek nekem:
WDS sokoldalúság hozzáadása
PXE rendszerindító menü a System Center Configuration Manager segítségével


Ez így néz ki

WDS-funkciók bővítése: UEFI rendszerindítási képesség hozzáadása

És minden rendben volt, új képek kerültek betöltésre, a winPE kép benőtt új funkciókkal és minden működött.

De korántsem minden eszköz támogatja a BIOS / Legacy rendszerindítási módot, vagy ha igen, akkor előfordulhat, hogy a felvétele nagyon nem nyilvánvaló helyen van.

Igen, és az ablakokat régebbi módban telepíteni, amikor lehetséges az UEFI-ben történő telepítés, nem menő.

Ennek eredményeként úgy döntöttem, hogy hozzáadom az UEFI rendszerindítási képességét, és a Google-hoz mentem.

De nem találtam strukturált információt arról, hogyan szerezhetek működő WDS + UEFI-t.
Valójában ezért döntöttem úgy, hogy megírom ezt a cikket.

Mielőtt elkezdenék, leírom a legtöbb időt igénybe vevő problémát.

Az UEFI WDS-hez való hozzáadásakor a következő, meglehetősen nem nyilvánvaló helyzet lehetséges:

Ha rendszerindító fájlt ad hozzá a WDS-hez, és amikor megpróbálja elindítani az eszközt
az UEFI-ben a következő szöveg látható:
The selected boot device failed. Press <Enter> to Continue.
Vagy Boot Device Not Found
De az örökölt betöltés az Ön számára működik.
Ekkor az egyik lehetséges lehetőség a fájl hiánya wdsmgfw.efi,
a következő úton: %WDSpath%Bootx64wdsmgfw.efi

Itt veheted át: C:WindowsSystem32RemInstbootx64wdsmgfw.efi
Vagy ha valamilyen oknál fogva hiányzik ez a fájl, akkor közzétettem google.
Köszönet érte a megoldásért reddit.

Ezzel a problémával öltem a legtöbb időt, mert. Azt hittem, a probléma valahol a WDS vagy DHCP konfigurációban van.

Konfigurált házirendek szállítói osztályok hozzáadásával a különböző architektúrákhoz, valamint a 060, 066, 067 DHCP-beállítások konfigurálásával. Oktatás DHCP házirendek konfigurálásához.

Architektúrák ASCII-ben a DHCP konfigurálásához

PXEClient:Arch:00000 – BIOS/örökölt
PXEClient:Arch:00006 - UEFI x86
PXEClient:Arch:00007 - UEFI x64

Ezenkívül különféle lehetőségeket próbáltam ki a rendszerindító fájlokhoz. .efi

  • syslinux
  • grub 2

Megpróbáltam megkeresni a problémát az Eseménynaplóban is.
win + r -> eventvwr -> Журналы приложений и служб -> Microsoft -> Windows -> Deployment-Services-Diagnostics

De ahogy fentebb is mondtam, a probléma a fájlban volt wdsmgfw.efi.
Vagy véletlenül töröltem ki magam, vagy nem másoltam be a telepítés során
és a WDS konfigurálása.

Nos, kezdjük!

Oktatás

1. szakasz – Ellenőrizze, hogy a WDS működik-e

Vegyen bármilyen eszközt vagy virtuális gépet, amely támogatja az UEFI módban történő indítást a hálózaton keresztül, és próbálja meg a rendszerindítást.

A következő képnek kell lennie:

WDS-funkciók bővítése: UEFI rendszerindítási képesség hozzáadása

Ha igen, remek, folytathatod.
Ha nem, akkor nézd meg, mit írtam az előszóban.

2. szakasz – Az iPXE rendszerindító fájl létrehozása

Elindítjuk az előre elkészített Ubuntut, megnyitunk egy terminált, és beillesztjük ezt a sort:

git clone https://git.ipxe.org/ipxe.git ipxe

WDS-funkciók bővítése: UEFI rendszerindítási képesség hozzáadása

Itt szeretnék egy kis megjegyzést tenni, hogy előfordulhat, hogy olyan csomagokat kell hozzáadnia az Ubuntuhoz, amelyek szükségesek a C és C ++ fordításához.
Most telepítettem őket.

Letöltve? - Nagy!
Most létre kell hoznia egy konfigurációs fájlt az összeállításhoz.
A terminálba ezt írjuk:

cd ipxe/src
gedit chain.ipxe

Illessze be a következő kódot ebbe a fájlba, majd mentse:

#!ipxe

dhcp
chain http://%IP-address-your-IIS-server%/install.ipxe

Visszamegyünk a terminálhoz, és elkezdjük az összeállítást:

make bin-x86_64-efi/ipxe.efi EMBED=chain.ipxe

WDS-funkciók bővítése: UEFI rendszerindítási képesség hozzáadása

Ha minden rendben van, akkor a következő kimenetet kell kapnia a terminálban:

WDS-funkciók bővítése: UEFI rendszerindítási képesség hozzáadása

És fájl ipxe.efi, az út mentén: ipxe/src/bin-x86_64-efi/ipxe.efi
Ha valamilyen oknál fogva nem tud önállóan összeállítani,
csatoltam az enyémet fájl.
Úgy van összeállítva, hogy innen induljon http://192.168.0.100/install.ipxe

Ennyi az Ubuntu számára.

3. lépés – Az ipxe.efi hozzáadása a WDS-hez

Fogjuk a második szakaszban kapott fájlt, és menet közben másoljuk:
%WDSpath%Bootx64%your-boot-folder%EFIBOOT
Miután átneveztük BOOTX64.EFI-re.
Nem szükséges, csak kényelmesebb.

Aztán elindítjuk cmd a rendszergazda nevében, és írja ki a következő parancsokat:

wdsutil /set-server /bootprogram:Bootx64%your-boot-folder%EFIBOOTBOOTX
64.EFI /architecture:x64uefi
и
wdsutil /set-server /N12bootprogram:Bootx64%your-boot-folder%EFIBOOTBOOTX
64.EFI /architecture:x64uefi

Ezzel beállítja a kapott fájlt a WDS-en keresztüli letöltésre.

Ellenőrizzük a konfigurációt:

wdsutil /get-server /Show:Config

WDS-funkciók bővítése: UEFI rendszerindítási képesség hozzáadása

Kimásoltam az ipxe.efi fájlt is, átneveztem BOOTIA32.EFI-re, és beállítottam neki a rendszerindítást, minden esetre. architecture:x86uefi
De nagyjából ennek semmi értelme, mert. A Bootmgfw.efi fájl nem támogatja az x86-ot

Vizsgáljuk meg, mi történt.
WDS-funkciók bővítése: UEFI rendszerindítási képesség hozzáadása
Remek, a WDS elküldi a fájlunkat letöltésre, és az viszont megkeresi a konfigurációt az útvonal mentén: http://192.168.0.100/install.ipxe

4. lépés – Menü konfigurálása

Nyissa meg webhelye gyökérmappáját.
Az alapértelmezett: C:inetpubwwwroot

Hozzon létre egy szöveges fájlt install.ipxe.

és ennek megfelelően konfigurálja dokumentáció és az Ön igényeit.
Van egy orosz nyelv is описание parancsokat.
élveztem ezt utasításokat a WDS konfigurálásakor.

install.ipxe konfigurációs példa

#!ipxe

:start
menu Please choose an operating system to start/install
item --gap Start Win PE
item WinPE-x64 WinPE x64
item --gap ipxe shell
item shell       Drop to iPXE shell

choose target && goto ${target}

:failed
echo Booting failed, dropping to shell
goto shell

:shell
echo Type 'exit' to get the back to the menu
shell
set menu-timeout 0
set submenu-timeout 0
goto start

:WinPE-x64
kernel http://192.168.0.100/wimboot
initrd http://192.168.0.100/peSE/Boot/bcd
initrd http://192.168.0.100/peSE/Boot/boot.sdi
initrd http://192.168.0.100/peSE/Boot/peSE64.wim
boot || goto failed

A winPE betöltésének konfigurációjáról olvashat itt.

5. szakasz – MIME típusok

Miután létrehozta a menüt és hozzáadta az összes szükséges fájlt az IIS gyökérmappájához,
hozzáférést kell adnod nekik.

Mert Még ha megpróbál letölteni egy fájlt a böngészőből, hibaüzenetet fog kapni a címén: HTTP 404.3 - Not Found.
WDS-funkciók bővítése: UEFI rendszerindítási képesség hozzáadása

Ehhez MIME típusokat kell hozzáadnia az IIS vezérlőpultjához, ennek megfelelően
fájlkiterjesztésekkel, amelyeket a http-n keresztül tölthet le.

Nem kerestem, hogy melyik MIME típus a legjobb erre a célra, és megkérdeztem application/octet-stream, ami után minden működött.

A kiterjesztéssel nem rendelkező fájlok esetén használjon pontot.

Itt van:

WDS-funkciók bővítése: UEFI rendszerindítási képesség hozzáadása

Következtetés

Végső soron lehetőséget kapunk a helyi hálózaton keresztüli rendszerindításra az UEFI-n keresztül.

Ha mindent jól csináltunk, akkor valami ehhez hasonló rendszerindítási menü jelenik meg:

WDS-funkciók bővítése: UEFI rendszerindítási képesség hozzáadása

Ha elkészítette az alapvető eszközöket, és nem fog bajlódni a konfigurációval, akkor a funkció megvalósítása körülbelül 10-20 percet vesz igénybe.
2 munkanapomba telt, mert. Sokat kellett googleznom.

Sikeres megvalósítás!

Köszönöm a figyelmet, és nagyon köszönöm azoknak, akiknek a cikkei segítettek nekem!
Habrén ez: Ingtar и Deeptown.

Forrás: will.com

Hozzászólás