хүн бүрт Сайн байна уу!
Энэ нийтлэлд WDS-дээ UEFI ачаалах чадварыг нэмэхийн тулд хийх ёстой алхмуудыг тайлбарласан болно.
Тэдгээр. Энэ нийтлэл дэх заавар нь танд дараах тохиргоог аль хэдийн хийсэн гэж үзэж байна:
1. Windows Server 2012R2 (или новее)
2. Полностью настроенный DHCP для работы с WDS
3. Собственно сам WDS
4. IIS
5. Виртуальная машина или ПК с Ubuntu
Мөн надад зохих үр дүнд хүрээгүй үйлдлүүдийг энд тайлбарлав.
Хайлтыг хөнгөвчлөх, таны цагийг хэмнэх үүднээс би тэдгээрийг тайлбарласан.
Өмнөх үг
Би ажил дээрээ маш олон сайхан зүйлсээр WDS хийсэн, tk. байнга бөөн флаш дискнүүдтэй гүйлдэж, дарж бичихээс залхаж байна.
Эдгээр нийтлэлүүд надад тусалсан.
Энэ нь иймэрхүү харагдаж байна
Бүх зүйл сайхан байсан, ачаалахад шинэ зургууд нэмэгдсэн, winPE дүрс нь шинэ функцээр бүрхэгдсэн бөгөөд бүх зүйл амжилттай болсон.
Гэхдээ бүх төхөөрөмжүүд BIOS / Legacy ачаалах горимыг дэмждэггүй, эсвэл хэрэв дэмждэг бол түүнийг оруулах нь маш тодорхой бус газар байж магадгүй юм.
Тийм ээ, UEFI дээр суулгах боломжтой бол хуучин горимд цонх суулгах нь тийм ч таатай биш юм.
Үүний үр дүнд би UEFI-д ачаалах чадварыг нэмэхээр шийдэж, Google-д очсон.
Гэхдээ би WDS + UEFI-г хэрхэн яаж авах талаар бүтэцтэй мэдээлэл олж чадаагүй.
Уг нь би энэ нийтлэлийг бичихээр шийдсэн юм.
Эхлэхээсээ өмнө би хамгийн их цаг зарцуулсан асуудлыг тайлбарлах болно.
UEFI-г WDS-д нэмэх үед дараахь тодорхой бус нөхцөл байдал үүсч болно.
Хэрэв та WDS-д ачаалах файл нэмбэл, төхөөрөмж дээр ачаалах гэж оролдох үед
UEFI дээр та дараах текстийг харж байна:
The selected boot device failed. Press <Enter> to Continue.
Эсвэл Boot Device Not Found
Гэхдээ өв залгамжлалыг ачаалах нь танд тохиромжтой.
Дараа нь боломжит сонголтуудын нэг бол файл байхгүй байх явдал юм wdsmgfw.efi,
дараах зам дагуу: %WDSpath%Bootx64wdsmgfw.efi
Та эндээс авч болно: C:WindowsSystem32RemInstbootx64wdsmgfw.efi
Эсвэл ямар нэг шалтгааны улмаас энэ файл танд байхгүй бол би үүнийг нийтэлсэн
Энэ шийдлийн төлөө залуусдаа баярлалаа
Энэ асуудалд би хамгийн их цаг хугацаа алдсан, учир нь. Асуудал WDS эсвэл DHCP тохиргооны хаа нэгтээ байгаа гэж би бодсон.
Төрөл бүрийн архитектурт нийлүүлэгчийн ангиудыг нэмж, DHCP 060, 066, 067 сонголтуудыг тохируулснаар удирдамжийг тохируулсан.
DHCP-ийг тохируулах ASCII дахь архитектурууд
PXEClient:Arch:00000 - BIOS/Legacy
PXEClient:Arch:00006 - UEFI x86
PXEClient:Arch:00007 - UEFI x64
Мөн би ачаалах файлуудын янз бүрийн сонголтыг туршиж үзсэн. .efi
- syslinux
- бүлэг 2
Би мөн үйл явдлын бүртгэлээс асуудлыг олохыг оролдсон.
win + r -> eventvwr -> Журналы приложений и служб -> Microsoft -> Windows -> Deployment-Services-Diagnostics
Гэхдээ дээр дурдсанчлан асуудал нь файлд байгаа юм wdsmgfw.efi.
Би өөрөө санамсаргүй устгасан эсвэл суулгах явцад хуулбарлаагүй
болон WDS-г тохируулах.
За, эхэлцгээе!
Зааварчилгаа
1-р шат - WDS ажиллаж байгаа эсэхийг шалгана уу
Сүлжээгээр дамжуулан UEFI горимд ачаалах боломжтой аливаа төхөөрөмж эсвэл виртуал машиныг аваад ачаалахыг оролдоорой.
Та дараах зурагтай байх ёстой.
Хэрэв тийм бол гайхалтай, та үргэлжлүүлж болно.
Үгүй бол оршилд юу бичсэнийг хараарай.
2-р шат - iPXE ачаалах файлыг бүтээх
Бид урьдчилан бэлтгэсэн Ubuntu-г ажиллуулж, терминал нээж, дараах мөрийг буулгана.
git clone https://git.ipxe.org/ipxe.git ipxe
Энд би C болон C ++ хэлийг хөрвүүлэхэд шаардлагатай багцуудыг Ubuntu-д нэмж оруулах шаардлагатай байж магадгүй талаар жижиг тэмдэглэл хийхийг хүсч байна.
Би зүгээр л суулгасан.
Татаж авсан уу? - Агуу их!
Одоо та угсралтын тохиргооны файлыг хийх хэрэгтэй.
Терминал дээр бид бичнэ:
cd ipxe/src
gedit chain.ipxe
Дараах кодыг энэ файл руу оруулаад хадгална уу:
#!ipxe
dhcp
chain http://%IP-address-your-IIS-server%/install.ipxe
Бид терминал руу буцаж очоод эмхэтгэлээ эхлүүлнэ:
make bin-x86_64-efi/ipxe.efi EMBED=chain.ipxe
Хэрэв бүх зүйл эмх цэгцтэй байвал терминал дээр дараах гаралтыг авах хэрэгтэй.
Мөн файл ipxe.efi, замын дагуу: ipxe/src/bin-x86_64-efi/ipxe.efi
Хэрэв ямар нэг шалтгааны улмаас та өөрөө эмхэтгэх боломжгүй бол
Би өөрийгөө хавсаргасан
Үүнийг эхлүүлэхийн тулд эмхэтгэсэн http://192.168.0.100/install.ipxe
Энэ бүхэн Ubuntu-д зориулагдсан.
Алхам 3 - WDS-д ipxe.efi нэмэх
Бид хоёр дахь шатанд хүлээн авсан файлаа аваад замдаа хуулна.
%WDSpath%Bootx64%your-boot-folder%EFIBOOT
Бид үүнийг BOOTX64.EFI болгон өөрчилсний дараа.
Энэ нь шаардлагагүй, зүгээр л илүү тохиромжтой.
Дараа нь бид эхлүүлнэ cmd администраторын нэрийн өмнөөс дараах тушаалуудыг бичнэ үү.
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
Энэ нь үүссэн файлыг WDS-ээр татаж авахаар тохируулна.
Тохиргоог шалгацгаая:
wdsutil /get-server /Show:Config
Би мөн ipxe.efi файлыг хуулж, BOOTIA32.EFI гэж нэрлэж, ачаалах тохиргоог хийсэн. architecture:x86uefi
Гэхдээ ерөнхийдөө энэ нь утгагүй, учир нь. Bootmgfw.efi файл x86-г дэмждэггүй
Юу болсныг шалгацгаая.
Гайхалтай нь, WDS нь манай файлыг татаж авахаар илгээдэг бөгөөд энэ нь эргээд зам дагуу тохиргоог хайдаг. http://192.168.0.100/install.ipxe
Алхам 4 - Цэсийн тохиргоо
Сайтынхаа үндсэн хавтас руу очно уу.
Өгөгдмөл нь: C:inetpubwwwroot
Текст файл үүсгэх install.ipxe.
дагуу тохируулна уу
Орос хэл ч бий
Надад таалагдсан
install.ipxe тохиргооны жишээ
#!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-г ачаалах тохиргооны талаар уншиж болно
5-р шат - MIME төрлүүд
Цэс үүсгэж, шаардлагатай бүх файлыг IIS үндсэн хавтсанд нэмсний дараа,
Та тэдэнд хандах эрх өгөх хэрэгтэй.
Учир нь Хэрэв та хөтчөөс файл татаж авахыг оролдсон ч түүний хаяг дээр алдаа гарах болно: HTTP 404.3 - Not Found
.
Үүнийг хийхийн тулд та IIS хяналтын самбарт MIME төрлийг тохируулах хэрэгтэй
http-ээр дамжуулан татаж авах файлын өргөтгөлүүдтэй.
Би энэ зорилгоор аль MIME төрлийн хамгийн тохиромжтойг хайгаагүй бөгөөд асуув application/octet-stream
, үүний дараа бүх зүйл ажилласан.
Өргөтгөлгүй файлуудын хувьд цэг ашиглана уу.
Энд байгаа:
дүгнэлт
Эцэст нь бид UEFI-ээр дамжуулан дотоод сүлжээгээр ачаалах боломжийг олж авдаг.
Хэрэв бид бүх зүйлийг зөв хийсэн бол ачаалах сонголтын цэстэй төстэй зүйл гарч ирнэ.
Хэрэв та үндсэн хэрэгслүүдээ бэлтгэсэн бөгөөд тохиргоонд төвөг учруулахгүй бол энэ функцийг хэрэгжүүлэхэд 10-20 минут зарцуулагдана.
Ажлын 2 өдөр зарцуулсан, учир нь. Би маш их google хайх хэрэгтэй болсон.
Амжилттай хэрэгжилт!
Анхаарал тавьсанд баярлалаа, нийтлэлээрээ надад тусалсан хүмүүст маш их баярлалаа!
Хабре дээр энэ нь:
Эх сурвалж: www.habr.com