Введение

Конфигурация, описываемая здесь, создавалась с лета 1996 в CUI, Университет Женевы. Факультет Компьютерных Наук использовал несколько серверов и большое количество рабочих станций, которые можно поделить

Мы разработали эту конфигурацию для достижения следующих целей:

Эти условия привели к тому, что нам пришлось основывать эту конфигурацию на утилитах ПЗУ удаленной загрузки. Сначала мы разработали эти утилиты для TCP/IP Bootprom фирмы InCom GmbH. По той причине, что сейчас появился полностью оформленный стандарт удаленной загрузки, мы доделали эти утилиты, так что они работают сейчас с любым PXE-совместимым ПЗУ удаленной загрузки. PXE-BootROM, также называемые LanDesk Service Agent, теперь распространяются практически со всеми встроенными в материнскую плату сетевыми адаптерами. Чтобы более подробнее узнать о стандарте PXE и Intel Wired for Management, читайте http://www.intel.com/managedpc.

Boot ROM и Жесткий диск

ППЗУ удаленной загрузки существуют достаточно давно, но, до недавних пор, они продавались исключительно с бездисковыми станциями. С 1996 года этот How-to утверждает, что BootPROM значительно более интересны при использовании в машинах с локальным жестким диском, потому что они позволяют использовать плюсы и тех, и других:

Мы рады видеть на сегодняшний день, что многие производители компьютеров пришли к тому же выводу и внесли BootPROM в стандартную конфигурацию новых компьютеров.

Заметьте, что вы можете использовать утилиты, описанные ниже, по-старому, в качестве простого загрузчика ядра/электронного диска, даже на бездисковых компьютерах. Однако, мы бы не рекомендовали, такое их использование.

Сеть

Университет Женевы владеет сетью класса B, разделенной на несколько подсетей. Компьютерный факультет использует четыре подсети, из которых одна выделена для студентов.

В исходном варианте наши компьютеры использовали два сетевых протокола: IPX и IP. Для IPX мы использовали сервер Novell Netware 3 для совместного использования программ и файлов пользователей в DOS и Windows. Для IP у нас был сервер SUN с программами и разделами пользователей для Linux, использующих NFS.

В последней версии конфигурации мы больше не используем IPX. У нас стоит один сервер Unix (Это может быть и Linux, и SUN), позволяющий совместное использование программ и файлов пользователей, при помощи NFS, для Linux-клиентов и SMB (NetBIOS) поверх TCP/IP для Dos- и Windows-клиентов. Таким образом, мы можем предоставить один общий домашний каталог на всех операционных системах.

Как это работает

  1. Когда клиентский компьютер включается, он производит стандартную проверку системы до того, как управление передается TCP/IP Bootprom или PXE Boot ROM.

  2. ППЗУ удаленной загрузки посылает запрос BOOTP/DHCP, чтобы узнать параметры IP-конфигурации.

  3. Если сервер узнает компьютер, пославший запрос, он посылает обратно BOOTP/DHCP-ответ с различной информацией: IP адрес клиента, шлюз по умолчанию и образ загрузочного диска, который нужно использовать.

  4. В случае PXE Boot ROM, может существовать кое-какой дополнительный обмен информацией между клиентом и сервером до полного определения параметров загрузки.

  5. После этого BootPROM скачивает загрузочный образ с сервера, используя протокол TFTP. Этот образ представляет из себя небольшую программу bpbatch, наш интерпретатор пакетных файлов загрузки систем.

  6. Затем запускается наш интерпретатор пакетных файлов. К этому моменту он единственный находится в памяти. Еще не загружена ни одна операционная система, кроме дозагрузочного исполнительного окружения, формируемого Boot ROM.

  7. Интерпретатор обрабатывает ответ BOOTP/DHCP в поисках различных опций, и, иногда, имени пакетного файла, который надо исполнить.

  8. В соответствии с инструкциями пакетного файла он, например:

    1. Загрузить национальную раскладку клавиатуры

    2. Произведет авторизацию пользователя на сервере (Unix, Radius или Windows NT)

    3. Даст возможность пользователю выбрать операционную систему

    4. В соответствии с выбранной операционной системой, он создаст разделы на жестком диске и произведет быстрое форматирование некоторых разделов

    5. Проверит, имеется ли соответствующий компрессированный образ выбранной ОС в конце жесткого диска. Если нет, то загружает его, при помощи TFTP

    6. Разархивирует выбранную ОС на основной раздел

    7. Если ОС - это Linux, загрузит ядро и запустит его

    8. Если ОС - это DOS или Windows, то просто позволит компьютеру загрузиться со свежего жесткого диска

    Для DOS и Windows 3.1, мы используем бесплатный Microsoft LanManager для DOS (поищите в сети ближайшее зеркало этой программы; дистрибутив состоит из трех файлов, названных от disk1 по disk4) в качестве SMB-клиента. Microsoft LanManager поддерживает динамическую конфигурацию, при помощи DHCP. После входа в систему пользователь оказывается в DOS и затем обычным образом может запустить Windows 3.1, набрав традиционную команду win. Заметьте, что с этого момента DOS и Windows 3.1 выглядят так, как будто установлены на локальной машине. Для Windows 95 и Windows NT, мы также используем клиент SMB фирмы Microsoft (называемый Клиент сетей Microsoft), поддерживающий динамическое конфигурирование, при помощи DHCP. Мы уменьшаем нагрузку на сеть, используя "Разделенный кэш локальных сетей"

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

В "безопасных" компьютерах (напр. компьютерах лаборантов), как только компьютер однажды загрузился с использованием вышеописанной системы, скрипт может просто переключаться на загрузку с локального диска без его повторной очистки. Это позволяет пользователям хранить данные на локальных дисках. Но если, вдруг, конфигурация их компьютера откажет, то пользователь может в любое время выбрать соответствующий пункт из загрузочного меню, получив, таким образом, свежую инсталляцию

Сопутствующая некоммерческая документация

Эта конфигурация была успешно воспроизведена в нескольких других местах по всему миру. Некоторые, из участвовавших в проекте, написали советы и хитрости в дополнение к этому How-To. Если у вас тоже есть совет, и на этой странице нет ссылок на вас, то пишите по адресу Marc.VuilleumierStuckelberg@cui.unige.ch. Если у вас возникнут проблемы с воспроизведением этой конфигурации, взгляните на эти страницы!

Вы можете послать мне свой BpBatch-скрипт, чтобы я внес его в коллекцию скриптов.