Pxe internal nic boot что это
Что такое сетевая загрузка (PXE) и как ей можно пользоваться
Оригинал: What Is Network Booting (PXE) and How Can You Use It?
Автор: Aviad Raviv
Дата публикации: 14 апреля 2011
Перевод: Н.Ромоданов
Дата перевода: март 2014 г.
Требовалось ли вам когда-либо устранять проблемы или диагностировать проблемный компьютер, а вы при этом забыли, куда положили компакт диск с утилитами? Мы покажем вам, как пользоваться сетевой загрузкой (PXE) и пакетом FOG для того, чтобы эта проблема ушла в прошлое.
Обзор технологии PXE
Когда используется подход PXE, процесс загрузки изменяется с обычного на следующий:
Примечание: В этом видео в качестве основы для сервера используется устаревший проект UDA, и аннотации были предназначены для того, чтобы объяснить, что в него были внесены самые новые (на тот момент) дополнения.
Это руководство будет первым из серии руководств, посвященных PXE. В настоящем руководстве мы заложим основы, на которые мы будет опираться в последующих статьях.
Рекомендации, допущения и предварительные требования
Установка — трудное начало с использованием системы FOG
FOG является свободным решением, предназначенным для клонирования компьютеров и имеющая открытый исходный код, которое было создано Чаком Суперски и Цзянь Чжаном ( Chuck Syperski и Jian Zhang ). FOG берет обычно используемое программное обеспечение (например, Apache, MySQL и tftpd-hpa упомянуть некоторые из них) и упаковывает их в виде свободного и самодостаточного решения PCLM (PC Lifecycle management), предназначенного для управления жизненным циклом ПК. Нужно упомянуть, что с помощью такого свободного решения PCLM можно с помощью единого центральный веб-интерфейса выполнять резервное копирование состояния компьютера путем создания его образа, развертывать программы и настройки (например, Firefox, Office, принтеры и т. д.), а также политики конфигурирования (например, настроек автоматического завершения сессии и экранной заставки).
Использование FOG в качестве основы для вашего сервера PXE является хорошим способом иметь в наличии все необходимые составляющие, например, TFTP и, если требуется, DHCP без необходимости устанавливать и настраивать их вручную, при одновременном предоставлении вам в качестве бонуса всех функций пакета FOG.
Изображение взято из FOG wiki.
Это все, что нужно сделать во время установки пакета FOG. Опять же, поскольку FOG представляет собой большую систему, ее использование не входит в круг рассмотрения данного руководства, и для того, чтобы вы могли лучше разобраться с возможностями системы FOG и с тем, как она может помочь вам управлять жизненным циклом ваших компьютеров-клиентов, мы призываем вас обратиться к вики-страницам с описанием этой системы.
Если все пройдет так, как надо, у вас должна быть возможность выполнить загрузку вашей клиентской машине в режиме PXE (обычно с помощью F12) и получить меню-приглашение, используемое в системе FOG по умолчанию.
Изображение получено с помощью Hotfortech.
Файлы и каталоги
Как отмечалось ранее, наша цель заключается в расширении возможности системы FOG и с этой целью мы должны добавить некоторые файлы и каталоги.
Создайте следующие подкаталоги:
Эти подкаталоги будут служить в качестве шаблонов для всех изображений, программ и конфигураций, которыми мы будем пользоваться для того, чтобы расширить систему FOG.
Настройте конфигурационный файл default, используемый по умолчанию
Мы создадим новое главное меню и поместим в свое собственное подменю все функции системы FOG.
Скопируйте конфигурационный файл /tftpboot/pxelinux.cfg/default в howtogeek/menus/fog.cfg.
Теперь отредактируйте содержимое исходного файла default, используемого по умолчанию:
Сделайте так, чтобы его содержимое выглядело следующим образом:
Когда мы закончим, эта конфигурация позволит вам получить следующие 3 подменю: Utilities (Утилиты), Manual FOGing (Ручное управление системой FOG), Linux stuff (Linux).
Создайте мастер-файл
Мастер-файл позволит делать глобальные изменения во внешнем виде меню без повторного ввода их в отдельном порядке снова и снова. Такие особенности, как фоновый рисунок, используемый по умолчанию, стили границ, позиции и т.д., все это будет объединено в этом файле master.cfg.
Сделайте так, чтобы его содержание было следующим:
В конфигурации, приведенной выше, будут созданы фиолетовые границы и выделение текста;, если вы хотите, чтобы внешний вид был другой, просто измените значения.
Чтобы задать фоновый рисунок, поместите картину в каталог /tftproot и укажите для MENU BACKGROUND относительный путь к рисунку (мы рекомендуем использовать изображения с разрешением 640*480). Например полный путь к рисунку, сконфигурированному выше, будет /tftproot/fog/bg.png.
Подключите подменю FOG к основному меню
Т.к. мы сделали простую копию оригинального конфигурационного файла в подкаталог меню (сохранив цветовую схему, тайм-ауты и прочее), то если вы теперь перейдете в это подменю из загруженного клиента PXE, оно будет работать, но вы не сможете вернуться в главное меню без перезагрузки машины.
Поэтому отредактируйте файл /tftpboot/howtogeek/menus/fog.cfg:
Добавьте следующую запись после записи «menu color title» и перед функциями FOG:
Создайте заготовки для подменю
Мы создали 4 подменю, три из которых будут нами заполнены. Для этого давайте создадим шаблон, которым мы будем пользоваться в дальнейшем.
Создайте файл шаблона:
Его содержимое должно быть следующим:
Давайте зададим заготовки для дополнительных подменю, которые нам потребуются в следующих статьях:
Вот и все, базовая компоновка теперь готова и теперь нам нужно будет ей пользоваться, что мы будем делать в следующих статьях. Поскольку эти статьи еще не опубликованы, мы рекомендуем ознакомиться с системой FOG, т.к. эта система сама по себе исключительно интересная.
Понимание загрузки PXE в диспетчере конфигурации
В этой статье описываются основные процессы загрузки среды выполнения пребута (PXE) в Диспетчер конфигурации, их работа и их межобъемлютная работа.
Оригинальная версия продукта: Configuration Manager (текущая ветвь), Microsoft System Center R2 Configuration Manager 2012, Microsoft System Center 2012
Исходный номер КБ: 4468601
Введение
Загрузка среды предварительного выполнения (PXE) в System Center 2012 года (ConfigMgr 2012 или ConfigMgr 2012 R2) и более поздних версиях позволяет администраторам легко получить доступ к среде предварительной Windows (WinPE) через сеть с помощью PXE. PXE — это отраслевый стандарт, созданный корпорацией Intel, который предоставляет службы предварительной загрузки в прошивке устройств, что позволяет устройствам загружать сетевые программы загрузки на клиентские компьютеры.
Диспетчер конфигурации использует роль Windows служб развертывания (WDS) через поставщика WDS PXE. В configMgr 2012 и более поздних версиях поставщик SMS PXE (SMSPXE) регистрируется в службе WDS и обеспечивает логику запросов клиентов PXE.
Перед устранением проблем, связанных с PXE в Configuration Manager, важно понять основные процессы, связанные с ними, их работу и их работу.
Во всех случаях в этом документе мы используем System Center 2012 configuration Manager R2 Cumulative Update 2 (ConfigMgr 2012 R2 CU2) и систему удаленного сайта, установленную на Windows Server 2012 с установленной ролью точки рассылки (DP).
Установка точеки службы PXE
Сначала мы посмотрим на процессы, связанные с установкой поставщика SMSPXE.
Установка инициировалась путем выбора опции Включить поддержку PXE для клиентов на вкладке PXE в свойствах точеки распределения. При включенной поддержке PXE создается SMS_SCI_SysResUse экземпляр класса.
В пространстве имен WMI (где RR2 — код сайта сайта) класс содержит все роли систем сайта на Root\SMS\Site_RR2 SMS_SCI_SYSResUse основном сервере сайта. Вы можете выполнить следующий запрос в WBEMTEST, чтобы определить все DPs на этом сервере сайта:
Изменение свойств этих ролей с помощью SDK изменит файл управления сайтом и настроит DP. Имя свойства является членом свойства реквизита и устанавливается до 1 при включенной IsPXE DP PXE.
Компонент мониторинга базы данных SMS обнаруживает изменения в таблицы и таблицы и сбрасывает DPNotificaiton DistributionPoints файлы в distmgr.box:
Компонент Диспетчер рассылки на основном сервере сайта затем инициирует конфигурацию удаленного DP:
В журнале поставщика DP SMS на удаленном DP можно увидеть следующую информацию об установке PXE, где изначально не найден ключ PxeInstalled реестра:
Установлен Распространяемый компонент Visual C++:
Фильтры чтения TFTP настроены:
Создается REMINST доля и настраивается WDS:
На удаленном DP теперь можно увидеть следующие значения, добавленные HKEY_LOCAL_MACHINE\Software\Microsoft\SMS\DP в:
PxeInstalled и IsPXE настроены на 1.
Если мы посмотрим на файловую систему удаленного DP, будет новый C:\SMS_DP$\sms\logs вход:
Теперь точка рассылки должна быть включена в PXE и готова принимать входящие запросы.
Добавление изображений загрузки в DP с поддержкой PXE
При настройке новой точки распространения с поддержкой PXE необходимо завершить дополнительные действия, чтобы включить полную функциональность. Одним из них является то, что необходимо распространить изображения загрузки x86 и x64 в новый DP с поддержкой PXE.
После этого диспетчер рассылки начнет обработку запроса и инициирует рассылку в удаленный DP:
Диспетчер переноса пакетов (DP удален) затем инициирует отправку контента:
Поставщик точеки рассылки SMS затем развертывает WIM в каталог удаленной установки:
SMSPXE открывает новое изображение:
Убедитесь, что эти изображения загрузки настроены для развертывания из DP с поддержкой PXE. Щелкните правой кнопкой мыши изображение загрузки и выберите источник данных свойств, а затем выберите Развертывание этого изображения загрузки из точки распространения с поддержкой > PXE.
Процесс загрузки PXE
Пример загрузки, описанный здесь, включает три машины: сервер DHCP, DP с поддержкой PXE и клиент (компьютер BIOS x64). Все они расположены в одной подсети.
Необходимо убедиться, что порты DHCP (67 и 68), TFTP (69) и BINL (4011) открыты между клиентом, сервером DHCP и включенной DP PXE.
В процессе загрузки PXE клиент должен сначала приобрести параметры TCP/IP и расположение сервера загрузки TFTP. После того как устройство включается и завершает POST, начинается процесс загрузки PXE (подсказывая с помощью меню выбора загрузки).
Первое, что делает прошивка PXE, — отправка DHCPDISCOVER (пакета UDP) для получения сведений о TCP/IP. Это включает список запросов параметров, а ниже приведен пример сетевого трассировки со списком параметров из пакета DHCPDISCOVER:
Клиент PXE затем идентифицирует поставщика и сведения, определенные для машины, чтобы запрашивать расположение и имя файла соответствующего файла изображений загрузки.
Затем сервер DHCP и DP с поддержкой PXE отправляют DHCPOFFER клиенту, содержащим все соответствующие параметры TCP/IP.
В приведенном ниже примере предложения DHCP в нем не содержится имя сервера или сведения о файле загрузки, так как это предложение с сервера DHCP, а не СДП с включенной поддержкой PXE.
Затем клиент отвечает DHCPREQUEST после выбора DHCPOFFER. Это содержит IP-адрес из выбранного предложения.
Сервер DHCP отвечает на DHCPREQUEST С помощью DHCPACK, который содержит те же сведения, что и DHCPOFFER. Имя хозяина сервера и имя файла загрузки здесь не предоставляются:
На данный момент у нас по-прежнему нет сведений о файле загрузки, однако теперь у клиента есть IP-адрес. Далее клиент PXE отправляет новый DHCPREQUEST в DP с поддержкой PXE после получения DHCPOFFER из предыдущей трансляции DHCPDISCOVER.
DP с поддержкой PXE отправляет DHCPACK, содержащий расположение BootFileName и программу загрузки сети WDS (NBP).
Загрузка файлов загрузки
После завершения беседы DHCP клиент запустит сеанс TFTP с запросом на чтение:
Сервер отвечает с помощью tsize, а затем blksize. Затем клиент будет передавать файл с сервера.
Размер этих блоков — blksize, и в этом случае он установлен до 1456 bytes. Blksize настраивается на Windows Server 2008 и более поздних версиях. См. в руб. Развертывание операционной системы по сети с помощью WDS сбой в Windows Server 2008 и в Windows Server 2008 R2.
Здесь можно увидеть конец беседы по DHCP и начало передачи TFTP:
NBPs являются как архитектурой, так и конкретными микропрограммами (BIOS или UEFI). На компьютерах BIOS NBP — это 16-битное приложение в реальном режиме, поэтому можно использовать один и тот же NBP для операционных систем на основе x86 и x64.
В нашем случае (машина BIOS x64) NBP расположен в следующем каталоге включенной DP PXE: \\remotedp\c$\RemoteInstall\SMSBoot\x64
Файлы выполняют следующие функции:
NBP загружает загрузчик операционной системы и файлы загрузки через TFTP, которые включают следующие:
RamDISK создается с помощью этих файлов и WIM-файла WinPE в памяти.
Клиентские сапоги из RAMDISK.
Загрузка WinPE
Чтобы получить доступ к этому входу WinPE, впейте командную подсказку на изображении загрузки. Для этого щелкните правой кнопкой мыши настройка свойств boot Image, а затем проверьте включить поддержку команды > > (только тестирование). Затем можно получить доступ к командной подсказке, нажав F8 в WinPE.
Вот начальный процесс оболочки загрузки TS:
После этого загрузочный ремень Task Sequence Manager:
После загрузки TSPXE она загружает переменные TS с помощью TFTP:
На этом этапе TSPXE находит пункт управления (MP) и скачивает политику перед тем, как представить пользовательский интерфейс для пользователя, чтобы выбрать необязательный последовательность задач:
Наконец, загружаются переменные коллекции и машины и активируется страница Welcome:
Дополнительные сведения
Дополнительные сведения о устранении неполадок с загрузкой PXE см. в следующих статьях:
Pxe internal nic boot что это
В этом небольшом посте я расскажу вам о практических способах реализации загрузки бездисковых устройств через PXE. Скажем так, что до определенного момента я совсем не интересовался этой проблемой и о PXE имел весьма посредственное представление, также, наверное как и у большинства. Т.е. все из нас знают, что в современных ПК есть возможность загрузки по сети, каждый видел в BIOS’е собственного ПК такую возможность (PXE Boot, LAN Boot), но мало кто использовал ее на практике. Реализацией этой возможности мы и займемся на практике, а также рассмотрим какое практическое применение в «домашних условиях» может иметь сетевая загрузка.
Наша «тестовая лаборатория» включает в себя:
Затем скачиваем заранее подготовленный архив pxe-mikrotik-disk1.rar и распаковываем его содержимое в корень флешки. Сделать это можно как в меню Files в web-интерфейсе Mikrotik’а, так и через FTP в Mikrotik, ну или просто вставив отформатированную USB Flash в ПК и распаковав в корень содержимое архива. В результате там должна получиться следующая структура файлов (смотреть скриншот справа).
Некоторых файлов, например kolibri.iso (образ Kolibri OS) в архиве не будет, т.к. их можно без труда найти и скачать в интернете, также в архиве не будет содержимого папки winpe (т.к. все эти файлы есть на любом установочном диске с Windows и включать их в состав архива я не вижу смысла). А вот на остальных мы остановимся подробнее.
Для чего они? После загрузки PXELinux на устройство начинается поиск дополнительных файлов и библиотек, т.е. устройство пытается подключиться к TFTP серверу, указанному в опциях отдаваемых DHCP сервером и запросить у него, например, файл ldlinux.c32, так вот TFTP сервер должен знать о реальном местоположении файла, чтобы отдать его, например в нашем случае он лежит в disk1/tftpboot/ldlinux.c32. Честно говоря я не экспериментировал, можно ли задать соответствие не отдельным файлам, а папкам или файлам по маскам, поэтому на всякий случай сделал правила для всех файлов на TFTP сервере. После того как мы прописали правила необходимо настроить наш DHCP сервер.
На этом приготовления к первому запуску закончены. Можно брать любой ПК и пробовать загрузиться по сети. Для меня наиболее простым решением было создание отдельной виртуальной машины в VirtualBox и настройка ее на загрузку по сети. В результате, если все сделано правильно, вы увидите вот такую вот симпатичную менюшку PXELinux:
Посмотрите как реализована в конфигурации (menu.cfg) загрузка того же Ubuntu LiveCD:
Здесь ядро vmlinuz.efi и рамдиск initrd.lz у нас грузятся по TFTP, а вот содержимое rootfs уже берется с NFS ресурса (благо Ubuntu так умеет). Порядок создания папки ubuntu16.04_live_amd64 на NFS ресурсе описан тут.
Ну или если вкратце, то я создал отдельную папку на WDMyCloud EX2, разрешил доступ к ней по NFS:
/nfs и просто скопировал необходимые файлы с LiveCD с Ubuntu в нее:
В результате содержимое папки ubuntu16.04_live_amd64 у нас полностью идентично корню LiveCD с Ubuntu:
Просто? Просто. Теперь пробуем загрузиться по PXE выбрав в меню LiveCD:
Как вы уже поняли, я далеко не гуру в Linux’е и по-сути как работает PXE я узнал только вчера. Поэтому в архиве по факту используется несколько загрузчиков: PXELinus (SysLinux) как основной, а из него уже можно загрузить iPXE или Grub4DOS, хотя по факту, в реальной жизни достаточно использовать что-то одно. Все это оставлено просто в качестве примера, чтобы было наглядно понятно как работать и с тем, и с другим, и с третьим. Так что, как говорится, «ногами не пинать», а ценные комментарии всегда приветствуются.
PXE — грузим всё! Осваиваем мультизагрузку по локальной сети
Содержание статьи
Сегодня автоматизируется все больше задач, для максимальной отдачи серверов все шире используют виртуализацию. Но устанавливать операционки по-прежнему приходится. Каждый делает это по-своему: у кого-то полные карманы различных образов на все случаи жизни, кто-то по старинке носит с собой «барсетку» с дисками, а то и две. Как правило, администраторы выполняют эту работу с невеликим удовольствием. Давай посмотрим, как сократить время на тривиальные задачи, как научить компьютеры устанавливать системы самостоятельно, вообще без участия админа, используя при этом только локальную сеть.
Итак, сегодня мы научимся: устанавливать Windows и Linux по сети, грузить небольшие ISO-образы, полезный софт (всяких там Касперских, Акронис, WinPE, мемтесты), разворачивать тонкие клиенты и рулить ими. Чтобы, например, бухгалтер, работающая с 1С по RDP, не прибила тебя за то, что у нее слетела винда, а отчет нужно было подготовить еще вчера. Или скупой начальник, который не хочет обновлять свой комп, восхитился твоим профессионализмом, когда увидит, как на стареньких компах летает Windows 8. В достижении наших коварных целей нам поможет сервер, предоставляющий загрузку по сети (PXE).
Xakep #201. Как стать киборгом
У любого системного администратора в заначке есть универсальный USB-диск для экстренной реанимации компьютера. Согласись, было бы куда лучше иметь ту же функциональность, используя одну лишь сетевую карту. Нельзя при этом не отметить возможность одновременной работы с несколькими узлами сразу. Итак, исходя из наших потребностей у нас есть два пути решения: использовать PXE или LTSP.
LTSP нам не очень подходит: он призван грузить по сети ОС, установленную на самом сервере, что позволяет использовать приложения сервера LTSP. Это не совсем то, что нам нужно. PXE — инструмент для загрузки компьютера по сети без использования локальных носителей данных, так же как и LTSP. PXE позволяет организовать мультизагрузочное меню загрузки, аналогичное универсальному «USB-реаниматору».
Главное меню загрузки PXE, графический режим
Что будем реализовывать?
Началось все с необходимости иметь под рукой инструмент для удаленной установки Ubuntu/Debian Server по сети, с возможностью загрузки Live CD маленькой системы, вроде SliTaz или Kolibri OS.
Как говорится, аппетит приходит во время еды: намеченное не успели реализовать, а к плану добавился еще ряд «хотелок». В итоге список получился весьма внушительным.
Собираем все в кучу и взлетаем
В качестве дистрибутива для сервера выбор пал на Ubuntu Server 14.04.2 LTS. Можно остановиться на любой другой ОС, разница будет только в синтаксисе. Итак, приступим. Нам потребуется TFTP, DHCP (необязательно установленный на этом же сервере, в роли DHCP-сервера может выступить роутер), сервис для организации сетевой файловой системы NFS. Рассматривать будем только те настройки, которые нас интересуют в рамках темы. Первым делом установим все необходимое, предварительно сделав все обновления:
Обрати внимание, параметр TFTP_DIRECTORY=»/var/lib/tftpboot» указывает место расположения корневого каталога TFTP-сервера. После сохранения перезапускаем удобным для себя способом:
Далее настроим DHCP-сервер. Приведу простую конфигурацию файла /etc/dhcp/dhcpd.conf:
Данная конфигурация говорит о том, что DHCP-сервер работает в локальной сети 192.168.0.0/24. Клиенту присваиваются адреса из диапазона 192.168.0.150–192.168.0.200, им будут присвоены параметры шлюза — 192.168.0.1, DNS-сервера — 192.168.0.2 и 192.168.0.5. Класс pxeclients, а именно параметр filename — это имя файла загрузчика, расположенного в корневой папке TFTP-сервера, в нашем случае /var/lib/tftpboot/pxelinux.0, на сервере с адресом 192.168.0.10.
Syslinux. Ставим загрузчик
В качестве загрузчика будем использовать Syslinux. Последнюю версию можно взять здесь. Распаковываем и кладем в /var/lib/tftpboot следующие файлы: ldlinux.c32, libcom32.c32, pxelinux.0 и lpxelinux.0 и каталог boot, в который складываем chain.c32, ldlinux.c32, libcom32.c32, libcom32.elf, libutil.c32, linux.c32, memdisk, menu.c32, vesamenu.c32 (menu.c32 — только текстовое меню, vesamenu.c32 позволяет украсить меню, например добавив фон). Файл меню загрузки по умолчанию должен находиться в /var/lib/tftpboot/pxelinux.cfg/default и иметь вид
На этом этапе загрузчик должен работать и иметь единственный пункт меню «Загрузка с первого жесткого диска». Далее необходимо создать подменю. Чтобы не путаться и не городить огромные файлы, рекомендую вынести подпункты в отдельные файлы меню, например так:
Все, что относится к разделу меню Install/Boot Linux, вынесем в отдельный файл /var/lib/tftpboot/linux. Аналогично выносятся другие пункты меню. Остальные параметры загрузки рассмотрим при добавлении каждого пункта/продукта.
Раздел Linux. Готовим на примере Ubuntu 14.04
Тонкие клиенты / Thinstation Linux
Acronis
Продукты Acronis загружаются аналогично инсталляторам Linux-систем. Скачал в Сети первый попавшийся образ Acronis, исключительно в научных целях. Распаковал. Нас интересуют только два каталога: ADD12 и ATI2015. Внутри каждого каталога видим по два файла с одинаковым именем и разным расширением. Это сделано для загрузки на 32-битных и x64-системах. Если открыть файл menu.lst того же образа, можно посмотреть, что чему соответствует. Для удобства складываем True Image и Disk Director аналогичным образом. Создаем папку acronis в рабочем каталоге ( /var/lib/tftpboot ). В него копируем ADD12 и ATI2015 со всем содержимым. Для удобства продукты Acronis выносим в отдельный раздел меню, так же как и раздел Linux. В pxelinux.cfg/default добавляем:
Файл acronis приводим к такому виду:
Windows PE
Заключение
На этом всё. В следующей статье мы научимся подготавливать и добавлять Windows-образы, сетевой установке в ручном и автоматическом режимах. Добавим Kaspersky Rescue v10, ERD Commander, именуемый MSDaRT. Разберемся, как запускать диагностические утилиты на примере memtest, а также покажем, как украсить меню загрузки.
Александр «Plus» Рак
Участник сообщества OmskLUG. Инженер отдела электронного взаимодействия МКУ «Информационно-технического управления».