Конфигурация, описанная здесь была разработана начиная с лета 1996 в
CUI, Университете Женевы. Отдел Информатики использует несколько серверов
и ряд PC, которые подразделяются на два класса:
Компьютеры студентов
Компьютеры исследовательского и технического персонала
Мы разработали эту конфигурацию со следующими целями:
Каждый компьютер должен быть способен работать под Linux, DOS,
Windows 3.1, Windows 95/98 или Windows NT. Нужно иметь возможность выбрать
желаемую операционную систему для каждого сеанса.
Все программное обеспечение, включая операционные системы,
должно получаться с сервера, чтобы облегчить дальнейшие инсталляции и обновления.
Клиентские компьютеры должны быть способны работать без всякого доступа для записи на сервере (из соображений безопасности), кроме своего домашнего каталога.
Клиентская конфигурация должна быть уменьшена до возможного минимума.
Клиенты должны автоматически получить их IP параметры конфигурации от сервера,
и эта информация должна быть расположена в одном файле, используемом для всех
операционных систем.
Так как почти каждый компьютер теперь имеет жесткий диск, клиенты должны быть
способны использовать это преимущество для сокращения сетевой загрузки и как место
временного хранения для пользователя.
Пользователи должны выполнить вход в систему, чтобы иметь возможность
использовать любой из компьютеров.
Вход в систему должен быть один и тот же для всех операционных систем и должен
предоставлять пользователю доступ к его уникальному домашнему каталогу, общему для всех
операционных систем.
Студентские (и секретарские :-) компьютеры должны полностью очищаться при каждом запуске.
То есть PC должен всегда быть похожим на только что установленный.
Каждый компьютер должен быть защищен от вирусных атак.
Эти ограничения привели нас к выбору основы для нашей конфигурации инструментальных средств bootprom. Сначала мы разработали новые инструменты для превосходного
TCP/IP Bootprom
от
Bootix GmbH.
Теперь, когда стандарт для PXE (Preboot eXecution Environments; предзагрузочных сред выполнения) наконец появился, мы переделали
инструментальные средства так, что они теперь также работают для любого
PXE-совместимого bootprom. PXE ПЗУ начальной загрузки, также называемые
LanDesk Service Agent, теперь распространяются почти со всеми встроенными сетевыми
адаптерами. Для получения более подробной информации по PXE и Intel Wired for Management стандартам,
читайте
http://developer.intel.com/ial/wfm/tools/index.htm.
Bootprom существуют действительно давно, но до недавнего времени
они использовались исключительно с бездисковыми компьютерами (с использованием сетевой
эмуляции диска или загрузки ramdisk). Начиная с 1996, данный How-to утверждал, что bootprom
даже более интересен для компьютеров, имеющих локальный жесткий диск,
так как они позволяют получить преимущество с двух сторон:
ПЗУ начальной загрузки делает конфигурацию более устойчивой, так как это гарантирует,
что компьютер будет всегда загружаться одним и тем же образом, независимо от любого вируса
или разрушения таблицы разделов. Это может использоваться, как это делали мы, для очистки жесткого диска даже прежде, чем операционная система загрузиться.
Локальный жесткий диск делает конфигурацию более эффективной, так как он может
уменьшить сетевой траффик через кэширование, и предоставляет эффективный свопинг.
Сегодня, мы имеем удовольствие видеть, что все компьютерные изготовители
пришли к тому же самому мнению и предусматривают ПЗУ начальной загрузки
как часть новых компьютерных стандартов.
Обратите внимание, что вы все еще можете использовать инструментальные средства,
описанные ниже старомодным способом, таким, как простой kernel/ramdisk загрузчик,
даже для компьютеров без диска. Однако, мы не приветствуем такое использование.
Университет Женевы имеет домен класса B , поделенный на несколько подсетей.
CUI использует четыре подсети, среди них одна выделена студентам.
Первоначально, наши PC использовали два сетевых протокола: IPX и IP.
В IPX части, мы использовали одиночный Novell Netware 3 сервер для
совместного использования программного обеспечения и файлов пользователей для
DOS и Windows. В IP части, мы использовали сервер SUN для совместного
использования программного обеспечения и разделов пользователей для Linux, с NFS.
В нашей самой последней конфигурации, мы больше не используем IPX. Имеется одиночный
Unix сервер (которым может быть как Linux, так и SUN), для совместного использования программного
обеспечения и файлов пользователей, использующий NFS для Linux клиентов и SMB (NetBIOS)
через TCP/IP для клиентов Windows и DOS. Таким образом, мы имеем один
домашний каталог используемый всеми операционными системами.
Когда клиентский PC включается, сначала он выполняет традиционные системные
проверки, прежде чем TCP/IP Bootprom или PXE Boot ROM возьмет управление.
Bootprom производит BOOTP/DHCP запрос, чтобы получить IP параметры конфигурации.
Если сервер распознает производимый PC запрос, он отошлет назад BOOTP/DHCP ответ с информацией, такой, как адрес IP клиента, шлюз по умолчанию, и какой образ загрузочного диска использовать.
В случае PXE BootROM, происходит несколько более продолжительный обмен между клиентом
и сервером, для определения инсталляционных параметров.
Затем bootprom загружает образ начальной загрузки c сервера,
используя TFTP протокол. Образ начальной загрузки получился
маленькой программой, называемой bpbatch,- наш загрузочный интерпретатор
пакетного файла.
Пакетный интерпретатор стартует. В это время, он почти один в компьютерной памяти.
Не имеется никакой загруженной операционной системы, кроме среды предзагрузочного выполнения (предлагаемой самим Boot ROM).
Пакетный интерпретатор просматривает в ответе BOOTP/DHCP параметры командной строки,
и в особенности имя пакета для выполнения. BpBatch использует опцию 155 DHCP для получения параметров командной строки. Если опция 155 пуста, он получает
эти параметры из опции 135 DHCP (PXE 2.0 bootroms могут получать только опции 128-135).
Согласно инструкциям пакетного файла, это будет например:
Загрузка национальной раскладки клавиатуры.
Аутентификация пользователя, соответствующая удаленному серверу (Unix, Radius или Windows NT).
Предоставление пользователю выбора между доступными операционными системами.
Переразбиение жесткого диска и быстрое форматирование некоторых разделов
в соответствии с выбранной операционной системой.
Проверка, присутствует ли в конце диска обновленный сжатый образ выбранной OS.
Если нет, выполняется его загрузка, используя TFTP.
Распаковка выбранной OS в главный раздел.
Если выбранная OS - Linux, загрузка ядра и его запуск.
Если выбранная OS - 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/98 и Windows NT, мы также используем Microsoft SMB клиент
(называемый Клиентом для Сети Microsoft), который поддерживает динамическую конфигурацию,
используя DHCP. Мы уменьшаем сетевую загрузку, используя Shared LAN Cache,
хорошую и мощную программу кэширования "сети на диске".
Студенческие компьютеры могут быть выключены аппаратно в любое время без риска,
так как жесткий диск повторно инициализируется при каждом включении.
Для "безопасных" компьютеров (то есть для компьютеров сотрудников), если компьютер
был загружен однажды через использование вышеописанной системы, сценарий начальной загрузки
просто переназначает начальную загрузку на локальный жесткий диск, без того, чтобы очищать
его снова. Это позволяет пользователям оставлять данные на их локальных жестких дисках.
Но всякий раз, когда конфигурация разрушается, пользователь может просто выбрать из меню
начальной загрузки, чтобы получить свежую инсталляцию.
Эта конфигурация была успешно воспроизведена в нескольких местах во всем мире.
Несколько людей написали некоторые подсказки и трюки, которые дополняют настоящий How-To.
Если вы делали то же самое, и если ваша страница еще не упомянута в этой документации, пожалуйста
пошлите электронную почту на mvuilleu@bpbatch.org. И если Вы испытываете проблемы при
воспроизведении данной конфигурации, взглянете на эти страницы!
http://www.ph-ludwigsburg.de/nutzer/schmitt_peter/,
сделано Питером Шмиттом (Peter Schmitt) из Carl-Schaefer-Schule в Ludwigsburg, Германия. Эта документация - хорошая ссылка
на BpBatch для пользователей, говорящих на немецком.
http://www.br.fgov.be/RESEARCH/INFORMATICS/info/bootp.html,
сделано Аланом Ампэном (Alain Empain) из Бельгийского Национального Ботанического Сада.
Много полезных типовых сценариев, и хорошая программа на PERL для автоматической генерации
графических меню и сопроводительная HTML документация высокого уровня описания.
http://www.katedral.se/system/elevsyst,
сделано Иоханом Карлстедом (Johan Carlstedt) из Кафедральной Школы Упсала (The Cathedral School of Uppsala),
Швеция. На этот день конфигурация, описанная в этом месте все еще основана на предыдущей версии инструментов удаленной
начальной загрузки. Однако почти все остается применимым, даны лишь некоторые изменения.
http://vitoria.upf.tche.br/~fred/,
на португальском, сделано Фредериком Голдшмидтом (Frederico Goldschmidt) из Университета Пассо Фундо
(Passo Fundo University), Бразилия.
http://www.etse.urv.es/~larinyo,
по-испански, сделано Луисом Арино (Lluis Arino), из Высшей инженерной технической школы
(Escola Tecnica Superio d'Enginyeria), Испания.
Вы можете также послать мне ваш BpBatch сценарий, если Вы хотите,
чтобы я включил его в коллекцию типовых сценариев.