PXELINUX и новые возможности установки Windows XP
Настройка PXELINUX
Теперь нужен инструмент, который создаст интерфейс для выбора, какую производить установку. И это – pxelinux, входящий в состав syslinux.
На момент написания статьи последняя версия syslinux была версия 3.31.
Распаковываю архив syslinux-3.31.zip в директорию c:\syslinux. Копирую файл c:\syslinux\pxelinux.0 в e:\netboot.
Теперь прописываю в свойстве "Boot file" DHCP server файл pxelinux.0 (Рисунок 3). В настройках "Settings" параметру "Base Directory" присваиваю значение E:\NETBOOT (Рисунок 4).
Создание текстового меню
Теперь необходимо создать меню. Для этого из каталога c:\syslinux\com32\modules копирую файл menu.c32 в e:\netboot.
Одной из особенностей реализации меню в syslinux – это возможность использовать шрифт в формате psf. Такие шрифты можно найти в дистрибутивах linux. Я загрузил набор шрифтов console-cyrillic. С полученного архива извлек файл cyr_a8x16.psf в каталог e:\netboot. Этот шрифт позволит отображать русские буквы в кодировке cp866.
В e:\netboot создаю директорию pxelinux.cfg. В директории e:\netboot\pxelinux.cfg создаю файл default. Напомню для отображения русских букв содержимое этого файла должно быть в кодировке cp866
DEFAULT menu.c32 ALLOWOPTIONS 0 PROMPT 0 FONT cyr_a8x16.psf TIMEOUT 300 ONTIMEOUT local MENU TITLE Установка Windows XP MENU COLOR border 30;40 #40000000 #00000000 std MENU COLOR title 1;36;40 #c00090f0 #00000000 std MENU COLOR unsel 37;40 #90ffffff #00000000 std MENU COLOR hotkey 1;37;40 #ffffffff #00000000 std MENU COLOR sel 7;37;40 #e0000000 #20ff8000 all MENU COLOR scrollbar 30;40 #40000000 #00000000 std LABEL xp001 MENU LABEL WindowsXP SP2 (файл ответа xp001.sif) KERNEL xp001.0 LABEL xp002 MENU LABEL WindowsXP SP2 (файл ответа xp002.sif) KERNEL xp002.0 LABEL xp101 MENU LABEL WindowsXP SP2 (файл ответа xp101.sif) KERNEL xp101.0 LABEL local MENU LABEL Booting from HDD (загрузка с жесткого диска) LOCALBOOT 0
Когда удаленный компьютер начнет загружаться с помощью сетевого адаптера, пользователь увидит следующую картинку на экране (Рисунок 5).
Описание использованных параметров в файле default
- Параметр ALLOWOPTIONS 0
- Блокирует указание дополнительных параметров для загрузчика.
- Параметр PROMPT 0
- Скрывает отображение строки “boot:” для ввода параметров.
- Параметр FONT cyr_a8x16.psf
- Загружает шрифт cyr_a8x16.psf для отображение русских букв.
- Параметр TIMEOUT 300
- Устанавливает задержку в 30 секунд перед тем как выполнить загрузку по умолчанию.
- Параметр ONTIMEOUT local
- Указывает что по наступлению таймаута, заданного параметром TIMEOUT, выполнить пункт меню local.
- Параметр MENU TITLE
- Выводит заголовок меню загрузки.
- Параметр MENU COLOR
- Переопределяет цвета заданные по умолчанию для интерфейса.
- Параметр LABEL
- Задает идентификаторы меню. Значения этого параметра должны быть уникальны внутри файла.
- Параметр MENU LABEL
- Задает подпись для идентификатора определенного в LABEL.
- Параметр KERNEL
- Задает какой загрузчик использовать в случае выбора этого пункта меню.
- Параметр LOCALBOOT 0
- Указывает, что для загрузки использовать жесткий диск.
Создание графического меню
Текстовое меню, рассмотренное выше, можно трансформировать к такому виду (Рисунок 6). Для этого необходимо из c:\syslinux\com32\modules скопировать vesamenu.c32 в каталог e:\netboot. Изменить файл e:\netboot\pxelinux.cfg\default к следующему виду.
DEFAULT vesamenu.c32 ALLOWOPTIONS 0 PROMPT 0 FONT cyr_a8x16.psf TIMEOUT 300 ONTIMEOUT local MENU TITLE Установка Windows XP MENU BACKGROUND back.jpg MENU COLOR border 30;44 #00000000 #00000000 none MENU COLOR unsel 37;44 #90ffffff #00000000 std MENU COLOR sel 7;37;40 #70ffffff #20ff8000 all MENU COLOR hotsel 1;7;37;40 #e0ffffff #20ff8000 all LABEL xp001 MENU LABEL WindowsXP SP2 (файл ответа xp001.sif) KERNEL xp001.0 LABEL xp002 MENU LABEL WindowsXP SP2 (файл ответа xp002.sif) KERNEL xp002.0 LABEL xp101 MENU LABEL WindowsXP SP2 (файл ответа xp101.sif) KERNEL xp101.0 LABEL local MENU LABEL Booting from HDD (загрузка с жесткого диска) LOCALBOOT 0
Теперь осталось скопировать картинку под именем back.jpg (параметр MENU BACKGROUND) в e:\netboot. Картинка должна быть в формате jpg или png. Разрешение картинки обязательно должно быть 640x480.
P.S. Об этой статье можно высказать свое мнение либо задать вопрос на форуме. Мне будет интересно Ваше мнение.