ืฉืืื ืืืืื!
ืืืืจ ืื ืืชืืจ ืืช ืืฉืืืื ืฉืขืืื ืืืฆืข ืืื ืืืืกืืฃ ืืืืืช ืืชืืื UEFI ื-WDS ืฉืื.
ืึธืึตื. ืืืืจืืืช ืืืืืจ ืื ืื ืืืืช ืฉืืืจ ืืฉ ืื ืืช ืืชืฆืืจื ืืืื:
1. Windows Server 2012R2 (ะธะปะธ ะฝะพะฒะตะต)
2. ะะพะปะฝะพัััั ะฝะฐัััะพะตะฝะฝัะน DHCP ะดะปั ัะฐะฑะพัั ั WDS
3. ะกะพะฑััะฒะตะฝะฝะพ ัะฐะผ WDS
4. IIS
5. ะะธัััะฐะปัะฝะฐั ะผะฐัะธะฝะฐ ะธะปะธ ะะ ั Ubuntu
ืืื ืื, ืืื ืืชืืืจืืช ืคืขืืืืช ืฉืื ืืืืื ืื ืืช ืืชืืฆืื ืืจืืืื.
ืชืืืจืชื ืืืชื ืืื ืืืงื ืขื ืืืืคืืฉ ืืืืกืื ืื ืืื.
ืคึฐึผืชึดืืึท
ืขืฉืืชื WDS ืืขืืืื ืขื ืืจืื ืืืจืื ืืืืื, tk. ื ืืืก ืื ืืืื ืืืชืจืืฆืฅ ืขื ืืืืจื ืฉื ืืื ื ื ืืืืง ืืืืจืืก ืืืชื.
ืืืืืจืื ืืืื ืขืืจื ืื ืืื:
ืืืื ืืื ืืกืืจ, ืชืืื ืืช ืืืฉืืช ื ืืกืคื ืืืขืื ื, ืชืืื ืช winPE ืจืืฉื ืชืืื ืืช ืืืฉืืช ืืืื ืขืื.
ืืื, ืจืืืง ืืื ืืืืฉืืจืื ืชืืืืื ืืืฆื ืืืชืืื ืฉื BIOS / Legacy, ืื ืื ืื, ืื ืืืืืชื ืขืฉืืื ืืืืืช ืืืงืื ืืืื ืื ืืืื ืืืืื.
ืื, ืืืชืงื ืช ืืืื ืืช ืืืฆื ืืืืจ ืงืืื, ืืฉืืคืฉืจ ืืืชืงืื ื-UEFI, ืื ืื ืืื ืื.
ืืชืืฆืื ืืื, ืืืืืชื ืืืืกืืฃ ืืช ืืืืืืช ืืืชืื ื-UEFI, ืืืืืชื ืืืืื.
ืืื ืื ืืฆืืชื ืืืืข ืืืื ื ืขื ืืื ืืืฉืื 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.
ืืจืืืืงืืืจืืช ื-ASCII ืืืืืจืช DHCP
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
ืื ื ืืฉืืงืื ืืืืื ืื ืืืื ื ืืจืืฉ, ืคืืชืืื ืืกืืฃ ืืืืืืงืื ืืช ืืฉืืจื ืืื:
git clone https://git.ipxe.org/ipxe.git ipxe
ืืื ืืจืฆืื ื ืืืขืืจ ืืขืจื ืงืื ื ืฉืืืื ืชืฆืืจื ืืืืกืืฃ ืืืืืืช ืืืืืื ืื ืื ืืืฆืืช ืืืืืืจ C ื-C++.
ืคืฉืื ืืชืงื ืชื ืืืชื.
ืืืจื? - ืืืื!
ืืขืช ืขืืื ืืืฆืืจ ืงืืืฅ ืชืฆืืจื ืขืืืจ ืืืืืื.
ืืืจืืื ื ืื ื ืืืชืืื:
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
ืื ืืื ืขืืืจ ืืืืื ืื.
ืฉืื 3 - ืืืกืคืช ipxe.efi ื-WDS
ืื ืื ื ืืืงืืื ืืช ืืงืืืฅ ืฉืงืืืื ื ืืฉืื ืืฉื ื ืืืขืชืืงืื ืืืชื ืืืจื:
%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
.
ืืฉื ืื, ืขืืื ืืืืกืืฃ ืกืืื MIME ืืืื ืืืงืจื ืฉื IIS, ืืืชืื
ืขื ืกืืืืืช ืงืืฆืื ืฉืชืืจืืื ืืจื http.
ืื ืืืคืฉืชื ืืืื ืกืื MIME ืืื ืืชืืื ืืืืจื ืื, ืืฉืืืชื application/octet-stream
, ืืืืืจ ืืื ืืื ืขืื.
ืขืืืจ ืงืืฆืื ืฉืืื ืืื ืกืืืืช, ืืฉืชืืฉ ืื ืงืืื.
ืื ื ืื:
ืืกืงื ื
ืืกืืคื ืฉื ืืืจ, ืื ื ืืงืืืื ืืช ืืืืืืช ืืืชืื ืืจื ืจืฉืช ืืงืืืืช ืืจื UEFI.
ืื ืขืฉืื ื ืืื ื ืืื, ืืืื ืืฉืื ืืื ืชืคืจืื ืืืืจืช ืืืชืืื ืืื:
ืื ืืื ืชื ืืช ืืืืื ืืืกืืกืืื ืืื ืชืชืขืกืงื ืขื ืืชืฆืืจื, ืื ืื ืืืงื ืืขืจื 10-20 ืืงืืช ืืืืฉื ืืช ืืชืืื ื ืืื.
ืืงื ืื 2 ืืื ืขืืืื, ืื. ืืืืชื ืฆืจืื ืืืคืฉ ืืจืื ืืืืื.
ืืืฉืื ืืืฆืื!
ืชืืื ืขื ืชืฉืืืช ืืื ืืชืืื ืจืื ืืืืชื ืื ืฉืื ืฉืืืืืจืื ืฉืืื ืขืืจื ืื!
ืขื Habrรฉ ืื:
ืืงืืจ: www.habr.com