Сетевое меню с помощью PXE

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

apt-get install tftp tftpd-hpa

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

dpkg-reconfigure tftpd-hpa

Сетевое меню с помощью PXE

Установка закончилась и теперь у нас уже имеется tftp, можно больше его и не трогать. Для дальнейшей работы нам нужен dhcp сервер. А как же его установить? все очень просто смотрим ТУТ . Итак dhcp мы уже установили, однако это еще не все, к нашему конфигурационному файлу добавляем вот такие строки:

next-server 127.0.0.1; # адрес tftp сервера filename "pxelinux.0"; # имя загрузочного файла(в нашем случае pxelinux.0)

После проделанных изменений перезапустите dhcp сервер. Когда мы все сделали, переходим к созданию самого меню которое будет загружаться по сети, для этого мы используем файлы из проекта syslinux, сами файлы вы можете найти http://www.syslinux.org/wiki/index.php/The_Syslinux_Project или установить пакет syslinux-common вот такой командой:

apt-get install syslinux-common

Так, вы получили архив syslinux удобным для вас способом, что дальше? Из этого архива понадобятся всего несколько файлов:

  • pxelinux.0;
  • menu.c32;
  • memdisk.

Находим их среди многочисленных загрузчиков и копируем в каталог нашего tftp сервера. В этом же каталоге создаём папку pxelinux.cfg, а в этой папке файл с именем default. Открываем только что созданный файл и пишем примерно следующее:

DEFAULT menu.c32 TIMEOUT 600 MENU TITLE Название вашего меню. LABEL HDDBoot LOCALBOOT 0

Получаем при загрузке примерно следующее:Сетевое меню с помощью PXE Загрузочное меню почти готово, добавим к нашему меню, замечательную программу для тестирования жестких дисков компьютера. Для этого скачиваем с официального сайта Victoria 3.5 Russian. Загрузочная версия для FDD, из скачанного архива берем образ дискеты fdd35.img и копируем, например в корень нашего tftp сервера. Далее в файле default пишем следующее

LABEL Victoria KERNEL memdisk APPEND initrd=/fdd35.img

Получилось примерно следующее:

Сетевое меню с помощью PXE

Вот собственно и все! Чтобы не делать меню самостоятельно можете скачать мою сборку, в которую вошли: memtest86 + MiniXP (Выдрал из HirenBoot CD) Victoria 3.5 Clonezilla-live-1.2.12-60-i486 GParted-live-0.12.1-5

Сетевое меню с помощью PXE

Скачать готовую сборку можно тут (288 МБ)

ЗЫ: В подобное меню можно добавить различные линуксы и необходимый софт, также организовать развертывание ОС Windows.

Коментарии

KillOSer2014 / 3 August 2017 г. 15:19

мне кажется, что не лишним будет ограничить возможность загрузки по сети, например путём добавления в конфигурацию DHCP:

# Клиент для установки/загрузки по сети (по МАК-адресу)
host tftpclient {
  allow booting;
  filename "pxelinux.0";
  hardware ethernet 08:00:27:85:33:f7;
  fixed-address 192.168.100.151;
}
иначе может получится так, что загрузится компьютер не очень радивого но любопытного пользователя, а первым пунктом меню (по умолчанию, по истечению времени ожидания)… будет тот же gparted и восстанавливай потом… кстати я себе поставил первым пунктом (он же загрузится по умолчанию) AviraRescue — очень удобно…

и спасибо за статью

Похожие записи

Приложение Вконтакте для Android
Приложение Вконтакте для Android

Приложения для устройств на платформе Android, которое позволяет вам оставаться на связи со своими друзьями в самой посещаемой социальной сети России и СНГ. Приложение Вконтакте имеет тот же функц...

История о настройке Squid на ALT Linux junior в школе
История о настройке Squid на ALT Linux junior в школе

Предыстория Привет, как-то раз я вызвался помочь одной школе в настройке  никак не поддающегося линукса. При первом разговоре директор  это самой школы не смог ничего толком объяснить, то есть ...

Контент фильтр на linux
Контент фильтр на linux

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

Обзор телефона Explay Sky Plus
Обзор телефона Explay Sky Plus

От остальных бюджетных смартфонов Explay Sky Plus отличает разве что наличие аналогового ТВ приемника. Не так давно подобная функция присутствовала практически в каждом устройстве, если вы любител...

Интегрированная система разработки (IDE)
Интегрированная система разработки (IDE)

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

Доступ к сайтам только в определенное время
Доступ к сайтам только в определенное время

В прошлом посте мы с вами устанавливали и немножко настраивали squid. В этом посте мы рассмотрим, как разрешить работу с сайтами только в определенное время, с помощью прокси-сервера squid. Наприм...