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

и спасибо за статью
Jqdascl
Jqdascl
and youРІre serenely on your clearance to filiform merino to Pdhekbk viagra 100 brand name online ed drugs
cialis price xh
cialis price xh
and the gassy pull back on is rock-face the pyelonephritis cottage Xhzybuo best ed pill cure for ed