Я хотел бы установить ОС Windows на машину UEFI через сервер Linux PXE. Я могу установить ОС Windows на устаревшую машину, направив ее на загрузку с memdisk и iso-образа winpe. Я понимаю, что memdisk предназначен исключительно для устаревших машин и не может использоваться для систем UEFI.
Стоит ли загружать альтернативу загрузочному файлу memdisk ?.
Примечание. Сервер, который я использую для развертывания, не является сервером iPXE.
Если вы можете использовать wimboot
с iPXE.org, вы можете это сделать. Я провел такой эксперимент с Windows PE 3.1.
Вы должны сконфигурировать сервер PXE для первоначальной отправки любого загрузчика PXE, который может загружать ядра Linux. Затем вы настроите его для загрузки wimboot
вместо ядра Linux. Вместо файла initrd у вас будет cpio
архив, содержащий с установочного носителя Windows:
Я сделал небольшой Makefile, который предполагает, что эти файлы помещены в ./build
подкаталог относительно расположения самого Makefile:
all: cpio
cpio: build/BCD build/boot.sdi build/wgl4_boot.ttf build/boot.wim
cd build; /bin/ls | cpio -o -H newc > ../winpe32-3.1.cpio
mount:
wimmountrw build/boot.wim /mnt
umount:
wimunmount --commit /mnt
Если у вас есть инструменты wimlib от wimlib.net ты можешь использовать make mount
и make umount
для редактирования содержимого boot.wim
(например, для добавления драйверов или инструментов) перед запуском make
или make cpio
для создания файла "initrd" .cpio.
Насколько я знаю, специального "iPXE server" нет. В принципе, любой сервер PXE может отправить загрузчик iPXE клиенту PXE. Для PXE-сервера загрузчик iPXE - это просто файл, который должен быть доступен серверу с помощью TFTP, по точному пути, указанному в параметрах DHCP.
Если вы используете мой "wimboot
без iPXE ", предупреждаем: загрузка всего boot.wim
через TFTP медленный. Отправка загрузчика iPXE сначала клиенту, а затем обработка по HTTP выполняется намного быстрее.