Herkese Merhaba!
Bu makale, WDS'nize UEFI önyükleme özelliği eklemek için izlemeniz gereken adımları açıklamaktadır.
Onlar. Bu makaledeki yönergeler, halihazırda aşağıdaki yapılandırmaya sahip olduğunuzu varsayar:
1. Windows Server 2012R2 (или новее)
2. Полностью настроенный DHCP для работы с WDS
3. Собственно сам WDS
4. IIS
5. Виртуальная машина или ПК с Ubuntu
Ayrıca, burada bana doğru sonucu getirmeyen eylemler açıklanmaktadır.
Aramayı kolaylaştırmak ve size zaman kazandırmak için bunları anlattım.
Önsöz
İş yerinde pek çok güzellikle bir WDS yaptım, tk. sürekli olarak bir sürü flash sürücüyle dolaşmaktan ve bunların üzerine yazmaktan bıktınız.
Bu makaleler bu arada bana yardımcı oldu:
Ve her şey yolundaydı, yükleme için yeni görüntüler eklendi, winPE görüntüsü yeni özelliklerle büyütüldü ve her şey çalıştı.
Ancak, tüm cihazlardan uzak, BIOS / Legacy önyükleme modunu destekler veya desteklerlerse, dahil edilmesi çok açık olmayan bir yerde olabilir.
Evet ve UEFI'de kurulum mümkün olduğunda pencereleri eski modda kurmak harika değil.
Sonuç olarak, UEFI'ye önyükleme yeteneği eklemeye karar verdim ve Google'a gittim.
Ancak çalışan bir WDS + UEFI'nin nasıl edinileceğine dair yapılandırılmış bilgi bulamadım.
Aslında bu yüzden bu yazıyı yazmaya karar verdim.
Başlamadan önce, en çok zaman alan sorunu anlatacağım.
WDS'ye UEFI eklerken, oldukça açık olmayan aşağıdaki durum mümkündür:
WDS'ye bir önyükleme dosyası eklerseniz ve cihazda önyükleme yapmaya çalıştığınızda
UEFI'de aşağıdaki metni görürsünüz:
The selected boot device failed. Press <Enter> to Continue.
Veya Boot Device Not Found
Ancak eski sürümde yükleme sizin için çalışır.
O zaman olası seçeneklerden biri bir dosyanın olmamasıdır. wdsmgfw.efi,
aşağıdaki yol boyunca: %WDSpath%Bootx64wdsmgfw.efi
Buradan alabilirsin: C:WindowsSystem32RemInstbootx64wdsmgfw.efi
Veya, herhangi bir nedenle bu dosya sizin için eksikse, onu şuraya gönderdim:
Bu çözüm için teşekkürler çocuklar
Bu sorunla en çok zaman öldürdüm çünkü. Sorunun WDS veya DHCP yapılandırmasında bir yerde olduğunu düşündüm.
Çeşitli mimariler için Satıcı Sınıfları ekleyerek ve DHCP seçeneklerini 060, 066, 067 ayarlayarak yapılandırılmış politikalar.
DHCP'yi yapılandırmak için ASCII'deki mimariler
PXEClient:Arch:00000 - BIOS/Eski
PXEClient:Arch:00006 - UEFI x86
PXEClient:Arch:00007 - UEFI x64
Ayrıca, önyükleme dosyaları için çeşitli seçenekleri denedim. .efi
- syslinux
- grub 2
Sorunu Olay Günlüğünde de bulmaya çalıştım.
win + r -> eventvwr -> Журналы приложений и служб -> Microsoft -> Windows -> Deployment-Services-Diagnostics
Ama yukarıda da söylediğim gibi sorun dosyada yatıyor. wdsmgfw.efi.
Ya yanlışlıkla kendim sildim ya da kurulum sırasında kopyalanmadı.
ve WDS'yi yapılandırma.
Pekala, başlayalım!
Talimat
Aşama 1 - WDS'nin çalıştığını doğrulayın
Ağ üzerinden UEFI modunda önyükleme desteği olan herhangi bir cihazı veya sanal makineyi alın ve önyüklemeyi deneyin.
Aşağıdaki resme sahip olmalısınız:
Eğer öyleyse, harika, devam edebilirsiniz.
Değilse, önsözde ne yazdığıma bakın.
2. Aşama - iPXE Önyükleme Dosyasını Oluşturma
Önceden hazırlanmış Ubuntu'yu başlatıyoruz, bir terminal açıyoruz ve şu satırı yapıştırıyoruz:
git clone https://git.ipxe.org/ipxe.git ipxe
Burada C ve C++'ı derlemek için gerekli paketleri Ubuntu'ya eklemeniz gerekebileceğine dair küçük bir açıklama yapmak istiyorum.
Ben sadece onları kurdum.
İndirildi? - Harika!
Şimdi derleme için bir yapılandırma dosyası oluşturmanız gerekiyor.
Terminalde şunu yazıyoruz:
cd ipxe/src
gedit chain.ipxe
Ve aşağıdaki kodu bu dosyaya yapıştırın ve kaydedin:
#!ipxe
dhcp
chain http://%IP-address-your-IIS-server%/install.ipxe
Terminale geri dönüyoruz ve derlemeye başlıyoruz:
make bin-x86_64-efi/ipxe.efi EMBED=chain.ipxe
Her şey yolundaysa, terminalde aşağıdaki çıktıyı almalısınız:
Ve dosya ipxe.efi, yol boyunca: ipxe/src/bin-x86_64-efi/ipxe.efi
Herhangi bir nedenle kendi başınıza derleyemediyseniz,
benimkini ekledim
Önyükleme için derlenmiştir http://192.168.0.100/install.ipxe
Ubuntu için hepsi bu.
Adım 3 - ipxe.efi'yi WDS'ye ekleme
İkinci aşamada aldığımız dosyayı alıp yol boyunca kopyalıyoruz:
%WDSpath%Bootx64%your-boot-folder%EFIBOOT
Adını BOOTX64.EFI olarak değiştirdikten sonra.
Gerekli değil, sadece daha uygun.
Sonra başlatıyoruz cmd yönetici adına ve aşağıdaki komutları 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, ortaya çıkan dosyayı WDS aracılığıyla indirilecek şekilde ayarlayacaktır.
Yapılandırmayı kontrol edelim:
wdsutil /get-server /Show:Config
Ayrıca ipxe.efi dosyasını da kopyaladım, BOOTIA32.EFI olarak yeniden adlandırdım ve her ihtimale karşı önyüklemeyi yapılandırdım. architecture:x86uefi
Ama genel olarak bu hiç mantıklı değil, çünkü. Bootmgfw.efi dosyası x86'yı desteklemiyor
Ne olduğunu kontrol edelim.
Harika, WDS dosyamızı indirilmek üzere gönderir ve sırayla yol boyunca yapılandırmayı arar: http://192.168.0.100/install.ipxe
Adım 4 - Menü Yapılandırması
Sitenizin kök klasörüne gidin.
varsayılan: C:inetpubwwwroot
Bir metin dosyası oluşturun kurulum.ipxe.
ve buna göre yapılandırın
Rusça da var
ben eğlendim
install.ipxe yapılandırma örneği
#!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'yi yüklemek için yapılandırma hakkında bilgi edinebilirsiniz.
Aşama 5 - MIME türleri
Menüyü oluşturduktan ve gerekli tüm dosyaları IIS kök klasörüne ekledikten sonra,
onlara erişim vermeniz gerekir.
Çünkü tarayıcıdan bir dosya indirmeye çalışsanız bile, adresinde bir hata alırsınız: HTTP 404.3 - Not Found
.
Bunu yapmak için, IIS kontrol paneline uygun olarak MIME türleri eklemeniz gerekir.
http üzerinden indireceğiniz dosya uzantıları ile.
Bu amaç için hangi MIME türünün en iyi olduğunu aramadım ve sordum application/octet-stream
, bundan sonra her şey çalıştı.
Uzantısı olmayan dosyalar için nokta kullanın.
İşte:
Sonuç
Nihayetinde, UEFI aracılığıyla yerel bir ağ üzerinden önyükleme yapma olanağına sahibiz.
Her şeyi doğru yaptıysak, bu önyükleme seçim menüsü gibi bir şey olacaktır:
Temel araçları hazırladıysanız ve yapılandırmayla uğraşmayacaksanız, bu özelliği uygulamak yaklaşık 10-20 dakika sürer.
2 iş günü sürdü çünkü. Google'da çok aramam gerekti.
Başarılı uygulama!
İlginiz için teşekkür ederim ve makaleleri bana yardımcı olan insanlara çok teşekkürler!
Habré'de:
Kaynak: habr.com