Что такое сетевая загрузка (PXE) и как ее использовать?
Вам когда-нибудь приходилось устранять неполадки или диагностировать проблемный компьютер, и вы забыли, где находится компакт-диск с утилитой? Мы покажем вам, как использовать сетевую загрузку (PXE) с FOG, чтобы эта проблема ушла в прошлое.
Изображение от h.koppdelaney
Обзор PXE
PXE (Pre eXecution Environment), ласково произносится Pixie (как в сказочной пыли), представляет собой метод загрузки конечного компьютера (клиента) с использованием только его сетевой карты. Этот метод загрузки был создан еще в 1999 году, и, пока компьютер подключен к сети (и поддерживает этот стандарт), можно обойти обычную процедуру загрузки (IE Power on -> BIOS -> HD / CD) и сделайте некоторые изящные вещи, начиная с поиска неисправностей, заканчивая использованием liveOS и даже перезаписывая компьютер…. но мы опережаем себя, давайте вернемся к началу.
При использовании PXE процесс загрузки изменяется с обычного порядка на:
Включение -> BIOS -> PXE-стек сетевой карты -> Программа сетевой загрузки (NBP), загруженная с помощью TFTP с сервера в оперативную память клиента -> Ответственность NBP за выполнение следующего шага (a.k.a. загрузка 2-го этапа).
Используя NBP «PXElinux», можно настроить сервер для более чем одной загрузочной программы PXE для наших клиентов. В некотором смысле, это секретный компонент, который позволяет нам выполнять все вышеперечисленное, а затем и некоторые. Для более подробного объяснения всего процесса, его истории и некоторых параметров инфраструктуры, которые он и gPXE (который является более развитым кузеном), смотрите эту лекцию на YouTube от их разработчиков. Кроме того, ниже приведено видео установки 2008 года, в которой быстро рассматриваются некоторые возможности загрузки..
Примечание. В этом видео устаревший проект UDA используется в качестве основы для сервера, а аннотации были направлены на то, чтобы объяснить другу (в то время) недавние добавления к нему.
Цель
Это руководство будет первым из серии руководств о PXEing. В этом руководстве мы заложим основы, на которых мы будем основываться в будущих статьях.
Рекомендации, предположения и предпосылки
- Клиентский компьютер, с которым вы тестируете, поддерживает PXE-загрузку, и вы знаете, как его включить.
- Это руководство было написано и протестировано с использованием Debian Squeeze, Ubuntu server 9.10 и Linux Mint10. Поэтому предполагается, что у вас есть система на основе Debian для работы с.
- Возможно, вы захотите взглянуть на «Как настроить программный RAID для простого файлового сервера» и «Как настроить агрегацию сетевых ссылок (802.3ad)», потому что требования к пропускной способности диска и сети для этого типа серверов могут быть очень высокими и очень быстрыми. Настоятельно рекомендуется строить на основе сервера с высокой отказоустойчивостью для его сетевой и дисковой подсистем..
- Вы увидите, что я использую VIM в качестве программы-редактора, просто потому, что я к этому привык… вы можете использовать любой другой редактор, который вам нравится.
Установка - Тяжелый подъем с помощью FOG
FOG - это бесплатное решение для клонирования компьютеров с открытым исходным кодом, созданное * Chuck Syperski и Jian Zhang. FOG берет регулярно доступное программное обеспечение (например, Apache, MySQL и tftpd-hpa) и упаковывает их в бесплатное и производительное решение для управления жизненным циклом ПК (PCLM). Используя этот бесплатный PCLM, можно создавать резервные копии состояния компьютера, создавая его изображения, развертывать программы и настройки (IE Firefox, Office, принтеры и т. Д.) И политики конфигурации (параметры автоматического выхода из системы IE и заставки), а также несколько других, через один центральный веб-интерфейс.
Заметка: Интервью с Чаком и Цзянем о FOG доступно в Tightwad Tech.
Использование FOG в качестве основы для вашего PXE-сервера - отличный способ получить все необходимые компоненты, такие как TFTP и, при необходимости, DHCP на месте без необходимости устанавливать и настраивать их вручную, предоставляя вам все функциональные возможности FOG как бонус.
Поскольку наша цель состоит в том, чтобы добавить функциональность в эту и без того великолепную систему, мы не будем подробно рассказывать о том, как использовать сам FOG, а также о процедуре его установки. Вики FOG, с их письменными и видео практическими рекомендациями, достаточно надежны, чтобы получить подробную информацию, если вы хотите разобраться с ней. Обобщенные шаги:
-
sudo mkdir -p / opt / fog-setup
cd / opt / fog-setup - Загрузите последний пакет FOG из sourceforge в каталог, созданный на предыдущем шаге.
- Распакуйте пакет и начните установку.
sudo tar -xvzf туман *
CD туман *
CD bin
sudo ./installfog.sh - Программа установки предложит вам несколько раз:
1. Для какой версии Linux вы хотите запустить установку? - 2 (опять же, при условии, что используется система на основе Debian)
2. Какой тип установки вы хотели бы сделать? [N] - введите
3. Какой IP-адрес будет использоваться этим сервером FOG? [Сервер-IP-обнаружен-на-eth0] - Войти.
4. Хотели бы вы настроить адрес маршрутизатора для DHCP-сервера? [Y / n] - введите.
5. Хотели бы вы настроить DNS-адрес для DHCP-сервера и загрузочного образа клиента? [Y / n] - введите.
6. Хотели бы вы изменить сетевой интерфейс по умолчанию с eth0? Если вы не уверены, выберите Нет. [Y / N] - Enter.
7. Хотели бы вы использовать сервер FOG для службы dhcp? [Y / n] - * Enter
8. Эта версия FOG имеет поддержку интернационализации, вы хотите установить дополнительные языковые пакеты? [Да / Нет] - Нет.
9. Вы уверены, что хотите продолжить (Да / Нет) - Да.
10. Подтвердите и следуйте инструкциям на экране для «MySQL«.
11. Оставь MySQL пароль пуст для корневого аккаунта.
12. Хотели бы вы уведомить группу FOG об этой установке? - Y (рекомендуется)
Изображение из FOG вики. - Перейдите на адрес Fog в вашем браузере и следуйте инструкциям на экране.
*Заметка: Если вы делаете НЕ есть другой DHCP или что он не настроен для обработки PXE. Если вы хотите настроить существующий DHCP, см. Настройка DHCP для PXE.
Что касается установки FOG, то так и должно быть. Опять же, хотя FOG - отличная система, ее использование не является целью данного руководства, и мы рекомендуем вам перейти к ее вики, чтобы вы могли лучше понять возможности FOG и то, как она может помочь вам управлять своими клиентами. жизненный цикл.
Если все в порядке, вы сможете запустить PXE на своей клиентской машине (обычно F12) и получить доступ к стандартному меню FOG..
Изображение снято Hotfortech.
В качестве быстрого «вкуса впереди» вы можете выбрать опцию «Запустить Memtest86 +» и поприветствовать программу Memtest, которую мы рассмотрели в нашем руководстве «Диагностика аппаратных проблем ПК с Ubuntu Live CD»..
Структуры файлов и каталогов
Как указывалось ранее, наша цель - расширить возможности FOG, и для этого нам потребуется добавить некоторые файлы и каталоги..
Создайте структуру подкаталога:
sudo mkdir -p / tftpboot / howtogeek / menus
sudo mkdir -p / tftpboot / howtogeek / linux
sudo mkdir -p / tftpboot / howtogeek / pics
sudo mkdir -p / tftpboot / howtogeek / utils
Эти подкаталоги будут служить шаблонами для всех изображений, программ и конфигураций, которые мы будем использовать для расширения FOG..
Настройка файла конфигурации по умолчанию
Мы создадим новое главное меню и поместим все функции FOG в свое подменю..
Скопируйте файл конфигурации /tftpboot/pxelinux.cfg/default в файл howtogeek / menus / fog.cfg.
sudo cp /tftpboot/pxelinux.cfg/default /tftpboot/howtogeek/menus/fog.cfg
Теперь отредактируйте содержимое исходного файла «по умолчанию»:
sudo vim /tftpboot/pxelinux.cfg/default
Сделайте его содержимое похожим на это:
ПО УМОЛЧАНИЮ vesamenu.c32
НАЗВАНИЕ МЕНЮ ТУМАН 0.32 + Усовершенствования HowToGeek
МЕНЮ ВКЛЮЧАЕТ /pxelinux.cfg/master.cfg
название цвета меню 1; 36; 44 # ff8c00 # 00000000 stdLABEL FOG
ЭТИКЕТКА МЕНЮ
МЕНЮ ПО УМОЛЧАНИЮ
KERNEL vesamenu.c32
ПРИЛОЖИТЬ howtogeek / menus / fog.cfg
LABEL Utils MENU
LABEL Utilities
KERNEL vesamenu.c32
ПРИЛОЖИТЬ howtogeek / menus / utils.cfg
LABEL Linux
МЕНЮ ЭТИКЕТКА Linux материал
KERNEL vesamenu.c32
ПРИЛОЖИТЬ howtogeek / menus / linux.cfgЭТИКЕТКА
localboot 0
МЕНЮ LABEL Загрузка с жесткого диска
ТЕКСТОВАЯ ПОМОЩЬ Загрузка с локального жесткого диска. Если вы не уверены, выберите эту опцию.
ENDTEXT
ПОДСКАЖИТЕ 0 ВРЕМЯ 300
ONTIMEOUT fog.local
Когда мы закончим, эта конфигурация предоставит вам 3 подменю: «Утилиты», «Ручная работа», «Linux».
Создайте «главный» файл
Мастер-файл позволяет нам вносить глобальные изменения во внешний вид меню, не вводя их повторно по отдельности снова и снова. Такие вещи, как фоновое изображение по умолчанию, стиль рамки, положение Etc ', все будут объединены в этом master.cfg файл.
Создайте файл:
sudo vim /tftpboot/pxelinux.cfg/master.cfg
Сделать его содержимое похожим на:
ФОН МЕНЮ fog / genie.png
цветной экран меню 37; 40 # 80ffffff # 00000000 std
цвет границы меню 30; 44 # 9370db # 00000000 std
название цвета меню 1; 36; 44 # ff8c00 # 00000000 std
цвет меню unsel 37; 44 #ffffffff # 00000000 std
цвет меню горячая клавиша 1; 37; 44 #ffffffff # 00000000 std
цвет меню sel 7; 37; 40 # 4eee94 # 9370db все
цвет меню hotsel 1; 7; 37; 40 # e0400000 # 20ff8000 все
Цвет меню отключен 1; 30; 44 # 60cccccc # 00000000 std
цветная полоса прокрутки меню 30; 44 # 40000000 # 00000000 std
цвет меню tabmsg 31; 40 # 90ffff00 # 00000000 std
цвет меню cmdmark 1; 36; 40 # c000ffff # 00000000 std
цвет меню cmdline 37; 40 # c0ffffff # 00000000 std
цвет меню pwdborder 30; 47 # 80ffffff # 20ffffff std
цвет меню pwdheader 31; 47 # 80ff8080 # 20ffffff std
цвет меню pwdentry 30; 47 # 80ffffff # 20ffffff std
цвет меню timeout_msg 37; 40 # 80ffffff # 00000000 std
тайм-аут цвета меню 1; 37; 40 # c0ffffff # 00000000 std
справка по цвету меню 37; 40 # c0ffffff # 00000000 std
цвет меню msg07 37; 40 # 90ffffff # 00000000 stdМЕНЮ МАРГИНА 0
ПАРОЛЬ МЕНЮ МЕНЮ 3
Строки меню 15
MENU TABMSGROW 21
МЕНЮ CMDLINEROW 20
ПАРОЛЬ МЕНЮ 11
ВРЕМЯ В МЕНЮ 20
МЕНЮ HSHIFT 0
МЕНЮ VSHIFT 0
Приведенная выше конфигурация создаст фиолетовые границы и подсветку, если вы хотите изменить внешний вид, просто измените значения.
Чтобы установить фоновое изображение, поместите изображение в/ tftprootКаталог и укажите «ФОН МЕНЮ
”К относительному пути изображения (мы рекомендуем использовать изображения с разрешением 640 * 480). Например, полный путь для вышеупомянутой сконфигурированной картинки будет:/tftproot/fog/bg.png«.
Подключите подменю FOG к главному меню
Поскольку мы сделали простую копию исходного файла конфигурации в подкаталоге меню (сохраняя его цветовую схему, тайм-ауты и т. Д.), Если вы сейчас войдете в это подменю из загруженного клиента PXE, он будет работать, но вы будете не сможет вернуться в главное меню без перезагрузки машины.
Так что отредактируйте /tftpboot/howtogeek/menus/fog.cfg файл:
sudo vim /tftpboot/howtogeek/menus/fog.cfg
Добавьте эту запись после записи «заголовок цвета меню» и перед функциями FOG:
ЭТИКЕТКА назад
МЕНЮ ЭТИКЕТКА…
KERNEL vesamenu.c32
ПРИЛОЖИТЬ pxelinux.cfg / default
Создать скелеты подменю
Мы создали 4 подменю, три из которых должны заполнить. Для этого давайте создадим шаблон, на котором мы будем строить.
Создайте файл шаблона:
sudo vim /tftpboot/howtogeek/menus/template.cfg
Сделайте это своим содержанием:
МЕНЮ ВКЛЮЧАЕТ /pxelinux.cfg/master.cfg
#MENU BACKGROUND howtogeek / pics / fog-sub.jpg
LABEL назад МЕНЮ LABEL…
KERNEL vesamenu.c32
ПРИЛОЖИТЬ pxelinux.cfg / default
Позволяет установить основу для дополнительных подменю, которые будут рассмотрены в следующих руководствах:
cd / tftpboot / howtogeek / menus /
sudo cp template.cfg ./utils.cfg
sudo cp template.cfg ./linux.cfg
Вот и все, базовая схема уже готова, и теперь нам нужно только опираться на нее, что мы и сделаем в будущих руководствах. До тех пор, пока не появятся эти будущие руководства, вам рекомендуется ознакомиться с FOG, так как это захватывающая поездка на себя.
Обновление: будущее здесь :)
Как загрузить по сети (PXE) LiveCD Ubuntu
Как загрузить сетевой диск BitDefender Rescue CD (PXE)
Как настроить сетевые загрузочные диски с помощью PXE
Иди сам