Загрузка по сети OS, ISO, etc
Задача: необходимо загрузить инсталл операционки или утилиты по PXE.
Нагуглил замечательную штуку http://www.ultimatedeployment.org/ – версия UDA 2.0 beta
Установил, опробовал – понравилось.
Итак, возможности данного образа весьма интересны: Unattended OS installations (Windows, Linux, ESX, Solaris).
Я проверил инсталл ESXi 4.0, Win2k3, WinXP – все прошло успешно, думаю, Linux тоже встанет без проблем. Отмечу некоторые сложности при установке Windows: на новых и не очень сетевых платах (я использовал встроенные) загрузка винды не пройдет из-за отсутсвия драйвера. Как это поправить описано на форуме и, если будет воодушевеление, я добавлю это в эту статью. Сейчас же я хочу акцентировать внимание на загрузке различных вспомогательных утилит вроде тестирования дисков, памяти, и т.п. Само UDA2 поддерживает загрузку “утилит” BartPE(требует образ винды), Clonezilla Live, GpartedLive, – мне это все неитересно – не пользуюсь. Зато очень важно для меня использование HirensBootCD.
Первые поиски привели меня сюда: http://www.ultimatedeployment.org/forum/viewtopic.php?f=5&t=103
Пост Dave.Mishchenko натолкнул меня на правильный путь и для теста я реализовал это. Теперь пошагово :).
1. Я зашел на веб-морду моего PXE-сервера и инициировал добавление новой ОС – меню OS. Вписал Flavor name: MHDDPlus, Operating System: Manual Configuration.
2. Далее на запрос Kernel щелкаем в окошке ввода – сработает форма выбора образа ядра, я взял memdisk из комплекта HirensBootCD 10.4, а Initrd из поста выше bdos. Жмем Next – новый пункт меню создан.
3. Идем в пункт меню Templates, жмем New. Template name: MHDDPlusTemplate, Operating System: Manual configuration, Flavor: MHDDPlus, Description: ваше описание для шаблона. Жмем Next и Finish – шаблон создан.
Обращаю внимание на то, что образы ядра и загрузчика будут загружены на сервер в соответсвующую папку /var/public/tftproot/manual/MHDDPlus, а в файле меню /var/public/tftproot/pxelinux.cfg/templates/MHDDPlusTemplate.menu будет прописано следующее:
MENU TITLE Template MHDDPlusTemplate
DEFAULT default
TIMEOUT 1
LABEL default
MENU LABEL default
KERNEL manual/MHDDPlus/memdisk
APPEND initrd=manual/MHDDPlus/bdos
С первого раза получился глюк и вместо коррекнтых путей у меня вписало пути виндовой машины откуда я закачивал образы – пришлось править.
Все – грузим необходимую машину по PXE, выбираем в меню соответствующий пункт и получаем наши утилиты.
Снова замечание: нет драйверов для SCSI и т.п., а это не есть хорошо. Но при желании можно расковырять образ bdos – открывается 7zip и поправить недостающее.
Все хорошо, но, все же, хотелось бы иметь весь Hirens :).
Подняв инфу о memdisk – имеем следующее: http://syslinux.zytor.com/wiki/index.php/MEMDISK#ISO_images
Ключевой пункт:
ISO images
For ISO images, the parameter ‘iso’ must be passed to MEMDISK.
LABEL hdt_iso LINUX memdisk INITRD hdt.iso APPEND iso
Это навело меня на некоторые мысли, которые реализовались в ЭТО :).
1. Создаем новую запись ОС через веб-морду с именем HirensISO и и типом ОС Manual configuration как я описывал выше.
2. Указываем образ ядра как и ранее memdisk из комплекта Hirens, initrd – сам Hirens.iso, Default command line: INITRD=iso. Я закачивал на сервер образ Hirens98.iso вручную через WinSCP.
3. Создаем шаблон так же как я описал ранее.
4. Проверяем чтобы файл меню /var/public/tftproot/pxelinux.cfg/templates/HirensISO.menu выглядел следующим образом:
MENU TITLE Template HirensISO
DEFAULT default
TIMEOUT 1
LABEL default
MENU LABEL default
KERNEL manual/Hirens/memdisk
INITRD manual/HirensISO/Hirens98.iso
APPEND iso
5. Ваааау! Радости то скоко – работает!
Примечания:
Сам образ UDA2 собран на CentOS. Если кто привык работать с MC, – ставим как обычно: yum install mc
Все хозяйство для инсталляции и меню собрано в папке /var/public/tftproot. В ходе экспериментов правил там все что мне нужно было.
Загрузка Mini WindowsXP не пошла – ушло в ребут.
Скиншоты:
Exchange 2007 + anonymous receive connector for internal use Установка CruiseControl.NET для автобилда