Когда компьютер при включении показывает строку PXE-E61: Media test failure, check cable или зависает на экране PXE-M0F: Exiting PXE ROM, это означает, что машина попыталась загрузиться не с диска, а по сети — и не нашла PXE-сервер, который мог бы ей ответить. Такое сообщение появляется либо из-за неправильного порядка загрузки в BIOS/UEFI, либо потому, что в сети действительно должен работать сервер сетевой загрузки, но он недоступен или настроен с ошибкой.

PXE-сервер — это сервер, который позволяет компьютерам загружать операционную систему или установщик прямо по локальной сети, без диска, флешки или другого локального носителя. Технология PXE (Preboot eXecution Environment) встроена в сетевые адаптеры и прошивки материнских плат и активно используется в корпоративных сетях, учебных классах и сервисных центрах. В этой статье разберём, как устроен механизм сетевой загрузки, какие компоненты для него нужны и где он применяется на практике.

Что такое PXE и зачем нужна загрузка по сети

PXE — это стандарт, разработанный компанией Intel, который описывает процесс загрузки компьютера через сетевой интерфейс ещё до старта операционной системы. Прошивка сетевой карты содержит небольшой программный модуль, который умеет отправлять запросы в сеть, получать загрузочный файл и передавать ему управление. Пользователю при этом не нужен ни жёсткий диск с установленной ОС, ни загрузочная флешка.

Практическая ценность технологии проста: администратор может установить систему на десятки или сотни машин одновременно, не обходя каждую с флешкой. Бездисковые рабочие станции, тонкие клиенты, массовое развёртывание Windows или Linux, запуск диагностических утилит и антивирусных LiveCD — всё это типичные сценарии, где PXE-сервер экономит время и упрощает обслуживание парка техники.

Важно понимать, что PXE — это не сама операционная система и не программа, а именно механизм доставки загрузчика по сети. Что именно загрузится дальше — установщик ОС, Live-среда или меню диагностических инструментов — определяет администратор при настройке сервера.

💡

PXE — это стандарт сетевой загрузки: компьютер получает загрузчик по сети от специального сервера и стартует без локального диска или флешки.

Как работает PXE-загрузка: пошаговый принцип

Процесс сетевой загрузки проходит последовательно, и сбой на любом этапе приводит к характерной ошибке на экране. Понимание этой цепочки помогает быстро находить причину проблем. Вот что происходит после включения компьютера с активированным PXE:

  • 🔍 Клиент отправляет в сеть широковещательный DHCP-запрос с пометкой, что он ищет PXE-сервер.
  • 📡 DHCP-сервер выдаёт клиенту IP-адрес и дополнительные параметры — адрес TFTP-сервера и имя загрузочного файла.
  • 📥 Клиент подключается к TFTP-серверу и скачивает сетевой загрузчик, например pxelinux.0 или bootmgfw.efi для UEFI-систем.
  • 🚀 Загрузчик запускается, показывает меню (если оно настроено) и подтягивает по сети ядро ОС, установщик или Live-образ.

Обратите внимание на различие режимов. Старые системы с Legacy BIOS и современные UEFI требуют разных загрузочных файлов: если сервер отдаёт BIOS-загрузчик машине в режиме UEFI, загрузка завершится ошибкой. Это одна из самых частых причин неработающей PXE-загрузки в смешанных сетях.

⚠️ Внимание: если в сети уже работает DHCP-сервер (например, на роутере), запуск второго DHCP-сервера для PXE без настройки может нарушить раздачу адресов всем устройствам. Правильные варианты — настроить выдачу PXE-параметров на существующем DHCP или использовать режим proxyDHCP, который не раздаёт IP-адреса, а лишь дополняет ответ основного сервера.

Компоненты PXE-сервера

Функционально PXE-сервер — это не одна программа, а связка из нескольких служб, которые могут работать на одной машине или быть разнесены по разным узлам сети. Минимальный набор выглядит так:

  • 🌐 DHCP-сервер — выдаёт клиентам сетевые настройки и указывает, где искать загрузочный файл.
  • 📂 TFTP-сервер — простой файловый сервер, с которого клиент скачивает первичный загрузчик по протоколу TFTP.
  • 💿 Хранилище образов — файлы установщиков ОС, LiveCD, утилит; могут отдаваться по HTTP, NFS, SMB или тому же TFTP.
  • 🧭 Загрузчик и меню — например, Syslinux/PXELINUX, iPXE или GRUB, которые формируют меню выбора и передают управление нужному образу.

Существуют и готовые комплексные решения. В экосистеме Microsoft роль PXE-инфраструктуры выполняет служба WDS (Windows Deployment Services), а в мире Linux популярны связки dnsmasq + TFTP + Apache/Nginx или системы автоматизации развёртывания вроде Cobbler и Fog Project. Выбор зависит от масштаба сети и того, какие ОС планируется развёртывать.

📊 Для каких задач вы используете (или планируете использовать) PXE-загрузку?
Массовая установка ОС в организации
Запуск диагностических и Live-утилит
Бездисковые рабочие станции
Изучаю тему / только знакомлюсь

Где применяется PXE-сервер на практике

Корпоративный сектор — основная сфера применения технологии. Системные администраторы разворачивают образы Windows на новые рабочие станции, обновляют парк техники и восстанавливают системы после сбоев, не выходя из серверной. В крупных сетях PXE часто работает в связке с системами централизованного управления, где установка ОС — лишь первый шаг автоматического сценария.

Сервисные центры и компьютерные мастерские используют PXE иначе — как источник загрузочных инструментов. Удобно держать на одном сервере меню из антивирусных LiveCD, утилит тестирования памяти и дисков, средств сброса паролей и подключать к сети любой проблемный компьютер. Не нужно искать флешку и перезаписывать её под каждую задачу.

Ещё одно направление — бездисковые решения: интернет-кафе, учебные классы, информационные киоски. Терминалы без собственных накопителей загружают систему с сервера при каждом включении, что упрощает обслуживание и защищает от порчи системы пользователями. После перезагрузки машина всегда возвращается к эталонному состоянию.

💡

Даже в домашней сети PXE-сервер на простом Linux-мини-ПК может заменить собой целую коллекцию загрузочных флешек: добавьте в меню установщики нужных ОС и Live-утилиты, и любая машина в сети сможет загрузить их по кабелю.

Настройка PXE-сервера: общий порядок действий

Конкретные команды и пути различаются в зависимости от выбранного ПО и операционной системы сервера, поэтому ниже — универсальная логика настройки, которая остаётся неизменной в любой реализации. Точные параметры конфигурации сверяйте с официальной документацией выбранного решения.

Сначала подготовьте инфраструктуру: выделите для сервера статический IP-адрес и решите, как будет работать DHCP — либо вы расширяете существующий сервер PXE-опциями, либо поднимаете proxyDHCP. Затем установите TFTP-службу и разместите в её корневом каталоге загрузчики для нужных архитектур — отдельно для BIOS и для UEFI. После этого создайте файл меню загрузчика и положите рядом образы ОС и утилит. Финальный шаг — тестовая загрузка клиентской машины с включённым PXE в настройках BIOS/UEFI.

☑️ Проверка готовности PXE-инфраструктуры

Выполнено: 0 / 6

На клиентской стороне обычно достаточно войти в настройки BIOS/UEFI, включить опцию вроде PXE Boot или Network Boot и поставить сетевой адаптер первым в порядке загрузки. Названия пунктов меню зависят от производителя материнской платы или ноутбука, поэтому точный путь смотрите в инструкции к конкретной модели.

⚠️ Внимание: протокол TFTP не имеет шифрования и аутентификации — любой компьютер в сети может обратиться к PXE-серверу и получить от него файлы. Не размещайте в загрузочных образах пароли, ключи и конфиденциальные данные, а в критичных сетях изолируйте PXE в отдельном VLAN.

Типичные ошибки PXE-загрузки и их причины

Диагностика проблем с PXE удобна тем, что код ошибки обычно указывает на конкретный этап цепочки загрузки. Сопоставив сообщение на экране с этапом, можно сузить поиск до одной-двух служб.

Сообщение / симптомВероятная причинаЧто проверить
PXE-E51: No DHCP or proxyDHCP offersКлиент не получил ответ от DHCPРаботу DHCP-сервера, VLAN, доступность сервера в сети клиента
PXE-E32: TFTP open timeoutTFTP-сервер недоступенЗапущена ли TFTP-служба, не блокирует ли её файрвол
PXE-E61: Media test failureЗагрузочный файл не найден или не указанИмя файла в DHCP-опциях, наличие файла в корне TFTP
Загрузчик стартует, но меню не появляетсяОшибка в конфигурации меню или путях к образамСинтаксис файла меню, пути к ядру и образам
Работает на старых ПК, не работает на новых (или наоборот)Несовпадение режима BIOS/UEFI и типа загрузчикаРаздачу разных загрузчиков для разных архитектур

Отдельного упоминания заслуживает ситуация, когда PXE-загрузка появляется на обычном домашнем компьютере, хотя никто её не настраивал. Если домашний ПК внезапно уходит в PXE-загрузку, чаще всего это симптом того, что система перестала видеть загрузочный диск — проверьте порядок загрузки в BIOS/UEFI и состояние накопителя. Сам по себе PXE здесь ни при чём: прошивка просто перебирает доступные варианты загрузки по списку.

Что такое iPXE и чем он отличается от классического PXE

iPXE — это расширенный открытый сетевой загрузчик, который умеет гораздо больше базового PXE: загрузку по HTTP и HTTPS вместо медленного TFTP, сценарии с условиями и переменными, аутентификацию и работу через цепочку загрузчиков (chainloading). На практике часто используют гибрид: штатный PXE клиента загружает iPXE, а тот уже по быстрому протоколу стягивает меню и образы. Это заметно ускоряет загрузку больших установщиков и Live-систем.

PXE и безопасность: на что обратить внимание

Любая служба, которая отвечает на широковещательные запросы и отдаёт исполняемый код, требует осмотрительности. В изолированной лаборатории риски минимальны, но в общей сети организации PXE-инфраструктура может стать вектором атаки: злоумышленник, поднявший свой «ответчик», теоретически способен подсунуть клиентам вредоносный загрузчик.

Базовые меры защиты несложны. Ограничьте доступ к TFTP и хранилищу образов только нужными подсетями, не храните секреты внутри загрузочных образов и следите за тем, чтобы в сети не появлялись посторонние DHCP-серверы. В инфраструктурах с повышенными требованиями применяют Secure Boot совместно с подписанными загрузчиками — тогда клиент откажется выполнять код без доверенной цифровой подписи. Поддержка такой связки зависит от конкретного ПО и версий прошивок, поэтому перед внедрением сверяйтесь с документацией.

💡

PXE-сервер — это связка DHCP + TFTP + хранилища образов. Большинство проблем с сетевой загрузкой сводится к трём причинам: DHCP не отдал параметры, TFTP недоступен, загрузчик не соответствует режиму BIOS/UEFI клиента.

Часто задаваемые вопросы о PXE

Можно ли использовать PXE-сервер дома?

Да, технология не ограничена корпоративными сетями. Достаточно любого постоянно включённого устройства с Linux или Windows, на котором подняты DHCP (или proxyDHCP) и TFTP. Домашний PXE-сервер удобен для установки ОС без флешек и запуска диагностических Live-образов на любых компьютерах в локальной сети.

Почему компьютер пытается загрузиться по сети, хотя PXE никто не настраивал?

Возможная причина — сетевая загрузка стоит в списке приоритетов BIOS/UEFI, а локальный диск по какой-то причине не определяется как загрузочный. Проверьте порядок загрузки и состояние накопителя. Если диск виден в BIOS, но система с него не стартует, проблема, скорее всего, в загрузочной записи или самой ОС.

Работает ли PXE через Wi-Fi?

Классический PXE рассчитан на проводное Ethernet-подключение: поддержка беспроводной загрузки в прошивках сетевых адаптеров практически не встречается. Для загрузки по сети клиент должен быть подключён кабелем. Исключения возможны в специализированных решениях, но это не массовый сценарий.

Чем отличаются режимы BIOS и UEFI при PXE-загрузке?

Для каждого режима нужен свой загрузочный файл: Legacy BIOS использует загрузчики вроде pxelinux.0, а UEFI — EFI-приложения, например bootmgfw.efi или grubx64.efi. DHCP-сервер должен определять архитектуру клиента и отдавать соответствующий файл, иначе загрузка завершится ошибкой ещё на старте.

Насколько быстро работает загрузка по сети?

Скорость зависит от протокола и сети. Первичный загрузчик передаётся по TFTP, который не отличается производительностью, но файл этот небольшой. Объёмные образы лучше отдавать по HTTP, NFS или SMB — на гигабитной сети загрузка установщика или Live-системы занимает вполне приемлемое время. Связка PXE + iPXE с HTTP-загрузкой — распространённый способ ускорить процесс.