Сетевая загрузка PXE на основе TFTPD32

 

Описание настройки собственного PXE сервера на основе TFTPD32 для загрузки WinPE или BartPE.

PXE и процесс загрузки по сети

        Стандарт PXE (Preboot Execution Environment) позволяет превратить сетевую карту в одно из устройств, с которого может загрузиться компьютер. Разработку данного стандарта начала компания Intel, еще 1999 году, а потом к разработке присоединились такие гиганты компьютерной индустрии, как 3Com, HP, Dell, Compaq. Стандарт прижился. И сейчас, пожалуй, не возможно, найти современной сетевой платы без поддержки PXE.
Конечно для того, чтобы компьютер смог загрузиться по сети одного PXE не достаточно. Нужно еще наличие в сети серверов TFTP и DHCP.

        Процесс загрузки по сети можно упрощенно описать примерно так.

При включении компьютера, начинает работать PXE загрузчик, который находится в памяти (boot ROM) сетевого адаптера. Сетевая карта отправляет запрос к серверу DHCP для получения IP адреса. Получив запрос, DHCP сообщает сетевой плате IP адрес, маску сети, адрес TFTP сервера и имя загрузочного файла. После обработке полученных данных PXE обращается к серверу TFTP и загружает файл. Получив файл, PXE прекращает свою работу и передает управление загруженной программе.

Подготовка файлов

        Создадим каталог для сетевой установки C:\PXE. Внутри создадим каталог, например WinPE.
        Сетевая загрузка WinPE делится на два этапа. На первом этапе происходит загрузка файлов по протоколу TFTP. А на втором этапе файлы загружаются по протоколу CIFS (старое название SMB). Протокол CIFS более известен, как общий доступ к файлам и принтерам сети.
Поэтому для второго этапа загрузки нужно:

  • Сделать каталог C:\PXE доступным по сети (расшарить) для группы "Everyone (Все)" с правами только чтения.
  • Также необходимо убедиться, что учетная запись "Guest (Гость)" активирована.

Для этого нажимаем, правую клавишу мыши на "My Computer (Мой компьютер)" и выбираем "Manage (Управление)". Раскрываем "System Tools (Служебные программы)", "Local Users and Groups (Локальные пользователи и группы)". Выбираем "Users (Пользователи)". В правой части экрана нажимаем правую клавишу мыши на "Guest (Гость)" и выбираем "Properties (Свойства)". В появившемся окне убираем флажок с "Account is disabled (Отключить учетную запись)" и нажимаем кнопку OK

  • Если директория C:\PXE\WinPE находится на разделе с файловой системой NTFS, то необходимо в свойствах этого каталога в "Security (Безопасность)" также добавить группу "Everyone (Все)". Этой группе необходимо разрешить чтение.
  • Также следует убедиться, что не запрещен доступ пользователя "Guest (Гость)" по сети в групповой политике.

Для этого нажимаем "Start (Пуск)", выбираем "Control Panel (Панель управление)", "Administrative Tools (Администрирование)". В появившемся окне выбираем "Local Security Policy (Локальная политика безопасности)". После загрузки оснастки "Local Security Settings (Локальные параметры безопасности)", разворачиваем "Local Policies (Локальные политики)" и выбираем "User Rights Assignments (Назначение прав пользователя)". В правой части нажимаем дважды левую клавишу мыши на "Deny access to this computer from the network (Отказ в доступе к компьютеру по сети)". В появившемся списке отмечаем "Guest (Гость)" и нажимаем кнопку "Remove (Удалить)". Для подтверждения изменений нажимаем кнопку удалить.

Подготовка сборки WinPE для загрузки по сети

         Копируем содержимое сборки(каталоги I386 и Programs) в каталог C:\PXE\WinPE
         Копируем из каталога C:\PXE\WinPE\I386 файл ntdetect.com в каталог C:\PXE
         Разархивируем файлы (из дистрибутива Windows XP/Windows 2003) setupldr.ex_ и startrom.n1_ в каталог C:\PXE. Сделать это можно с помощью архиватора 7-zip или команд:
expand D:\WINXP\I386\setupldr.ex_ С:\PXE\WinPE\ntldr
expand D:\WINXP\I386\startrom.n1_ С:\PXE\WinPE\startrom.n12
Следует переименовать startrom.n12 в startrom.0
При работе с локализированной сборкой рекомендуется копировать файл bootfont.bin из каталога C:\PXE\WinPE в C:\PXE.
Распаковываем каталоги tftpd32, infparser и файл binlsrv.exe в C:\PXE

Настройка TFTP сервера (TFTPD32)

          Сначала для удобства следует отключить не нужные сервисы, оставив только "TFTP Server" и "DHCP Server". Затем следует указать каталог, в котором TFTP сервер будет искать файлы. За это отвечает параметр "Base Directory". В нашем случае это C:\PXE. Также следует включить "Option negotiation", "Allow '\' As virtual root" и "Translate Unix file names". Остальные опции выключены.

Настройке DHCP сервера (TFTPD32)

          Для загрузки по сети DHCP должен присвоить IP адрес и указать имя загружаемого файла.
Предположим на компьютере, который выступает в роли PXE сервера, присвоен IP адрес 192.168.0.1 с маской сети 255.255.255.0. Параметр "IP Pool starting address" указывает начальный IP адрес, с которого DHCP будет начинаться выдавать адреса. Установим значение в 192.168.0.10. Параметр "Size of pool" указывает, сколько компьютеров могут получить IP адреса от TFTPD32. Установим значение в 10. Параметр "Boot File" указывает, какой файл необходимо загрузить. В нашем случае это startrom.0. Если на компьютере несколько сетевых подключений, тогда рекомендуется включить опцию "Bind DHCP to this address" и указать наш IP 192.168.0.1.

Настройка программы RIS-LINUX от Sherpya

         Во время загрузки WinPE должна получить информацию, какой драйвер для сетевой платы она должна использовать. Эту информация предоставляет служба BINL. В качестве службы BINL будет использоватся программа ris-linux. Эта программа написана на языке Python, но мы будем использовать портированную под Windows версию.
Для работы BINL требуется создать базу данных сетевых драйверов следующей командой:
C:\PXE\infparser\infparser.exe C:\PXE\WinPE\I386\inf

Подготовка файла winnt.sif

         Для загрузки WinPE также потребуется файл C:\PXE\winnt.sif такого содержимого:

[SetupData]
OsLoadOptions = "/noguiboot /fastdetect /minint"
SetupSourceDevice = "\Device\LanmanRedirector\192.168.0.1\PXE\WinPE"
[UserData]
ComputerName = *

Завершение

         Чтобы наконец заработал наш PXE сервер, достаточно запустить binlsrv.exe и перезапустить tftpd32.

В ходе написание статьи были использованы материалы с сайта ]]>http://unattendedxp.com/]]>, а также собственные наработки. Вроде ничего не забыл. Сильно не пинайте.

Комментарии

Решил разобраться с  PXE загрузкой, нашёл эту статью.... должен отметить более адекватных статей  не встретил, но и здесь беда.
Начало было хорошее и подробное, но с момента "Подготовка сборки WinPE для загрузки по сети" ... я перестал понимать...
Прошу разъяснить :
» Где мы берём эти файлы? "Копируем содержимое сборки(каталоги I386 и Programs) в каталог C:\PXE\WinPE"
- я скачал  несколько сборок в формате *.iso на дисках таких файлов и каталогов нет...
- я скачал два архива которые упомянуты под статьёй "pxe_0.7z"  и "wimpxe.7z". В этих архиват также  нет указаныйх архивов. 

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

Заранее спасибо.

Аватар пользователя yurkesha

Эта статья описывает процесс загрузки так называемой "россыпи" то есть WinPE которые по структуре эквивалентны обычному дистрибу WinXP.
Соответственно для загрузки подойдут любые сборки - главное учитывать что i386 может быть переименована в другое имя - какое можно увидеть в setupldr.bin.
Ну и если сборки WIM или с поддержкой мультиядерности то потребуются нестандартные файлы pxe

---
упс..

Аватар пользователя serg kaac

Если есть желание разобраться с тем как работает PXE стоит обратить внимание на цикл статей
Универсальный сервер сетевой загрузки и установки.

]]>http://www.winpe.ru/content/universalnyy_server_setevoy_zagruzki_i_ustanovki_nachalo]]>

Я там все очень подробно описывал. Если что не понятно - велко :)

Жизнь бьёт ключом! И все больше по голове!>

Страницы

Похожие материалы по этой теме на сайте

Содержимое
Norton Ghost - для "Сервера загрузки и установки"

Norton Ghost - это простая, но мощная утилита для создания образов как целых дисков, так и отдельных разделов диска.

Сетевая загрузка PXE на основе TFTPD32 (WIM)

Описание настройки собственного PXE сервера на основе TFTPD32 для загрузки WinPE или BartPE.(WIM Загрузка)

Ieshua's Live DVD/USB 2.13

- В качестве оболочки(shell) используется стандартный Explorer(XPE) и BsExplorer для ERD Commander
- Загрузчик производит автоопределение HAL и ядра

Универсальный сервер сетевой загрузки и установки. Файлы.

       В связи с тем, что было много вопросов и обращений по поводу ]]>...

Создание загрузочного USB-драйва на базе Windows Vista (WinPE 2.0)

      Windows Preinstallation Environment (PE) 2.0 - это, так сказать, урезанная версия Windows.

Система для обслуживания компьютеров и серверов в локальной сети предприятия

Причины создания, краткое описание, общий принцип работы

(y)pe_hybrid

Гибридная совмещенная CD и WIM загрузки в одном флаконе.
Используется общая папка программ.
Комплект DOS-загрузки.
Поставка - RAR архив с добавлением информация для восстановления.

Remote Desktop

Плагин для Remote Desktop