WDS Funksionallığının genişləndirilməsi: UEFI Yükləmə qabiliyyətinin əlavə edilməsi

Hello!

Bu məqalə WDS-yə UEFI yükləmə qabiliyyətini əlavə etmək üçün yerinə yetirməli olduğunuz addımları təsvir edir.

Bunlar. Bu məqalədəki təlimatlar artıq aşağıdakı konfiqurasiyaya sahib olduğunuzu güman edir:

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

Həmçinin, burada mənə lazımi nəticə verməyən hərəkətlər təsvir edilmişdir.
Axtarışı asanlaşdırmaq və vaxtınıza qənaət etmək üçün onları təsvir etdim.

Müqəddimə

Mən işdə çoxlu gözəlliklərlə WDS hazırladım, tk. daim bir dəstə flash sürücü ilə dolaşmaqdan və onların üzərinə yazmaqdan yoruldum.

Yeri gəlmişkən, bu məqalələr mənə kömək etdi:
WDS çox yönlülüyün əlavə edilməsi
Sistem Mərkəzi Konfiqurasiya Meneceri ilə PXE yükləmə menyusu


Bu belə görünür

WDS Funksionallığının genişləndirilməsi: UEFI Yükləmə qabiliyyətinin əlavə edilməsi

Və hər şey yaxşı idi, yükləmək üçün yeni şəkillər əlavə edildi, winPE şəkli yeni xüsusiyyətlərlə böyüdü və hər şey işlədi.

Lakin, bütün cihazlardan uzaq BIOS / Legacy yükləmə rejimini dəstəkləyir və ya əgər varsa, onun daxil edilməsi çox qeyri-aşkar bir yerdə ola bilər.

Bəli və UEFI-də quraşdırmaq mümkün olduqda köhnə rejimdə pəncərələri quraşdırmaq xoş deyil.

Nəticədə UEFI-yə yükləmə qabiliyyətini əlavə etmək qərarına gəldim və Google-a getdim.

Ancaq işləyən WDS + UEFI-ni necə əldə etmək barədə strukturlaşdırılmış məlumat tapa bilmədim.
Əslində buna görə də bu yazını yazmağa qərar verdim.

Başlamazdan əvvəl ən çox vaxt aparan problemi təsvir edəcəyəm.

UEFI-ni WDS-ə əlavə edərkən, aşağıdakı, olduqca açıq olmayan vəziyyət mümkündür:

WDS-ə yükləmə faylı əlavə etsəniz və cihazda yükləməyə çalışdığınız zaman
UEFI-də aşağıdakı mətni görürsünüz:
The selected boot device failed. Press <Enter> to Continue.
Və ya Boot Device Not Found
Ancaq mirası yükləmək sizin üçün işləyir.
Sonra mümkün variantlardan biri faylın olmamasıdır wdsmgfw.efi,
aşağıdakı yol boyunca: %WDSpath%Bootx64wdsmgfw.efi

Buradan götürə bilərsiniz: C:WindowsSystem32RemInstbootx64wdsmgfw.efi
Və ya nədənsə bu fayl sizin üçün çatışmırsa, mən onu yerləşdirmişəm Google.
Bu həll üçün, təşəkkür uşaqlar reddit.

Bu problemlə ən çox vaxt öldürdüm, çünki. Problemin WDS və ya DHCP konfiqurasiyasında olduğunu düşündüm.

Müxtəlif arxitekturalar üçün Satıcı Sinifləri əlavə etməklə və DHCP seçimlərini 060, 066, 067 konfiqurasiya etməklə konfiqurasiya edilmiş siyasətlər. Təlim DHCP siyasətlərini konfiqurasiya etmək üçün.

DHCP konfiqurasiyası üçün ASCII-də arxitekturalar

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

Həmçinin, açılış faylları üçün müxtəlif variantları sınadım. .efi

  • syslinux
  • qrup 2

Mən də hadisə jurnalında problemi tapmağa çalışdım.
win + r -> eventvwr -> Журналы приложений и служб -> Microsoft -> Windows -> Deployment-Services-Diagnostics

Amma yuxarıda dediyim kimi problem fayldadır wdsmgfw.efi.
Ya təsadüfən özüm silmişəm, ya da quraşdırma zamanı kopyalanmayıb
və WDS konfiqurasiyası.

Yaxşı, başlayaq!

Təlim

Mərhələ 1 - WDS-nin işlədiyini yoxlayın

Şəbəkə üzərindən UEFI rejimində yükləmə dəstəyi ilə istənilən cihazı və ya virtual maşını götürün və yükləməyə çalışın.

Aşağıdakı şəkilə sahib olmalısınız:

WDS Funksionallığının genişləndirilməsi: UEFI Yükləmə qabiliyyətinin əlavə edilməsi

Əgər belədirsə, əla, davam edə bilərsiniz.
Yoxdursa, görün ön sözdə nə yazdım.

Mərhələ 2 - iPXE Yükləmə Faylının yaradılması

Əvvəlcədən hazırlanmış Ubuntu-nu işə salırıq, terminal açırıq və bu xətti yapışdırırıq:

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

WDS Funksionallığının genişləndirilməsi: UEFI Yükləmə qabiliyyətinin əlavə edilməsi

Burada kiçik bir qeyd etmək istərdim ki, Ubuntu-ya C və C++ tərtib etmək üçün lazım olan paketləri əlavə etməli ola bilərsiniz.
Mən onları sadəcə quraşdırmışam.

Endirilib? - Əla!
İndi montaj üçün bir konfiqurasiya faylı yaratmalısınız.
Terminalda yazırıq:

cd ipxe/src
gedit chain.ipxe

Və aşağıdakı kodu bu fayla yapışdırın və sonra yadda saxlayın:

#!ipxe

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

Terminala qayıdırıq və tərtib etməyə başlayırıq:

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

WDS Funksionallığının genişləndirilməsi: UEFI Yükləmə qabiliyyətinin əlavə edilməsi

Hər şey qaydasındadırsa, terminalda aşağıdakı çıxışı almalısınız:

WDS Funksionallığının genişləndirilməsi: UEFI Yükləmə qabiliyyətinin əlavə edilməsi

Və fayl ipxe.efi, yol boyunca: ipxe/src/bin-x86_64-efi/ipxe.efi
Əgər nədənsə öz başınıza tərtib edə bilmirsinizsə,
Özümü bağlamışam fayl.
O, yükləmək üçün tərtib edilmişdir http://192.168.0.100/install.ipxe

Ubuntu üçün hamısı budur.

Addım 3 - WDS-ə ipxe.efi əlavə edin

İkinci mərhələdə aldığımız faylı götürürük və yol boyu kopyalayırıq:
%WDSpath%Bootx64%your-boot-folder%EFIBOOT
Biz onu BOOTX64.EFI olaraq dəyişdirdikdən sonra.
Bu lazım deyil, sadəcə daha rahatdır.

Sonra başlayırıq cmd administrator adından və aşağıdakı əmrləri yazın:

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

Bu, əldə edilən faylın WDS vasitəsilə endirilməsini təyin edəcək.

Konfiqurasiyanı yoxlayaq:

wdsutil /get-server /Show:Config

WDS Funksionallığının genişləndirilməsi: UEFI Yükləmə qabiliyyətinin əlavə edilməsi

Mən də ipxe.efi faylını kopyaladım, onu BOOTIA32.EFI adlandırdım və hər ehtimala qarşı onun üçün açılışı konfiqurasiya etdim. architecture:x86uefi
Ancaq ümumiyyətlə, bunun heç bir mənası yoxdur, çünki. Bootmgfw.efi faylı x86-nı dəstəkləmir

Nə baş verdiyini yoxlayaq.
WDS Funksionallığının genişləndirilməsi: UEFI Yükləmə qabiliyyətinin əlavə edilməsi
Əla, WDS faylımızı yükləmək üçün göndərir və o da öz növbəsində yol boyu konfiqurasiya axtarır: http://192.168.0.100/install.ipxe

Addım 4 - Menyu Konfiqurasiyası

Saytınızın kök qovluğuna keçin.
Varsayılan olaraq: C:inetpubwwwroot

Mətn faylı yaradın install.ipxe.

və uyğun olaraq konfiqurasiya edin sənədlər və ehtiyaclarınız.
Rus dili də var описание əmrlər.
zövq aldım bu WDS-ni konfiqurasiya edərkən təlimatlar.

install.ipxe konfiqurasiya nümunəsi

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

WinPE yükləmək üçün konfiqurasiya haqqında oxuya bilərsiniz burada.

Mərhələ 5 - MIME növləri

Menyu yaratdıqdan və bütün lazımi faylları IIS kök qovluğuna əlavə etdikdən sonra,
onlara giriş imkanı verməlisən.

Çünki brauzerdən fayl yükləməyə çalışsanız belə, onun ünvanında xəta alacaqsınız: HTTP 404.3 - Not Found.
WDS Funksionallığının genişləndirilməsi: UEFI Yükləmə qabiliyyətinin əlavə edilməsi

Bunu etmək üçün, uyğun olaraq IIS idarəetmə panelinə MIME növləri əlavə etməlisiniz
http vasitəsilə endirəcəyiniz fayl uzantıları ilə.

Bu məqsəd üçün hansı MIME növünün daha yaxşı olduğunu axtarmadım və soruşdum application/octet-stream, bundan sonra hər şey işlədi.

Uzatması olmayan fayllar üçün nöqtədən istifadə edin.

Burada belədir:

WDS Funksionallığının genişləndirilməsi: UEFI Yükləmə qabiliyyətinin əlavə edilməsi

Nəticə

Nəhayət, biz UEFI vasitəsilə yerli şəbəkə üzərindən yükləmə imkanı əldə edirik.

Hər şeyi düzgün etdiksə, bu yükləmə seçimi menyusu kimi bir şey olacaq:

WDS Funksionallığının genişləndirilməsi: UEFI Yükləmə qabiliyyətinin əlavə edilməsi

Əsas alətləri hazırlamısınızsa və konfiqurasiya ilə narahat olmayacaqsınızsa, bu funksiyanı həyata keçirmək üçün təxminən 10-20 dəqiqə vaxt lazımdır.
Mənə 2 iş günü çəkdi, çünki. Çox google-a girməli oldum.

Uğurlu icra!

Diqqətinizə görə təşəkkür edirəm və məqalələri mənə kömək edən insanlara çox təşəkkür edirəm!
Habré-də belədir: İnqtar и Dərin şəhər.

Mənbə: www.habr.com

Добавить комментарий