Ola a todos!
Este artigo describe os pasos que debes seguir para engadir a capacidade de arranque UEFI ao teu WDS.
Eses. As instrucións deste artigo supoñen que xa tes a seguinte configuración:
1. Windows Server 2012R2 (или новее)
2. Полностью настроенный DHCP для работы с WDS
3. Собственно сам WDS
4. IIS
5. Виртуальная машина или ПК с Ubuntu
Ademais, aquí descríbense accións que non me deron o resultado axeitado.
Describínos para facilitar a busca e aforrar tempo.
Prefacio
Fixen un WDS no traballo con moitas golosinas, tk. canso de correr constantemente cunha chea de unidades flash e sobreescribilas.
Estes artigos axudáronme por certo:
E todo estaba ben, engadíronse novas imaxes para cargar, a imaxe winPE estaba cuberta de novas funcións e todo funcionou.
Pero, lonxe de que todos os dispositivos admitan o modo de inicio BIOS / Legacy, ou se o fan, a súa inclusión pode estar nun lugar moi pouco obvio.
Si, e instalar Windows en modo herdado, cando é posible instalalo en UEFI, non é xenial.
Como resultado, decidín engadir a posibilidade de iniciar UEFI e fun a Google.
Pero non atopei información estruturada sobre como obter un WDS + UEFI que funcione.
En realidade, por iso decidín escribir este artigo.
Antes de comezar, describirei o problema que levou máis tempo.
Ao engadir UEFI a WDS, é posible a seguinte situación, bastante non obvia:
Se engades un ficheiro de inicio a WDS e cando intentas iniciar o dispositivo
en UEFI ves o seguinte texto:
The selected boot device failed. Press <Enter> to Continue.
Ou Boot Device Not Found
Pero a carga no legado funciona para ti.
Entón, unha das opcións posibles é a ausencia dun ficheiro wdsmgfw.efi,
polo seguinte camiño: %WDSpath%Bootx64wdsmgfw.efi
Podes levalo aquí: C:WindowsSystem32RemInstbootx64wdsmgfw.efi
Ou, se por algún motivo falta este ficheiro, publiqueino en
Por esta solución, grazas rapaces de
Con este problema, matei a maior parte do tempo, porque. Pensei que o problema estaba nalgún lugar da configuración WDS ou DHCP.
Políticas configuradas engadindo clases de provedores para varias arquitecturas e configurando as opcións DHCP 060, 066, 067.
Arquitecturas en ASCII para configurar DHCP
PXEClient:Arch:00000 - BIOS/Legacy
PXEClient:Arch:00006 - UEFI x86
PXEClient:Arch:00007 - UEFI x64
Ademais, probei varias opcións para os ficheiros de arranque. .efi
- syslinux
- gruba 2
Tamén tentei atopar o problema no rexistro de eventos.
win + r -> eventvwr -> Журналы приложений и служб -> Microsoft -> Windows -> Deployment-Services-Diagnostics
Pero, como dixen anteriormente, o problema estaba no arquivo wdsmgfw.efi.
Ou o eliminei por accidente ou non o copiei durante a instalación
e configurando WDS.
Ben, imos comezar!
Instrución
Fase 1 - Verifique que WDS funciona
Colle calquera dispositivo ou máquina virtual con soporte para o arranque en modo UEFI a través da rede e tenta iniciar.
Deberías ter a seguinte imaxe:
Se é así, xenial, podes continuar.
Se non, mira o que escribín no prefacio.
Etapa 2: creación do ficheiro de arranque iPXE
Lanzamos Ubuntu previamente preparado, abrimos un terminal e pegamos esta liña:
git clone https://git.ipxe.org/ipxe.git ipxe
Aquí gustaríame facer unha pequena observación de que pode ter que engadir os paquetes necesarios para compilar C e C++ a Ubuntu.
Só os teño instalados.
Descargado? - Xenial!
Agora cómpre facer un ficheiro de configuración para a montaxe.
No terminal escribimos:
cd ipxe/src
gedit chain.ipxe
E pega o seguinte código neste ficheiro e despois gárdao:
#!ipxe
dhcp
chain http://%IP-address-your-IIS-server%/install.ipxe
Volvemos ao terminal e iniciamos a compilación:
make bin-x86_64-efi/ipxe.efi EMBED=chain.ipxe
Se todo está en orde, deberías obter a seguinte saída no terminal:
E arquivo ipxe.efi, polo camiño: ipxe/src/bin-x86_64-efi/ipxe.efi
Se por algún motivo non podes compilar por conta propia,
Adxunto o meu
Compilouse para arrincar desde http://192.168.0.100/install.ipxe
Iso é todo para Ubuntu.
Paso 3 - Engadir ipxe.efi a WDS
Collemos o ficheiro que recibimos na segunda etapa e copiamos ao longo do camiño:
%WDSpath%Bootx64%your-boot-folder%EFIBOOT
Despois de cambiarlle o nome a BOOTX64.EFI.
Non é necesario, é máis cómodo.
Despois lanzamos cmd en nome do administrador e escriba os seguintes comandos:
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
Isto establecerá que o ficheiro resultante se descargue a través de WDS.
Comprobamos a configuración:
wdsutil /get-server /Show:Config
Tamén copiei o ficheiro ipxe.efi, renomeei BOOTIA32.EFI e configurei o arranque para el, por se acaso. architecture:x86uefi
Pero en xeral, isto non ten sentido, porque. O ficheiro Bootmgfw.efi non é compatible con x86
Imos comprobar o que pasou.
Xenial, WDS envía o noso ficheiro para descargar e, á súa vez, busca a configuración ao longo do camiño: http://192.168.0.100/install.ipxe
Etapa 4 - Configuración do menú
Vaia ao cartafol raíz do seu sitio.
O valor predeterminado é: C:inetpubwwwroot
Crea un ficheiro de texto install.ipxe.
e configúrao segundo
Tamén hai unha lingua rusa
Disfrutei
Exemplo de configuración 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
Podes ler sobre a configuración para cargar winPE
Etapa 5 - Tipos MIME
Despois de crear o menú e engadir todos os ficheiros necesarios ao cartafol raíz de IIS,
cómpre darlles acceso.
Porque aínda que intentes descargar un ficheiro do navegador, recibirás un erro no seu enderezo: HTTP 404.3 - Not Found
.
Para iso, cómpre engadir tipos MIME no panel de control de IIS, de acordo
con extensións de ficheiro que descargará a través de http.
Non busquei que tipo MIME é o mellor para este propósito e preguntei application/octet-stream
, despois de que todo funcionou.
Para ficheiros que non teñen extensión, use un punto.
Aquí así:
Conclusión
En definitiva, temos a posibilidade de iniciar a través dunha rede local a través de UEFI.
Se fixemos todo correctamente, entón haberá algo así como este menú de selección de arranque:
Se preparou as ferramentas básicas e non se preocupará coa configuración, levará uns 10-20 minutos en implementar esta función.
Levoume 2 días laborables, porque. Tiven que buscar moito en Google.
Implementación exitosa!
Grazas pola túa atención e moitas grazas a aquelas persoas cuxos artigos me axudaron!
En Habré é:
Fonte: www.habr.com