Автор этой книги с бездисковыми компьютерами работает с 1995 года. На Одесской городской телефонной сети большинство компьютеров бюро ремонта являются бездисковыми станциями. Сначала это были компьютеры, загружаемые с дискеты и работавшие в связке Lantastic 6 и Windows 3.11. Потом убрали дисководы, и загрузка компьютеров производилась по сети. Приблизительно через год мы перешли на Novell NetWare 4. Объемы данных росли, нагрузка на сеть увеличилась, сервер баз данных на Novell перестал справляться с нагрузкой, а на новый сервер не выделялось финансирование. На наше счастье, появился бесплатный сервер баз данных под Linux, и после экспериментов было решено перевести на Linux все наше хозяйство. Правда существовала проблема – клиентское программное обеспечение написано под Windows 3.11, и переписывание его заняло бы порядка десяти месяцев. Поэтому приняли решение – организовать загрузку бездисковых клиентов Windows с Linux-сервера. Конечно, можно было бы загружать бездисковых клиентов с помощью MARS, но это потянуло бы за собой установку на клиентах соответствующего программного обеспечения, а наши компьютеры – это, в основном, 486-е и младшие Pentium с 8 Мбайт оперативной памяти.
В качестве операционной системы на бездисковых компьютерах можно использовать Linux или UNIX. Вполне приемлема и MS-DOS. Достаточно просто заставить работать Windows 3.1x Для Windows 95 необходимо достаточно много оперативной памяти и стомегабитная локальная сеть, т. к. Windows вовсю использует свопинг. Что-то более серьезное, типа Windows 98 или Windows NT заставить работать на бездисковых компьютерах не представляется возможным.
Общие вопросы
Процесс загрузки бездисковых компьютеров происходит так. Система состоит из клиентов и сервера. У бездисковых клиентов программа-клиент запрограммирована в микросхеме ПЗУ, которая находится на сетевой карте. На сервере стоит программное обеспечение, которое отслеживает обращения бездисковых клиентов и выдает им соответствующие данные.
Для успешной загрузки по сети бездисковый компьютер должен получить:
• идентификатор, однозначно определяющий этот компьютер;
• образ операционной системы;
• файловую систему, с которой этот компьютер будет работать.
Поскольку в локальной сети обычно несколько сетевых компьютеров, серверу как-то необходимо различать бездисковые компьютеры. Это достаточно просто. У каждой сетевой карты существует свой уникальный адрес (МАС-адрес), который является ее адресом в сети. Первое из требований выполнено.
Получить образ операционной системы позволяет программа, прошитая в ПЗУ, установленном в сетевой карте. Сначала эта программа посылает по сети МАС-адрес и запрос на получение необходимых данных для функционирования сетевого протокола (IP, IPX или NetBIOS – в зависимости от того, какая установлена операционная система и с каким сетевым протоколом она работает). Поскольку мы рассматриваем Linux и IP-протокол, то дальнейший материал касается только IP-протокола.
Протоколы, используемые для получения IP-адреса бездисковым компьютером, называются загрузочным протоколом (ВООТР) и протоколом динамической настройки компьютера (DHCP). Применение протокола DHCP шире, он используется и для динамической настройки обычных компьютеров.
Поскольку первоначально бездисковый компьютер посылает по сети широковещательный запрос, то первый сервер удаленной загрузки, который откликнулся на него, и выдаст бездисковому компьютеру IP-адрес и в дальнейшем произведет его загрузку.
После получения IP-адреса бездисковый компьютер получит образ операционной системы с сервера удаленной загрузки. Для этого используется протокол, имеющий название тривиального протокола передачи файлов (TFTP). Протокол TFTP можно назвать подмножеством протокола FTP, однако в нем нет подтверждения подлинности, и он использует протокол UDP, поскольку код протокола UDP легко разместить в микросхемах ПЗУ.
Передача данных происходит поблочно, после передачи каждого блока сервер удаленной загрузки ожидает подтверждения получения блока. Потерянные блоки после определенного времени ожидания передаются заново. Когда получены все блоки, микросхема ПЗУ сетевой загрузки обращается к образу операционной системы по адресу точки входа.
И последнее. Для нормального функционирования операционной системы компьютеру должна быть предоставлена корневая файловая система (для Linux и UNIX) или сетевые диски для других операционных систем. Linux и UNIX обычно используют сетевую файловую систему (NFS).
Предварительные действия
Что нам надо для того, чтобы создать сервер удаленной загрузки?
• скачать из Интернета пакет Etherboot и/или Netboot (после серии экспериментов рекомендуется Etherboot);
• получить список сетевых карт, установленных в ваших бездисковых компьютерах (тип карты и, желательно, тип микросхемы);
• найти программатор и микросхемы ПЗУ;
• внимательно изучить сопроводительную документацию;
• скачать и установить серверы TFTP и ВООТР, а для бездисковых компьютеров Linux еще и NFS.
Windows-клиенты
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии