В этой статье мы рассмотрим, как установить Windows 10 или 11 по сети без использования загрузочной USB флешки (установочного DVD диска). Для загрузки компьютера по сети через PXE мы будем использовать небольшой Tiny PXE Server. Инструкция применима для установки Windows на устройствах как с UEFI, так и с BIOS прошивкой.
В корпоративных сетях для разливки образов Windows по сети используются более функциональные Windows Deployment Services (WDS) и Microsoft Deployment Toolkit (MDT). В этой статье мы покажем, как быстро запустить PXE сервер на любом имеющемся компьютере (будь то устройство с Windows или Linux) и использовать его для сетевой установки Windows на компьютеры в этой же LAN с помощью простых средств.
Нам понадобятся:
- Установочный ISO образ с Windows 10 или 11 (проще всего создать его с помощью Windows Media Creation Tool согласно инструкции https://winitpro.ru/index.php/2013/12/31/sozdaem-zagruzochnuyu-fleshku-s-windows-7-dlya-uefi-sistemy/ )
- Образ Windows PE — можно использовать свой образ WinPE, извлечь его из образа восстановления MS DART, получить оригинальный WinPE с помощью Windows Assessment and Deployment Kit (Windows ADK), или использовать готовый образ типа Hiren’s BootCD PE.
- Сервер Tiny PXE (http://reboot.pro/files/file/303-tiny-pxe-server/ )
Содержание:
- Создаем загрузочный образ Windows PE с помощью ADK
- Подготовка сервера сетевой установки TinyPXE
- Сетевая установка Windows 10 и 11 с PXE сервера
Создаем загрузочный образ Windows PE с помощью ADK
Скачайте Windows ADK для Windows 11 и Windows PE add-on for the Windows ADK по ссылкам на странице https://docs.microsoft.com/en-us/windows-hardware/get-started/adk-install .
При установке Windows ADK выберите минимальную установку Deployment Tools.
Затем аналогично установите Windows PE add-on for Windows ADK.
После окончания установки запустите Deployment and Imaging Tool из стартового меню Windows. Или запустите вручную команду:
"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\DandISetEnv.bat"
Теперь скопируйте файлы для среды WinPE в указанный каталог (создавать не нужно):
copype amd64 C:\tools\winpe
В данном случае я создаю файлы для среды WinPE x64. Можно использовать другие опции в зависимости от архитектуры: x86, arm или arm64.
Теперь можно создать загрузочный ISO образ с WinPE:
MakeWinPEMedia /ISO C:\tools\winpe c:\tools\WinPE.iso
Подготовка сервера сетевой установки TinyPXE
Теперь нужно настроить ваш PXE сервер:
- Распакуйте архив pxesrv.zip в каталог C:\tools\pxesrv;
- Перейдите в каталог C:\tools\pxesrv и создайте текстовый файл pxe_menu.txt со следующим содержимым:
#!ipxe set boot-url http://${dhcp-server} #================ Main Menu ================= menu iPXE boot menu item WinPEISO WindowsPE ISO choose target && goto ${target} #============ Main Menu Options ============= :WinPEISO sanboot ${boot-url}/iso/WinPE.iso boot
- Скопируйте полученный ранее файл WinPE.iso в каталог C:\tools\pxesrv\files\iso;
- Смонтируйте установочный ISO образ в виртуальный привод Windows и откройте общий сетевой доступ к нему (если хотите, можете открыть к нему анонимный доступ, но это не обязательно);
- Запустите файл pxesrv.exe с правами администратора;
- Включите опцию HTTPd;
- Если ваш компьютер сам будет раздавать IP адреса по DHCP (Tiny PXE это умеет), отключите опцию ProxyDHCP. Убедитесь, что в полях Option 54 DHCP Server и Next-Server указан IP адрес вашего компьютера. В поле IP Pool start указано начало диапазона DHCP, убедитесь что этот диапазон не занят в вашей сети;
- В разделе Boot File укажите ipxe.pxe (для загрузки на BIOS устройствах) или ipxe-x86_64.efi (для UEFI устройств);
- В поле Filename if user-class=gPXE or IPXE укажите имя файла меню, который вы создали ранее pxe_menu.txt;
- Запустите PXE сервер, нажав кнопку Online;
Итак, ваш PXE сервер запущен и готов к работе. Если в Windows включен брандмауэр (проще), отключите его или разрешите входящий трафик для процесса pxesrv.exe по протоколам DHCP, PXE, HTTP, TFTPS и SMB.
Сетевая установка Windows 10 и 11 с PXE сервера
Теперь вам нужно загрузить ваш компьютер, на который вы хотите установить Windows, с PXE сервера. Компьютер должен находится в той же локальной сети (VLAN), что и компьютер с PXE сервером.
В настройках BIOS/UEFI компьютера выберите в качестве первичного устройства загрузки PXE.
При запуске среды PXE компьютер обнаружит в сети DHCP сервер, получит IP адрес и получит доступных опции в меню iPXE.
Компьютер загрузится по сети в среде WinPE.
В моем случае при тестировании загрузки с PXE сервера виртуальной машины VMWare с UEFI прошивкой появилась ошибка:
Could not describe SAN devices: Operation not supported
Could not boot image: Operation not supported https://ipxe.org/err/3c2220
Как оказалось, в UEFI прошивки виртуальной машины на моем хосте VMware ESXi есть баг:
This error indicates that your UEFI firmware has a bug that prevents the installation of the iSCSI boot firmware table (iBFT). Switch to booting in “legacy” BIOS mode rather than UEFI mode.
Пришлось переключить ВМ в режим BIOS и запускать PXE сервер с опцией ipxe.pxe. После этого пошла нормальная установка Windows по сети.
Вам осталось подключить по SMB сетевой каталог, в котором хранится ваш установочный ISO образ Windows 11.
После инициализации среды командой
wpeinit
подключите ваш сетевой каталог, в который смонтирован установочный образ Windows. Выполните команду:
Net use E: \\192.168.13.202\e
Где
192.168.13.202
– имя компьютера на котором хранится установочный образ, а
E
– название общей папки.
Введите имя пользователя, с правами доступа к вашей Windows с PXE сервером.
Запустите знакомый мастер установки Windows.
Бывает же, что необходимо переустановить операционную систему на нетбук или компьютер без привода, когда под рукой нет флешки для записи на нее установочного дистрибутива, потому разработчики Windows предлагают несколько методов инсталлировать операционную систему:
- со съёмного носителя, в роли которого может выступать компакт-диск или флешка;
- с раздела локального жесткого диска, подключенного к целевому компьютеру;
- через сеть, используя удаленный компьютер, если BIOS поддерживает загрузку компьютера через сетевую карту.
Сегодня рассмотрим, как выполняется удаленная установка операционной системы через интернет (3-й метод) во всех подробностях.
Инсталляция операционной системы посредством пакета автоустановки
Установка Windows 7 по сети потребует:
- образа с устанавливаемой Windows;
- пакета автоматической инсталляции AIK, загруженного с сайта Microsoft;
- TFTP и DHCP сервера;
- утилиту для виртуализации образов UltraISO, Daemon Tools.
Windows AIK – разработанный Microsoft пакет инструментов для автоматической установки операционки, ее конфигурации, загрузки и развертывания по локальной сети. Также с его помощью можно выполнять прожиг образов посредством ImageX и конфигурировать их. Этот набор средств значительно упрощает работу системным администраторам и IT-специалистам процесс установки Windows и ее лицензий на многочисленных компьютерах.
Перейдем к подготовительному этапу.
- Монтируем образ Windows AIK, загруженный с сайта Microsoft, в виртуальный дисковод или распаковываем его при помощи архиватора в удобную директорию в корне диска.
- Запускаем файл «StartCD.exe», если автозапуск дисков отключен или не сработал.
- Проводим инсталляцию AIK, кликнув «Установка Windows AIK».
- Затем выполняем предлагаемые инструкции. Сложностей или нюансов в процессе установки нет.
- Запускаем командную строку средств развертывания с администраторскими привилегиями.
- Прописываем «copype.cmd x86 d:\winpe» для 32-хбитной ОС или «copype.cmd amd64 d:\winpe» для х
- После этого появится каталог «WinPE».
- Выполняем команду:
- Изменяем файл «mount\windows\system32\startnet.cmd», внеся в него следующую информацию.
Для редактирования открываем документ через текстовый редактор.
- Вводим:
в поисковую строку «Пуска».
- Создаем папку boot в любом корневом каталоге и расшариваем ее через «Свойства» папки (в примере это d:\winpe).
- Вводим следующие команды в консоли для копирования файлов.
- Размонтируем образ.
- Открываем текстовый редактор и вводим в него расположенный ниже код.
- Сохраняем файл под именем createbcd.cmd в каталоге winpe.
- Выполняем его через консоль, введя:
Выполняем настройку серверов
DHCP поставляет данные удаленному ПК о свободном IP, маске подсети и имени скачиваемого файла с адресом TFTP. Задачей последнего является реализация передачи данных между сервером и компьютером, на который устанавливаем Windows.
- Загружаем миниатюрную утилиту TFTPD32 с сайта разработчика.
- Запускаем программу с администраторскими привилегиями через контекстное меню исполняемого файла.
- В настройках оставляем флажки только возле TFTP и DNS-серверов.
- На вкладке TFTP-сервер задаем путь к каталогу, где находится папка «boot».
- В DHCP вводим IP-адрес удаленного ПК, расположенного в вашей локальной сети.
- Вводим наш IP в строку DNS Server.
- Остальные параметры вводим как на скриншоте.
Задаем путь к файлу pxe загрузчика. Это будет pxe boot.n12 или pxe boot.com. Подробнее о PXE читайте в окончании статьи.
- Заходим в «Центр управления сетями» и выполняем настройку локальной сети.
- Вызываем «Свойства» активного соединения, если на ПК используется не одна сетевая карта.
- Заходим в «Свойства» протокола TCP\IP 4-й версии.
- Переносим переключатель в положение «Использовать следующий IP» и вводим адрес сервера.
- Вводим адрес сервера DNS и закрываем все окна с сохранением результатов.
Сервер для инсталляции Windows через интернет настроен.
Переключаемся к ПК, на котором будем осуществлять инсталляцию операционной системы посредством использования локальной сети в качестве интерфейса для передачи установочных файлов на целевой компьютер.
- Вызываем меню BIOS на компьютере посредством клавиши F2, Del или иной, полученной из руководства или сообщения на экране загрузки BIOS.
- Посещаем пункт базовой системы ввода/вывода, отвечающий за встроенное в материнскую плату оборудование.
- Активизируем опцию, отвечающую за загрузку компьютера посредством сетевой карты – переводим в положение «Enable».
- Возвращаемся на уровень выше и переходим в меню, отвечающее за настройку приоритета загрузочных устройств.
- В качестве первоприоритетного устройства выбираем сетевую карту – LAN или Legasy LAN.
- Выходим с БИОСА при помощи клавиши F10 и подтверждаем внесение изменений.
- Перезагружаем компьютер, после чего он начнет загрузку с локальной сети.
- После перезапуска компьютера сетевая карта получает IP-адрес, используя DHCP.
Далее начинается загрузка начальных файлов для инсталляции Windows.
Внизу, под центральной надписью, отображается адрес ПК, откуда производится загрузка установочный файлов.
Затем появится окно командной строки.
При правильной настройке будет выполнено автоматическое монтирование диска с установочными файлами и запустится процесс установки Windows. Если все верно, появляется окно с выбором языка, региональных стандартов и раскладки.
Далее следует обычная инсталляция Windows, потому подробно останавливаться на процессе ее установки не будем – уже были статьи с подробными инструкциями и руководствами.
Что собой представляет Preboot eXecution Environment
PXE – специальная среда, разработанная с целью реализации механизма загрузки ПК, используя сетевой адаптер, не требуя локального хранилища информации (оптического диска, флешки). В ней используется загрузчик PXE Linux. Именно для PXE мы настраивали TFTP-сервер.
Исполняемый код среды зашит в ПЗУ сетевого адаптера, он получает исполняемый файл по TFTP-протоколу из сети и передает ему управление системой.
Загрузчик pxe boot.n12 отличается от pxe boot.com требованием нажать функциональную клавишу F12 для запуска, в нашем случае, инсталляции. Учитывая, что выполнение этого действия в нашем случае не принципиально, будем использовать pxe boot.n12.
Установка Windows 10 по сети — отличное решение, если нужно инсталлировать систему на несколько компьютеров. Выполнять ее просто так бессмысленно — только потратите время. А вот если речь идёт о подготовке компьютеров небольшой организации, то это самый эффективный способ установки. Смотрите также: как переустановить Windows 10.
Установка TFTP-сервера
Первым делом нужно установить стороннее решение для удалённой установки Windows 10 по сети. Мы остановимся на бесплатной утилите Tftp, которая распространяется в редакциях для 32х и 64х систем. Последние версии программы только 64-битные, так что если на машине стоит Windows x32, то придётся скачивать более ранние версии.
Нам нужна ссылка direct link for Service Edition — кликаем по ней, чтобы загрузить установочный файл.
Загружаем утилиту для создания сервера установки
Tftp устанавливается как обычная программа. Есть лишь два важных замечания. Первое — ставить утилиту нужно только на системный раздел. Второе — при установке должны быть отмечены следующие компоненты:
Без этих компонентов настроить удалённую установку Windows 10 не получится
После установки потребуется предварительная настройка программы. Запускаем её, нажимаем на кнопку Settings и на вкладке GLOBAL оставляем отмеченными только пункты TFTP Server и DHCP Server.
Устанавливаем глобальные параметры программы
Затем переходим на вкладку TFTP. Здесь нужно указать Base Directory — каталог, в котором хранятся установочные файлы Windows 10. Пока он должен быть пустым, чуть позже мы подготовим для него файлы. Кроме того, необходимо отметить пункт Bind TFTP to this address и выбрать в списке IP-адрес машины, с которой будет производиться инсталляция. Последнее действие на этой вкладке — включение опции Allow «\» As Virtual root.
Настраиваем параметры TFTP для работы удалённого сервера
Последняя вкладка, которая нас интересует, — DHCP. Если в локальной сети уже есть такой тип сервера, то можно отказаться от его настройки в интерфейсе программы. Если сервера нет, то в строке IP pool start address впишите стартовое значение для диапазона выдаваемых адресов, а в поле Size of pool — доступное количество позиций. Вам также нужно заполнить следующие поля:
- Def. router (Opt 3) — IP-адрес маршрутизатора.
- Mask (Opt 1) — маска шлюза.
- DNS (Opt 6) — адрес DNS-сервера.
Такие настройки должны быть выставлены на вкладке DHCP
Для сохранения конфигурации необходимо нажать на кнопку «Ок». Для применения изменений программа перезапустится. При следующем включении она будет уже правильно настроена. Для исключения появления ошибок нужно добавить её в список исключений в брандмауэре Windows.
Для установки Windows 10 по сети нужно подготовить файлы дистрибутива, так как при выполнении этой операции используется другое окружение.
- Открываем каталог, который мы указали как Base Directory в настройках Tftp.
- Создаём папку с именем системы — например, Win10_Setupx64.
- Помещаем внутрь папки каталог sources дистрибутива Windows 10. Для перемещения можно использовать программу 7-Zip.
Перемещаем установочные файлы в предварительно подготовленную папку
Если вы планируете использовать ещё и дистрибутив 32-битной версии, то для него нужно создать отдельную папку по аналогии с x64. Нельзя использовать один каталог для хранения файлов разной разрядности.
Следующий шаг — подготовка образа загрузчика. Это файл boot.wim в корне папки sources. Нам нужно навесить на него сетевые драйверы и скрипт для работы с ними. Самый простой способ получить пакет драйверов — использовать бесплатную и портативную программу Snappy Driver Installer. Её версию нужно выбирать в зависимости от разрядности текущей системы.
- Запускаем Snappy Driver Installer.
- Нажимаем на кнопку «Доступны обновления».
- Выбираем «Только сетевые» и нажимаем «Ок».
Нам нужно скачать только сетевые драйверы, а не все доступные обновления
После завершения загрузки в корневом каталоге Snappy Driver Installer появится папка Drivers. Рекомендуется провести сортировку ПО по разрядности и разместить драйверы в разных папках — для x32 и x64.
После сортировки драйверов должно получиться две папки
Следующий шаг — подготовка образа Windows. Открываем корневой каталог TFTP-сервера. Мы назвали его Win10_Setupx64. Создаём в нём папку Image и помещаем внутри неё файл boot.wim подходящей разрядности.
Добавляем образ загрузчика в подготовленную структуру папок
Для модификации образа мы будем использовать консоль PowerShell. Её нужно найти через встроенный поиск Windows 10 и запустить с правами администратора. Затем нужно выполнить ряд команд.
dism.exe /get-imageinfo /imagefile: *адрес папки Image*\boot.wim
dism.exe /mount-wim /wimfile: *адрес папки Image*\boot.wim /index:2 /mountdir: *адрес каталога, куда будет смонтирован образ*
dism.exe /image: *адрес каталога со смонтированным образом* /Add-Driver /Driver:*адрес папки с драйверпаком нужной разрядности* /Recurse
Монтируем образ через консоль PowerShell
Затем нужно свернуть PowerShell и создать в любом месте текстовый файл с именем winpeshl. Внутри него должны быть следующие строки:
[LaunchApps]
init.cmd
Так должен выглядеть файл winpeshl
После сохранения файла необходимо изменить его разрешение с TXT на INI. Теперь нужно скопировать его и вставить внутрь образа boot.wim, который мы только что смонтировали через PowerShell. Файл должен располагаться внутри папки Windows/System32.
Подготовленный файл мы размещаем внутри смонтированного образа
Внутри Windows/System32 должен быть ещё один текстовый файл. Создайте его, дайте имя init и вставьте внутрь скрипт:
:::::::::::::::::::::::::::::::::::::::
:: INIT SCRIPT ::
:::::::::::::::::::::::::::::::::::::::
@echo off
title INIT NETWORK SETUP
color 37
cls
:: INIT Variables
set netpath=\\192.168.0.254\share\Setup_Win10x86 :: здесь должен быть сетевой путь до папки содержащей установочные файлы
set user=guest
set password=guest
:: WPEINIT start
echo Start wpeinit.exe…
wpeinit
echo.
:: Mount Net Drive
echo Mount net drive N:\ …
net use N: %netpath% /user:%user% %password%
IF %ERRORLEVEL% GEQ 1 goto NET_ERROR
echo Drive mounted!
echo.
:: Run Windows Setup
color 27
echo Starting Windows Setup…
pushd N:\sources
setup.exe
goto SUCCESS
:NET_ERROR
color 47
cls
echo ERROR: Cant mount net drive. Check network status!
echo Check network connections, or access to network share folder…
echo.
cmd
:SUCCESS
После сохранения расширение файла нужно изменить с TXT на CMD, а затем переместить его в каталог Windows/System32 внутри смонтированного на сервере образа. После добавления всех необходимых файлов мы возвращаемся к консоли PowerShell и выполняем последнюю команду:
dism.exe /unmount-wim /mountdir:*адрес каталога со смонтированным образом* /commit
На этом подготовка образа Windows завершена. Мы прошли примерно половину пути к установке Windows 10 через сеть.
Установка загрузчика Windows на сервер
На этом этапе мы будем настраивать сетевой загрузчик для установки Windows 10 по сети. Снова используем программу 7-zip:
- Открываем через 7-zip образ boot.wim с подходящей разрядностью.
- Переходим в папку с номером в имени, которая имеет самый большой размер.
Это самая большая папка, поэтому выбираем её
- Открываем каталог Windows/Boot/PXE.
- Находим и копируем файлы pxeboot.n12 и bootmgr.exe в корень сервера TFTP.
- Создаём рядом с ними каталог с именем Boot.
В корне TFTP должны быть такие файлы и папки
- Возвращаемся к открытой программе 7-zip, переходим по пути Boot\DVD\PCAT.
- Копируем файлы BCD, boot.sdi, папку ru_RU и вставляем их в каталог Boot, который только что создали в корне TFTP.
В Boot нужно также добавить папку Fonts и файл memtest.exe. Их местоположение внутри образа может меняться, но обычно их можно найти в каталоге boot.wim\2\Windows\PCAT.
Нам нужно собрать все необходимые файлы в одном каталоге
После копирования файлов нужно настроить BCD — конфигурационный файл загрузчика Windows. Для этого мы будем использовать утилиту BOOTICE.
- Запускаем версию программы с подходящей разрядностью.
- На вкладке BCD отмечаем опцию Other BCD file.
- В окне проводника указываем файл, который расположен по адресу *корневой каталог TFTP*/Boot.
- Нажимаем на кнопку Easy Mode.
Сначала нужно настроить программу в режиме Easy Mode
- В блоке Global Settings изменяем значение Timeout(s) с 30 на 0.
- В Boot language устанавливаем значение ru_RU и отмечаем пункты «Display boot menu» и «No integrity checks».
- На вкладке Options в поле OS Title напишем Windows 10 x64.
- В блоке Boot device пропишем адреса WIM-образа и SDI-файла.
- Нажмем Save current system и Close для сохранения конфигурации и закрытия окна.
Настраиваем параметры Easy Mode
- В окне утилиты выбираем Professional Mode.
- Раскрываем меню Application objects и выделяем левой кнопкой мышки название системы, которое только что вписали в настройки.
- В правой части окна кликаем правой кнопкой мыши и выбираем значение New element.
- Задаем элементу имя DisableIntegrityChecks и жмем «ОК».
- В окне устанавливаем параметры True/Yes и жмем «ОК».
В режиме Professional Mode нам нужно создать новый параметр
После выполнения этих действий утилиту можно закрывать, больше она не пригодится.
Предоставление общего доступа
Прежде чем устанавливать Windows 10 по сети, нужно предоставить общий доступ к папке сервера TFTP. См. также: настраиваем общий доступ в Windows 10.
- Открываем свойства папки и переходим на вкладку «Доступ».
- Нажимаем на кнопку «Расширенная настройка».
- Отмечаем пункт «Открыть общий доступ для этой папки», задаём имя и нажимаем на кнопку «Разрешения».
Права доступа для сервера мы будем менять через расширенные настройки
- Нажимаем на кнопку «Добавить».
- В нижнем поле пишем «СЕТЬ» и нажимаем «Проверить имена», а затем «ОК».
Имя «СЕТЬ» обязательно должно быть написано большими буквами
- Выделяем новую группу «Сеть» и устанавливаем для неё параметры чтения и записи.
- Нажимаем «ОК» и сохраняем конфигурацию.
После этого нужно будет ещё зайти в раздел «Сеть и интернет» в «Параметрах» и включить следующие опции:
- Сетевое обнаружение.
- Общий доступ к файлам и принтерам.
- Общий доступ с парольной защитой.
Настройка общего доступа в «Параметрах» Windows 10
Перезагрузка обычно не требуется, изменения сразу вступают в силу.
Процесс установки Windows 10 по сети
Сам процесс установки практически ничем не отличается от стандартной инсталляции Windows 10 с помощью загрузочного носителя. После добавления подготовленного дистрибутива на сервер нужно включить машину без операционной системы, дождаться завершения загрузки файлов, ввести необходимые данные для подключения к серверу и выбрать ОС, которую нужно установить. В нашем случае это Windows 10 x64.
Сам процесс установки будет таким же, как и при использовании загрузочного носителя
Дальше — стандартная установка с выбором системного диска, региона, языка, часового пояса, принятием соглашений и настройкой параметров конфиденциальности.
На этом инструкция подошла к концу. Желаем удачи!
Post Views: 11 862
1. Устанавливаем TFTP и DHCP сервера для организации сетевой загрузки.
2. Устанавливаем загрузчик Windows Boot Manager на TFTP сервер.
3. Создаем общий сетевой ресурс на котором будут размещаться установочные файлы. Общий доступ может быть организован по протоколу CIFS или SMB.
4. Размещение установочных файлов необходимых версий Windows на общем сетевом ресурсе.
5. Размещаем среду предустановки на TFTP сервере, и выполняем ее настройку.
6. Настраиваем меню загрузчика.
7. Проверяем итоговый результат.
Первые два пункта представлены с ссылками, так как данные темы уже рассматривались ранее. Рекомендую ознакомиться с ними.
Общий сетевой ресурс
Нам необходимо создать папку, и организовать к ней общий доступ по сети. Сделать это можно в свойствах выбранного вами каталога, на вкладке Доступ.
Для организации общего доступа по отдельной учетной записи, потребуется создать отдельного пользователя. Сделать это можно в оснастке Локальные пользователи и группы (Win+R > lusrmgr.msc > OK).
На вкладке Безопасность, в свойствах папки с общим доступом, нужно добавить созданного пользователя с выставлением ему прав на чтение и выполнение.
Общая папка настроена.
Копирование дистрибутивов в общую папку
В качестве установочной версии ОС Windows мною была выбрана Windows 10 в 32 и 64 битном исполнении. То есть это два дистрибутива. Создадим для каждого, отдельную папку в директории с общим доступом.
В моем случае это папки Setup_Win10x64 и Setup_Win10x86.
Теперь скопируем папку sources каждого из дистрибутивов в созданные для них директории.
Установочные файлы готовы к использованию.
Среда предустановки
В качестве среды предустановки, будет использована та, что идет в комплекте с установочным дистрибутивом. Располагается она в папке sources и представлена образом boot.wim.
Текущий файл boot.wim (обоих дистрибутивов), настроен на запуск установки Windows с диска на котором он расположен. Наша задача, настроить данный образ так, чтобы процесс установки запускался из сети.
Изменения которые необходимо будет сделать, это — интегрировать в образ boot.wim сетевые драйвера, и внедрить скрипт установки.
Сетевые драйвера необходимы для того, чтобы загруженная WinPE могла корректно определить сетевой адаптер(ы) компьютера на котором она будет запущена.
Скрипт установки, будет выполнять подключение к ранее созданному сетевому ресурсу, с установочными файлами, и запускать процесс установки ОС Windows.
Так как у нас два дистрибутива, x86 и x64, среду предустановки каждого, нужно настраивать по отдельности. Данный процесс одинаков, поэтому я приведу пример настройки только для boot.wim x86 версии, с необходимыми поправками там, где это необходимо для boot.wim x64 версии.
Подготовка сетевых драйверов
Каких то особенных наборов драйверов, или специальных сборок не потребуется. Для создания своего пака драйверов можно поступить так.
Первым делом скачиваем установщик драйверов SDI (Snappy
Driver Installer). Нужна именно Lite версия. Страница скачивания https://sdi-tool.org/download/.
Распаковываем скачанный архив с SDI Lite.
Запускаем исполняемый файл SDI_Rxxxx.exe (32-битная версия) или SDI_x64_Rxxxx.exe (64-битная), в зависимости от разрядности вашей ОС. Или скрипт SDI_auto.bat, он сам определит разрядность запустит подходящий исполняемый файл. После запуска, скачиваем только сетевые драйверпаки.
По завершении загрузки, закрываем SDI и переходим в папку drivers. В ней будут располагаться скачанные архивы с драйверами.
Распакуем в отдельные директории следующие драйверпаки — DP_LAN_Intel_18054.7z, DP_LAN_Others_18053.7z, DP_LAN_Realtek-NT_18055.7z.
В каждой распакованной директории с драйверами, присутствуют поддиректории вида *x86* и *x64*.
Это разделение драйверов по разрядности. Тут возникает одна проблема. К примеру, для WinPE x86 интеграция x64 драйверов будет избыточным и нецелесообразным действием. Поэтому удалим все поддиректории с именем *x64* (для WinPE x64 будет ровно противоположенное действие). Для этой цели удобнее всего воспользоваться каким-нибудь файловым менеджером (Far Manager, Total Commander, Double Commander).
Драйвера сетевых адаптеров для WinPE x86 готовы. Теперь имеющиеся директории можно перенести в отдельную папку, например LAN_x86. Думаю вам не составит труда самостоятельно организовать папку с драйверами LAN_x64.
Размещаем среду предустановки на TFTP
Корень TFTP сервера на данный момент выглядит так (конкретно, это состояние на момент завершения предыдущей статьи).
Расположим в папке Image образы boot_x86.wim и boot_x64.wim (то есть это обычные boot.wim, взятые из папки sources, скопированные и переименнованные). Данные образы, это не измененные, образы сред предустановок соответствующих дистрибутивов ОС Windows.
Общая файловая структура TFTP на следующем скриншоте.
Интеграция сетевых драйверов в среду предустановки
Перед интеграцией драйверов в образ boot_x86.wim, его предварительно необходимо смонтировать. Делается это с помощью команд dism.exe /get-imageinfo /imagefile:D:\TFTP\Image\boot_x86.wim (получение информации о указном *.wim образе, чтобы определить индекс монтируемого содержимого)
и dism.exe /mount-wim /wimfile:D:\TFTP\Image\boot_x86.wim /index:2 /mountdir:E:\mnt (монтирование указанного *.wim образа к указанному каталогу).
После того как образ смонтиорован, можно приступить к интеграции в него ранее подготовленных драйверов. Выполним для этого команду dism.exe /image:E:\mnt /Add-Driver /Driver:C:\Users\x7z3\Desktop\SDI\drivers\LAN_x86 /Recurse.
Этим действием мы интегрировали сетевые драйвера из директории LAN_x86 в образ boot_x86.wim. Для образа boot_x64.wim все будет идентично, разница будет лишь в имени подключаемого файла и директории с драйверами.
Интеграция скрипта запуска установки ОС
Скрипт установки — это обычный командный файл с расширением *.cmd. Его задача, подключить сетевой диск с установочными файлами и запустить установщик ОС.
Для того чтобы организовать запуск скрипта, во время загрузки среды предустановки, нам потребуется создать файл winpeshl.ini (текстовый файл) в директории E:\mnt\Windows\System32 с следующим содержимым:
[LaunchApps]
init.cmd
Файл winpeshl.ini, является конфигурационным файлом для среды предустановки. Он позволяет задать программу(ы) выполняемые вместо стандартной оболочки. Подробнее о нем можно почитать тут.
Теперь создадим сам скрипт установки init.cmd (текстовый файл) в той же директории. Исходный текст init.cmd:
:::::::::::::::::::::::::::::::::::::::
:: INIT SCRIPT ::
:::::::::::::::::::::::::::::::::::::::
@echo off
title INIT NETWORK SETUP
color 37
cls
:: INIT Variables
:: Тут мы указываем сетевой путь до папки содержащей установочные файлы
set netpath=\\192.168.0.254\share\Setup_Win10x86
:: Имя пользователя для подключения к вышеуказанной сетевой папке
set user=guest
:: Пароль от указанной выше учетной записи
set password=guest
:: WPEINIT start
echo Start wpeinit.exe...
wpeinit
echo.
:: Mount Net Drive
echo Mount net drive N:\ ...
net use N: %netpath% /user:%user% %password%
IF %ERRORLEVEL% GEQ 1 goto NET_ERROR
echo Drive mounted!
echo.
:: Run Windows Setup
color 27
echo Starting Windwos Setup...
pushd N:\sources
setup.exe
goto SUCCESS
:NET_ERROR
color 47
cls
echo ERROR: Cant mount net drive. Check network status!
echo Check network connections, or access to network share folder...
echo.
cmd
:SUCCESS
:: Тут, можно добавить команды которые выполнятся после первого этапа установки,
:: то есть в момент, когда установщик скажет что, будет выполнена перезагрузка.
::
:: К примеру, вы можете организовать копирование необходимых установочных программ с
:: сетевого ресурса в свежераспакованную систему...
Учитывайте что установочный скрипт для x64 системы, будет содержать немного другой путь до установочных файлов.
Все необходимое сделано. Осталось только отключить подключенный образ boot_x86.wim с сохранением выполненных изменений. Делается это командой dism.exe /unmount-wim /mountdir:E:\mnt /commit. Предварительно, ОБЯЗАТЕЛЬНО закройте открытые папки или файлы в смонтированном каталоге.
Все вышеописанное нужно будет проделать и для файла образа boot_x64.wim.
Настройка меню загрузчика
Подробно описывать создание меню я не буду. Данный процесс уже подробно рассматривался в этой статье. Приведу лишь скриншоты программы BOOTICE с настройками меню.
Параметры для загрузки boot_x86.wim.
Параметры для загрузки boot_x64.wim.
Проверка итогового результата
Теперь все готово. Осталось только проверить результат проделанной работы. Проверять будем как всегда в виртуальной машине VirtualBox.
Загруженное меню. В шапке видно что загрузчик загружен по сетию
Загрузка образа boot_x86.wim в оперативную память компьютера.
Выполнение интегрированного нами скрипта.
Уведомление скриптом об успешности подключения сетевого ресурса.
Запущенный скриптом установщик ОС Windows.
На этом скриншоте видно, что установка идет реально по сети.
Итог
Технология сетевой установки ОС проста и доступна. Минимум необходимых инструментов. Все что нужно, это установочный образ Windows 10 (нет необходимости скачивать WAIK или ADK). Все описанное выше будет работать для ОС Windows начиная с 7-ки и выше (7, 8.1, 10).
Надеюсь данный материал будет полезен для вас 😉.
Установка ОС Windows на компьютер – это довольно скучная и муторная задача. Необходимо найти внешний носитель для образа, а после часами сидеть у монитора и наблюдать за процессом установки. Особенно это утомляет, когда необходимо установить один образ на несколько компьютеров. Лучшее решение в таком случае – это установка Windows 10 удаленно по сети. Расскажем о том, как это сделать и не ошибиться.
Установка и настройка TFTP-сервера
TFTP – это специальный сетевой протокол, который позволяет загружать и запускать файлы на бездисковой рабочей машине с выходом в интернет. Для рядовых пользователей он не представляет большого интереса, ведь отличается ненадежностью и ограниченностью функционала, в отличие от того же FTP. Впрочем, для удаленной установки образа – самое то.
Для правильной настройки рекомендуем следовать инструкциям ниже:
- Скачайте бесплатную утилиту TFTP с официального сайта. Необходимо выбрать именно Service Edition. Также учитывайте, что последние версии поддерживают только 64-битные ОС. Для 32 бит стоит выбрать более раннюю версию. Не беспокойтесь, алгоритм установки у них схож.
- Установите утилиту как обычную программу. Стандартное окно мастера установки в автоматическом режиме выполнит установку. С вашей стороны необходимо указать системный диск для установки программы, а также установить все галочки (кроме «Start service monitoring») на последнем этапе установки.
- Включите TFTP и DHCP серверы. Для этого откройте программу и перейдите в раздел «Settings». В новом окне перейдите в подраздел «GLOBAL». Поставьте две галочки напротив соответствующих пунктов.
- Настройте DHCP. Впрочем, этот пункт можно пропустить, если в вашей сети уже автоматически настроен этот протокол. В противном случае вам необходимо вписать в поле «IP pool start address» стартовое значение для IP адресов, а в «Size of pool» – максимальное количество адресов. Также необходимо установить настройки в блоке «DHCP Options» в соответствии с параметрами роутера.
- Укажите путь до дистрибутива в подразделе «TFTP». Дополнительно поставьте галочку напротив «Allow as virtual root».
На этом настройка TFTP завершена.
Подготовка дистрибутива
Процесс создания загрузчика по сети немного отличается от обычной установки через внешний носитель. В последнем случае достаточно загрузить образ на флешку, например, через UltraISO или Rufus. Первым делом нам нужно открыть содержимое ISO-файла установщика. Это можно сделать как с помощью специализированной программы, так и простым архиватором, например, 7z или WinRAR. Более подробный алгоритм:
- В папке, которую вы указали, создайте директорию с названием будущей ОС. Нет строгих стандартов, выбирайте название на свой вкус.
- С помощью архиватора раскройте содержимое установщика.
- Скопируйте оттуда директорию «Sources» в недавно созданную папку.
- Загрузите сетевые драйверы. Скачать «дрова» можно вручную по отдельности. Но в этом случае лучше использовать Snappy Driver Installer, который предоставляет доступ ко всем необходимым драйверам x32 (x86) и x При выборе компонентов сделайте активными только сетевые драйверы.
- Скопируйте из образа файл boot.wim. Дальше необходимо модифицировать файл под новые условия. Сделать это можно через команды Powershell. Поочередно введите следующие команды:
dism.exe /get-imageinfo /imagefile: путь_до_файла\boot.wim
dism.exe /mount-wim /wimfile: путь_до_файла\boot.wim /index:2 /mountdir: *адрес каталога, в который будет смонтирован образ*.
dism.exe /image: *адрес каталога со смонтированным образом* /Add-Driver /Driver:*адрес каталога с драйверами* /Recurse
- Создайте файл с названием winpeshl.ini. Введите в него следующие строки:
[LaunchApps]
init.cmd
- Скопируйте этот файл в директорию system32 внутри установочного каталога.
- Создайте файл сценариев командной строки init и введите в него следующий текст:
@echo off
title INIT NETWORK SETUP
color 37
cls
:: INIT Variables
set netpath=\\192.168.0.254\share\Setup_Win10x86 (путь до папки содержащей установочные файлы)
set user=guest
set password=guest
:: WPEINIT start
wpeinit
:: Mount Net Drive
net use N: %netpath% /user:%user% %password%
IF %ERRORLEVEL% GEQ 1 goto NET_ERROR
:: Run Windows Setup
color 27
echo Starting Windows Setup…
pushd N:\sources
setup.exe
goto SUCCESS
:NET_ERROR
cls
cmd
:SUCCESS
Готово, идем дальше.
Установка загрузчика на сервер
Пожалуй, самый запутанный этап. Алгоритм действий:
- Откройте файл boot.wim в архиваторе, например, 7z.
- Находим самую большую папку и открываем ее.
- Находим файлы pxeboot.n12 и bootmgr.exe, а после копируем их в каталог с окружением установщика, то есть в папку, которую вы недавно создали для установочных файлов.
- Создайте каталог Boot, а после скопируйте в него BCD, memtest.exe, boot.sdi и папки ru_RU и fonts, которые находятся в boot.wim.
- С помощью утилиты BOOTICE настройте файл BCD. Процесс может отличаться, в зависимости от ваших целей.
Не перепутайте и не забудьте скопировать все папки и файлы, ведь они играют важную роль в установке.
Общий доступ
Необходимо открыть доступ к папкам не только внутри системы, но и по локальной сети. Для этого выполните следующие действия:
- Откройте свойства папки с установщиком. Сделать это можно нажатием ПКМ по папке и выбором пункта «Свойства».
- В разделе «Доступ» откройте подраздел «Расширенная настройка».
- В открывшемся окне вводим слово «Сеть» и кликаем «Проверить имена».
Подтверждаем действия нажатием на кнопку «Ок».
Установка ОС
И, наконец, установка, которая ничем не отличается от обычной. Запустите «пустой» компьютер и дождитесь загрузки всех файлов. Следуйте инструкциям мастера установки. Главное, чтобы устройство имело постоянный доступ к сети, иначе оно может не загрузить все важные компоненты.
Благодарим за прочтение.