Vastigante WDS-Funkcion: Aldonante UEFI-Botigan Kapablecon

Saluton ĉiuj!

Ĉi tiu artikolo priskribas la paŝojn, kiujn vi devas sekvi por aldoni UEFI-ŝargkapablon al via WDS.

Tiuj. La instrukcioj en ĉi tiu artikolo supozas, ke vi jam havas la sekvan agordon:

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

Ankaŭ ĉi tie estas priskribitaj agoj, kiuj ne alportis al mi la ĝustan rezulton.
Mi priskribis ilin por faciligi la serĉon kaj ŝpari vian tempon.

Antaŭparolo

Mi faris WDS ĉe la laboro kun multaj bonaĵoj, tk. tedas de konstante kuri kun amaso da poŝmemoriloj kaj anstataŭi ilin.

Ĉi tiuj artikoloj helpis min cetere:
Aldonante WDS-Versatilecon
PXE-ŝargmenuo kun System Center Configuration Manager


Ĝi aspektas tiel

Vastigante WDS-Funkcion: Aldonante UEFI-Botigan Kapablecon

Kaj ĉio estis bona, novaj bildoj estis aldonitaj por ŝarĝo, la winPE-bildo estis superkreskita de novaj funkcioj kaj ĉio funkciis.

Sed, malproksime de ĉiuj aparatoj subtenas la BIOS-/Heredan lanĉan reĝimon, aŭ se ili faras, tiam ĝia inkludo povas esti en tre neevidenteca loko.

Jes, kaj instali fenestrojn en hereda reĝimo, kiam eblas instali en UEFI, ne estas bonega.

Kiel rezulto, mi decidis aldoni la kapablon ekŝalti en UEFI, kaj iris al Guglo.

Sed mi ne trovis strukturitan informon pri kiel akiri funkciantan WDS + UEFI.
Efektive, tial mi decidis verki ĉi tiun artikolon.

Antaŭ ol komenci, mi priskribos la problemon, kiu prenis la plej grandan tempon.

Aldonante UEFI al WDS, la sekva, sufiĉe neevidenta situacio eblas:

Se vi aldonas lanĉan dosieron al WDS kaj kiam vi provas ekbruligi sur la aparato
en UEFI vi vidas la jenan tekston:
The selected boot device failed. Press <Enter> to Continue.
Boot Device Not Found
Sed ŝarĝo en heredaĵo funkcias por vi.
Tiam unu el la eblaj opcioj estas la foresto de dosiero wdsmgfw.efi,
laŭ la sekva vojo: %WDSpath%Bootx64wdsmgfw.efi

Vi povas preni ĝin ĉi tie: C:WindowsSystem32RemInstbootx64wdsmgfw.efi
Aŭ, se ial ĉi tiu dosiero mankas por vi, mi afiŝis ĝin google.
Por ĉi tiu solvo, dankon al infanoj de reddit.

Kun ĉi tiu problemo, mi mortigis plej multe da tempo, ĉar. Mi pensis, ke la problemo estas ie en la agordo WDS aŭ DHCP.

Agordis politikojn aldonante Vendistajn Klasojn por diversaj arkitekturoj, kaj agordante DHCP-opciojn 060, 066, 067. Instrukcioj por agordi DHCP-politikojn.

Arkitekturoj en ASCII por agordo de DHCP

PXEClient:Arch:00000 - BIOS/Legacy
PXEClient:Arch:00006 - UEFI x86
PXEClient:Arch:00007 - UEFI x64

Ankaŭ, mi provis diversajn opciojn por startdosieroj. .efi

  • syslinux
  • grubo 2

Mi ankaŭ provis trovi la problemon en la Event Log.
win + r -> eventvwr -> Журналы приложений и служб -> Microsoft -> Windows -> Deployment-Services-Diagnostics

Sed, kiel mi diris supre, la problemo kuŝas en la dosiero wdsmgfw.efi.
Aŭ mi mem hazarde forigis ĝin, aŭ ĝi ne estis kopiita dum instalado
kaj agordante WDS.

Nu, ni komencu!

Instrukcioj

Etapo 1 - Kontrolu, ke WDS funkcias

Prenu ajnan aparaton aŭ virtualan maŝinon kun subteno por lanĉado en UEFI-reĝimo tra la reto kaj provu ekŝalti.

Vi devus havi la jenan bildon:

Vastigante WDS-Funkcion: Aldonante UEFI-Botigan Kapablecon

Se jes, bonege, vi povas daŭrigi.
Se ne, tiam vidu, kion mi skribis en la antaŭparolo.

Etapo 2 - Konstruado de la Bota Dosiero iPXE

Ni lanĉas antaŭpreparitan Ubuntu, malfermas terminalon kaj algluas ĉi tiun linion:

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

Vastigante WDS-Funkcion: Aldonante UEFI-Botigan Kapablecon

Ĉi tie mi ŝatus fari malgrandan rimarkon, ke vi eble devos aldoni pakaĵojn al Ubuntu, kiuj estas necesaj por kompili C kaj C++.
Mi nur havas ilin instalitaj.

Ĉu elŝutita? - Bonege!
Nun vi devas fari agordan dosieron por la asembleo.
En la terminalo, ni skribas:

cd ipxe/src
gedit chain.ipxe

Kaj algluu la sekvan kodon en ĉi tiun dosieron, kaj poste konservu:

#!ipxe

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

Ni reiras al la terminalo kaj komencas la kompilon:

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

Vastigante WDS-Funkcion: Aldonante UEFI-Botigan Kapablecon

Se ĉio estas en ordo, tiam vi devus ricevi la sekvan eligon en la terminalo:

Vastigante WDS-Funkcion: Aldonante UEFI-Botigan Kapablecon

Kaj dosiero ipxe.efi, survoje: ipxe/src/bin-x86_64-efi/ipxe.efi
Se ial vi ne povas kompili memstare,
Mi alfiksis la mian файл.
Ĝi estas kompilita por ekbruligi de http://192.168.0.100/install.ipxe

Tio estas ĉio por Ubuntu.

Paŝo 3 - Aldono de ipxe.efi al WDS

Ni prenas la dosieron, kiun ni ricevis en la dua etapo kaj kopias ĝin laŭ la vojo:
%WDSpath%Bootx64%your-boot-folder%EFIBOOT
Post kiam ni renomas ĝin al BOOTX64.EFI.
Ne necesas, ĝi estas nur pli oportuna.

Tiam ni lanĉas cmd nome de la administranto, kaj skribu la jenajn komandojn:

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

Ĉi tio fiksos la rezultan dosieron elŝutotan per WDS.

Ni kontrolu la agordon:

wdsutil /get-server /Show:Config

Vastigante WDS-Funkcion: Aldonante UEFI-Botigan Kapablecon

Mi ankaŭ kopiis la ipxe.efi dosieron, renomis ĝin BOOTIA32.EFI kaj agordis lanĉon por ĝi, ĉiaokaze. architecture:x86uefi
Sed ĝenerale, ĉi tio ne havas sencon, ĉar. Bootmgfw.efi-dosiero ne subtenas x86

Ni kontrolu kio okazis.
Vastigante WDS-Funkcion: Aldonante UEFI-Botigan Kapablecon
Bonege, WDS sendas nian dosieron por elŝuto kaj ĝi, siavice, serĉas la agordon laŭ la vojo: http://192.168.0.100/install.ipxe

Paŝo 4 - Menua Agordo

Iru al la radika dosierujo de via retejo.
La defaŭlta estas: C:inetpubwwwroot

Kreu tekstan dosieron instali.ipxe.

kaj agordi ĝin laŭ dokumentado kaj viaj bezonoj.
Ekzistas ankaŭ rusa lingvo la priskribo ordonoj.
mi ĝuis ĉi tio instrukcioj dum agordo de via WDS.

install.ipxe agorda ekzemplo

#!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

Vi povas legi pri la agordo por ŝarĝi winPE tie.

Etapo 5 - MIME-tipoj

Post krei la menuon kaj aldoni ĉiujn necesajn dosierojn al la radika dosierujo de IIS,
vi devas doni al ili aliron.

Ĉar eĉ se vi provas elŝuti dosieron el la retumilo, vi ricevos eraron ĉe ĝia adreso: HTTP 404.3 - Not Found.
Vastigante WDS-Funkcion: Aldonante UEFI-Botigan Kapablecon

Por fari tion, vi devas aldoni MIME-tipojn en la kontrolpanelo de IIS, konforme
kun dosieraj etendoj, kiujn vi elŝutos per http.

Mi ne serĉis, kiu tipo MIME estas plej bona por ĉi tiu celo, kaj demandis application/octet-stream, post kio ĉio funkciis.

Por dosieroj kiuj ne havas etendon, uzu punkton.

Jen tiel:

Vastigante WDS-Funkcion: Aldonante UEFI-Botigan Kapablecon

konkludo

Finfine, ni ricevas la kapablon ekfunkciigi per loka reto per UEFI.

Se ni faris ĉion ĝuste, tiam estos io kiel ĉi tiu boto-elekta menuo:

Vastigante WDS-Funkcion: Aldonante UEFI-Botigan Kapablecon

Se vi preparis la bazajn ilojn kaj vi ne ĝenos la agordon, tiam necesas ĉirkaŭ 10-20 minutoj por efektivigi ĉi tiun funkcion.
Mi bezonis 2 labortagojn, ĉar. Mi devis guglo multe.

Sukcesa efektivigo!

Dankon pro via atento kaj koran dankon al tiuj homoj, kies artikoloj helpis min!
Sur Habré ĝi estas: Ingtar и Profundurbo.

fonto: www.habr.com

Aldoni komenton