Поиск на сайте: Расширенный поиск


Новые программы oszone.net Читать ленту новостей RSS
CheckBootSpeed - это диагностический пакет на основе скриптов PowerShell, создающий отчет о скорости загрузки Windows 7 ...
Вы когда-нибудь хотели создать установочный диск Windows, который бы автоматически установил систему, не задавая вопросо...
Если после установки Windows XP у вас перестала загружаться Windows Vista или Windows 7, вам необходимо восстановить заг...
Программа подготовки документов и ведения учетных и отчетных данных по командировкам. Используются формы, утвержденные п...
Red Button – это мощная утилита для оптимизации и очистки всех актуальных клиентских версий операционной системы Windows...
OSzone.net Microsoft Автоматическая установка Автоматическая установка Windows XP Загрузка компьютера по сети с практически любого образа диска RSS

Загрузка компьютера по сети с практически любого образа диска

Текущий рейтинг: 3.95 (проголосовало 128)
 Посетителей: 135843 | Просмотров: 222502 (сегодня 0)  Шрифт: - +

Способ 2: PXELINUX и TFTPD32 сервер

Представляю статью об альтернативном варианте загрузке по сети, которую написал участник конференции OSZone Power User.

Предисловие

Прочитал статью с описанием способа RIS и решил поделится своим методом. Дело в том что по работе мне приходится часто кидать образы на компьютеры в школах, к которым у детишек отношение весьма не доброе, а потому большинство CD-ROM сломано, а с дисководом никогда не угадаешь заранее, считает дискетку или нет. Поэтому загрузка образов дискет (и не только) через PXE мне очень близка.

Начнем с плюсов моего метода

  • Не надо иметь выделенный RIS сервер (вообще не надо сервер) - не всегда он есть под рукой, а иногда за него надо платить...
  • Грузить можно любой 1.44, 2.88 и 5.76 (ага, и такие бывают!) образ дискеты как он есть, без изменений (единственное если прога на 2-х дискетах 1.44, то ее надо слить в один образ 2.88), плюс образ любого размера, который поместится в память клиента (речь уже об образе диска, а не дискеты)
  • Можно грузить различные линуксы, которые работают с RAM диска (например, thinstation - это RDP клиент, или те же утилиты от Paragon)
  • Можно грузить различные линуксовые бинарники (например memtest86+)
  • Легко модифицировать любую сеть для такой работы. Надо всего лишь на DHCP сервере сети указать IP нашего PXE сервера и имя загрузчика. Это в моей статье не описывается, так как уже было описано в первой статье (два параметра для DHCP - 066, 067), и админам думаю проблем не составит сделать нужные изменения)
  • Можно все нужные файлы таскать с собой на Flash диске - и тогда любой комп быстро превращается в PXE сервер (только надо перенастроить в tftpd32 - путь к файлам и IP адреса, и перезапустить его)

Есть и минусы

  • У tftpd32 есть баг - при одновременном обращении к нему больше одного клиента - жуткие тормоза на этапе загрузки pxelinux'а и образов. Если кому-то надо грузить, скажем, сразу много клиентов, то tftpd32 придется оставить только как DHCP, убрав в настройках галочку про TFTP Server (если, конечно, нет другого DHCP), а сам TFTP сервер взять другой (к сожалению, те серверы что я видел - коммерческие). Однако, при последовательном обращении клиентов - все летает. Так что как вариант просто грузить компы по очереди.

Что понадобится?

Совсем немного времени и трафика на скачивание нескольких небольших программ, а так же немного времени на настройку (при наличии знаний по сетям). Помимо этого:

  1. Компьютер с Windows и сетевой картой (линейку 9х не проверял, но и с ней не должно быть проблем, а под NT семейством и подавно). Как соединять два компа и настраивать сетку описывать не буду - и так много написано. Априори считается, что вы можете соединить между собой два и более компа по сетке.
  2. Компьютер, который будет загружаться по сети с наличием сетевой карты с поддержкой загрузки по сети (PXE)
  3. tftpd32 (вводим в Google и тыкаем на первую ссылку)
  4. pxelinux - часть пакета syslinux - (гуглим по "syslinux" или берем zip-архив тут)
  5. Программа для создания образа дискет. Например, WinImage или что-то подобное.
  6. рюмочка коньяка для храбрости :)

Поехали!

  1. Распаковываем tftpd32.exe, скажем, в С:\TFTP
  2. Распаковываем файл pxelinux.0 (из архива syslinux'а), memdisk (из sysylinux.zip/memdisk) а так же (опционально) memtest (sysylinux.zip/memtest) в C:\TFTP. Memtest для работы не нужен. Это просто известный тест памяти, который в нашем случае также можно загрузить по сети без дисковода и т.п.
  3. Tуда же (C:\TFTP) кладем образ любимой загрузочной дискетки (можно и не только дискетки – но об этом ниже). Например, dos.imz (для экономии места и/или ускорения загрузки можно даже сжатый (winimage) образ класть – imz, a можно и не сжатый ima). Образов может быть сколько угодно.
  4. Проверяем, что у нас в сети нету DHCP серверов. Например, если включен ICS (шара интернета), то его выключить на время экспериментов.

Конфигурируем tftpd32.exe

Запустили, нажали Settings, в "страшном" окне указываем Base Dirrectory – C:\TFTP. Потом выставляем галочки как на картинке:

Tfpd

Жмем на ОК, еще раз ОК, и перезапускаем tftpd32.

Далее настраиваем наш DHCP сервер:

Tfpd

  1. Выбираем сетевую карточку, к которой подключен пациент
  2. Ставим начало адресов, которые получит первый клиент (этот адрес и количество клиентов не должно пересекаться с вашим IP)
  3. Количество адресов (минимум 1)
  4. Имя загрузчика (pxelinux.0)
  5. Маска сети (мат-часть по сетям)
  6. Сохраняемся....

Далее на всякий случай перезапускаем tftpd32. Почти закончили :)

Конфигурируем загрузку

Создаем текстовый файл C:\TFTP\PXELINUX.CFG\default и редактируем его, скажем, так:

default local
prompt 1
label local
    localboot 1
label dos
    kernel \memdisk
    append initrd=\dos.imz
label pqpm8
    kernel \memdisk
    append initrd=\pqpm8.imz
label mem
    kernel \memtest

Подробную информацию можно найти в pxelinux.doc из syslinux'a.

Ну и наконец, устанавливаем на компе загрузку с сетевого адаптера по PXE.

Что получаем?

Компьютер грузится по сетке, подключается к вашему компьютеру, скачивает загрузчик и ждет вашего ввода команды. Ну а там смотря что ввели:

  • Просто ENTER – загрузится с локального диска (или по команде local)
  • Mem – загрузится memtest86 (тест памяти)
  • Dos – загрузится ваша досовская дискетка

Ну и далее только от фантазии зависит :) Можно, например, известные утилиты от Paragon тоже так грузить, но это уже сложнее (надо выковыривать из загрузочных дисков ядра и образы линукса), можно тот же thinstation terminal client и т.д.

Послесловие

В статье делается упор на tftpd32, так как он бесплатен, не требует установки, и включает в себя 2 сервера в 1 (DHCP и TFTP), а также запускается под Windows любой версии. Но сам принцип - загрузка и запуск бинарника pxelinux (с последующей загрузкой нашего образа) - не привязан к tftpd32, а требует наличия в сети DHCP сервера с двумя дополнительными параметрами - 067 (имя загружаемого бинарника - pxelinux.0) и 066 (IP адрес TFTP сервера который нам и выдает искомый бинарник), а также собственно TFTP сервер, на который ссылается DHCP. Какими системами, сервисами или железками это реализовано нам совершенно неважно, потому можно использовать любой находящийся в сети сервер (Linux, Windows, Novell). Ну а если его нет, то tftpd32, запущенный на любой машине. Главное - это добраться по сети до PXELINUX.

Автор: способа RIS - Владимир Сердюк aka vserd; способа TFTPD32 - Power User  •  Иcточник: unattended.oszone.net  •  Опубликована: 03.12.2005
Нашли ошибку в тексте? Сообщите о ней автору: выделите мышкой и нажмите CTRL + ENTER
Теги:  


Оценить статью:
Вверх
Комментарии посетителей
22.01.2010/11:35  kristow13

интересная статья... хотел ей воспользоваться, только половина ссылок не работает... попытался нарулить из других источников, вроде похожее нашел... только нефига не получилось...
Если кто-то все это чудо настроил, прошу поделиться опытом!!! или архивной папкой всего выше описанного собранного и настроенного хоть как-то...
Прошу помочь!!! пишите на почту pazoom@alfard-bel.ru
26.02.2012/00:52  Vadikan

@yurka40 какие ссылки не работают? И вас что, в яндексе забанили?
19.03.2012/11:09  rayeagle

>Далее настраиваем наш DHCP сервер:
>1. Выбираем сетевую карточку, к которой подключен пациент
как сделать, чтобы автоматически выбиралась нужная карточка? Чтобы не приходилось каждый раз выбирать ее в ручную.
Спасибо.
11.08.2013/23:02  dastoxic

Ссылки не работают, статья кривая, что из чего вытекает непонятно. Нахер тогда статья, если её невозможно прочитать без яндекса? К примеру Perl, perl ссылка не работает, указано что этой версией рекомендуется пользоваться, КАКОЙ ЭТОЙ ВЕРСИЕЙ?!? Или мне перечитать в "незабаненом яндексе" о всех версиях perl?
Автору незачет, досвидос...
26.02.2016/10:51  Power User

случайно натолкнулся на свою старую статейку :)
опубликована в конце 2005! года...
насчет кривости - мол нету ссылок на перл и т.п. - все таки 2013-2005 - восемь (почти) ! лет прошло - ясно дело что ссылки на свободные ресурсы попередохли, да и не актуально это уже в 2013 - утсанавливать XP через ПЕРЛэмуляцию взрослого РИС сервера :)
сейчас же в 2016 году - многое изменилось (но остался сам принцип - не нужны громоздкие комерчиские сервера типа ex-RIS) - можно грузить по сетке вообще что угодно практически - можно даже подымать бездисковые станции на винде7+ по iSCSI (TFT, HTTP и прочеее поддерживается в gPXE (iPXE)....
так что гуглить и яндексить придется - для того и голова дана - что бы "направление" прикинуть, а не взять статью 8-летней (счас уже 10) давности - и что бы оно все заработало из коробки....
зы. удивлен что до сих пор (есть кто-то кто натыкается на статейку - даже сегодня 18 просмотров без меня)

зы. я кстати этим методом до сих пор пользуюсь с той только разницей - что TFTP поднят на BSD (nas4fre) - а по сетке грузятся уже в основном не образы дискет (хотя и они иногда - тот же MHDD для ДОС или Виктория), но WIM образы систем или всяике бинарники типа мемтеста или линюксы и т.п. + прочии винды по iSCSI :) (но начально все тот же pxelinux или g(i)PXE - где надо)....
Комментарии отключены. С вопросами по статьям обращайтесь в форум.