Поделиться через


Настройка PXE-сервера для загрузки Windows PE

Относится к:

  • Windows 10

В этом пошаговом руководстве описано, как настроить PXE-сервер для загрузки Windows PE при запуске клиентского компьютера по сети. С помощью средств Windows PE и файла образа Windows 10 можно установить Windows 10 по сети.

Необходимые условия

  • Компьютер развертывания. Компьютер с пакетом средств оценки и развертывания Windows (Windows ADK) и надстройкой Windows PE с установленным ADK.
  • DHCP-сервер: DHCP-сервер или прокси-сервер DHCP, настроенный для отправки ответов на запросы PXE-клиентов.
  • PXE-сервер: сервер под управлением службы TFTP, на котором могут размещаться файлы загрузки Windows PE для скачивания клиентом.
  • Файловый сервер: сервер с общей сетевой папкой.

Все четыре перечисленных выше роли могут размещаться на одном компьютере, также можно выделить отдельный компьютер для каждой роли.

Шаг 1: скопируйте исходные файлы Windows PE

  1. На компьютере развертывания выберите Пуск и введите deployment.

  2. Щелкните правой кнопкой мыши элемент Среда средств развертывания и работы с образами и выберите команду Запуск от имени администратора. Будет запущен ярлык среды средств развертывания и создания образов, который открывает окно командной строки и автоматически задает переменные среды таким образом, чтобы они указывали на все необходимые средства.

  3. Чтобы скопировать базовые файлы Windows PE в новую папку, выполните следующую команду. Сценарий требует два аргумента: архитектуру оборудования и целевое расположение. Значение <архитектуры> может быть x86, amd64 или arm, а <назначение> может соответствовать пути к локальному каталогу. Если каталог еще не существует, он будет создан.

    copype.cmd <architecture> <destination>
    

    Например, следующая команда копирует файлы архитектуры amd64 в каталог C:\winpe_amd64:

    copype.cmd amd64 C:\winpe_amd64
    

    Сценарий создает структуру каталогов назначения и копирует все необходимые файлы для этой архитектуры. В предыдущем примере создаются следующие каталоги:

    C:\winpe_amd64
    C:\winpe_amd64\fwfiles
    C:\winpe_amd64\media
    C:\winpe_amd64\mount
    
  4. Подключите базовый образ Windows PE (winpe.wim) в каталог \mount с помощью средства DISM. При подключении файла образа его содержимое распаковывается в папку, что позволяет вносить изменения напрямую или с помощью таких программ, как DISM. См. приведенный ниже пример.

    dism.exe /mount-image /imagefile:c:\winpe_amd64\media\sources\boot.wim /index:1 /mountdir:C:\winpe_amd64\mount
    

    Убедитесь, что отображается сообщение Операция успешно завершена .

    Примечание.

    Чтобы просмотреть подключенные в данный момент образы, введите dism.exe /get-MountedWiminfo.

  5. Выполните сопоставление общего сетевого ресурса корневому каталогу TFTP на сервере PXE/TFTP и создайте папку \Boot. Обратитесь к документации сервера TFTP, чтобы определить корневой каталог сервера TFTP, а затем включите общий доступ к этой папке и убедитесь, что она доступна в сети. В следующем примере имя PXE-сервера — PXE-1, а корневой каталог TFTP используется по сетевому пути \\PXE-1\TFTPRoot:

    net.exe use y: \\PXE-1\TFTPRoot
    y:
    md Boot
    
  6. Скопируйте файлы загрузки PXE из подключенного каталога в папку \boot. Пример.

    copy c:\winpe_amd64\mount\windows\boot\pxe\*.* y:\Boot
    
  7. Скопируйте файл boot.sdi на сервер PXE/TFTP.

    copy C:\winpe_amd64\media\boot\boot.sdi y:\Boot
    
  8. Скопируйте загрузочный образ Windows PE (boot.wim) в папку \boot.

    copy C:\winpe_amd64\media\sources\boot.wim y:\Boot
    
  9. (Необязательно) Копирование шрифтов TrueType в папку \boot

    copy C:\winpe_amd64\media\Boot\Fonts y:\Boot\Fonts
    

Шаг 2: настройка параметров загрузки и копирование файла BCD

  1. Создайте хранилище BCD с помощью bcdedit.exe:

    bcdedit.exe /createstore c:\BCD
    
  2. Настройте параметры RAMDISK:

    bcdedit.exe /store c:\BCD /create {ramdiskoptions} /d "Ramdisk options"
    bcdedit.exe /store c:\BCD /set {ramdiskoptions} ramdisksdidevice boot
    bcdedit.exe /store c:\BCD /set {ramdiskoptions} ramdisksdipath \Boot\boot.sdi
    bcdedit.exe /store c:\BCD /create /d "winpe boot image" /application osloader
    

    Последняя команда возвращает идентификатор GUID, например:

    The entry {a4f89c62-2142-11e6-80b6-00155da04110} was successfully created. 
    

    Скопируйте этот идентификатор GUID для использования в следующих командах. В каждой приведенной команде замените "GUID1" своим идентификатором GUID.

  3. Создайте новую загрузочную запись приложения для образа Windows PE:

    bcdedit.exe /store c:\BCD /set {GUID1} device ramdisk=[boot]\Boot\boot.wim,{ramdiskoptions} 
    bcdedit.exe /store c:\BCD /set {GUID1} path \windows\system32\winload.exe 
    bcdedit.exe /store c:\BCD /set {GUID1} osdevice ramdisk=[boot]\Boot\boot.wim,{ramdiskoptions} 
    bcdedit.exe /store c:\BCD /set {GUID1} systemroot \windows
    bcdedit.exe /store c:\BCD /set {GUID1} detecthal Yes
    bcdedit.exe /store c:\BCD /set {GUID1} winpe Yes
    
  4. Настройте параметры BOOTMGR (не забудьте заменить GUID1 в третьей команде своим идентификатором GUID):

    bcdedit.exe /store c:\BCD /create {bootmgr} /d "boot manager"
    bcdedit.exe /store c:\BCD /set {bootmgr} timeout 30 
    bcdedit.exe /store c:\BCD -displayorder {GUID1} -addlast
    
  5. Скопируйте файл BCD на свой TFTP-сервер:

    copy c:\BCD \\PXE-1\TFTPRoot\Boot\BCD
    

Теперь ваш сервер PXE/TFTP настроен. Параметры BCD, настроенные с помощью команды bcdedit.exe /store <BCD location> /enum all. См. следующий пример. Примечание. Ваш идентификатор GUID будет отличаться от приведенного ниже.

C:\>bcdedit.exe /store C:\BCD /enum all
Windows Boot Manager
--------------------
identifier              {bootmgr}
description             boot manager
displayorder            {a4f89c62-2142-11e6-80b6-00155da04110}
timeout                 30

Windows Boot Loader
-------------------
identifier              {a4f89c62-2142-11e6-80b6-00155da04110}
device                  ramdisk=[boot]\Boot\boot.wim,{ramdiskoptions}
description             winpe boot image
osdevice                ramdisk=[boot]\Boot\boot.wim,{ramdiskoptions}
systemroot              \Windows
detecthal               Yes
winpe                   Yes

Setup Ramdisk Options
---------------------
identifier              {ramdiskoptions}
description             ramdisk options
ramdisksdidevice        boot
ramdisksdipath          \Boot\boot.sdi

Совет

Если вы запускаете процесс загрузки PXE, но получаете сообщение об ошибке Данные конфигурации загрузки для компьютера отсутствуют или содержат ошибку, убедитесь, что \boot каталог установлен в правильном корневом каталоге сервера TFTP. В используемом здесь примере имя этого каталога — TFTPRoot, но сервер TFTP может быть другим.

Сводка по процессу загрузки PXE

В следующем процессе приводится сводка загрузки PXE-клиента.

Примечание.

Ниже предполагается, что клиент и PXE-сервер находятся в одной сети, подсети или виртуальной локальной сети или что PXE-запросы были соответствующим образом перенаправлены с клиента на PXE-сервер с помощью вспомогательных IP-адресов, настроенных в маршрутизаторе или коммутаторе. Дополнительные сведения о вспомогательных ip-адресах см. в разделе Настройка маршрутизатора для перенаправления широковещательных передач.

  1. Клиент связывается с PXE-сервером. Если клиент находится в другой сети, подсети или виртуальной сети в качестве PXE-сервера, клиент направляется на PXE-сервер с помощью вспомогательных IP-адресов.

  2. PXE-сервер отправляет клиенту параметры DHCP 060 (идентификатор клиента PXEClient), 066 (имя узла загрузочного сервера) и 067 (имя загрузочного файла).

  3. Клиент скачивает boot\PXEboot.n12 с сервера TFTP на основе параметра DHCP 067 имя загрузочного файла, полученное от PXE-сервера.

  4. PXEboot.n12 немедленно начинает загрузку сети.

  5. Клиент скачивает boot\bootmgr.exe и boot\BCD файл с сервера TFTP.

    Примечание.

    Хранилище BCD должно находиться в каталоге \boot на сервере TFTP и иметь имя BCD.

  6. Bootmgr.exe считывает записи операционной системы BCD и загрузки, а также образ Среды предустановки boot\boot.sdi Windows (boot\boot.wim). Необязательные файлы, которые также можно скачать, включают шрифты TrueType (boot\Fonts\wgl4_boot.ttf) и файл состояния гибернации (\hiberfil.sys), если эти файлы присутствуют.

  7. Bootmgr.exe запускает Windows PE путем вызова winload.exe в образе Windows PE.

  8. Среда предустановки Windows загружается, открывается командная строка и wpeinit.exe выполняется для инициализации Среды предустановки Windows.

  9. Клиент Среды предустановки Windows предоставляет доступ к таким средствам, как imagex.exe, diskpart.exeи bcdboot.exe с помощью командной строки Windows PE. С помощью этих средств вместе с файлом образа Windows 10 конечный компьютер можно правильно отформатировать для загрузки полной Windows 10 операционной системы.

Краткие руководства по Windows PE