Linux
Шрифт:
• и четвертое – физические ограничения сети. Те времена, когда пользователь работал в текстовой консоли, безвозвратно прошли. Теперь ему требуется только графический интерфейс, причем в разрешении 1024x1280, мультизадачность и чтобы все очень быстро работало. Как результат – операционные системы и приложения занимают десятки, а то и сотни мегабайт дискового пространства. Даже в благополучной Америке в массовых масштабах достичь такой пропускной способности Интернета в ближайшее время не удастся. Конечно, определенным вариантом может стать использование твердотельного Flash-диска, на котором находится операционная система, а все остальное (папки и приложения пользователя) – на серверах в сети. Однако стоимость самого маленького твердотельного диска (32
Вот по этим причинам шумиху вокруг сетевого компьютера тихо спустили на тормозах.
Почему мы об этом здесь говорим? Нет, не ради исторического курьеза. Здравые зерна в этой идее имеются. Гранды компьютерного бизнеса пытались протолкнуть сетевой компьютер в массы, "для дома, для семьи". Попытка, заранее обреченная на провал. Но у бездискового или «сетевого» компьютера есть своя законная ниша, в которой он прочно обосновался и вряд ли в ближайшее время ее покинет.
Корпоративный мир. Зачем оператору банка мощный компьютер, если он только вводит цифры и получает информацию (ему и графический интерфейс по большому счету не нужен)? Тем более, что этих операторов в банке сотни. Или кассир в супермаркете, или операторы бюро ремонта в телефонных компаниях. Можно придумать достаточно много работ (те же терминалы в библиотеках), для которых не нужен полноценный компьютер. Что дает использование бездисковых компьютеров для фирм? Первое и самое очевидное – экономия денег. Стоимость даже самого дешевого винчестера порядка 70 долларов, еще десять стоит флоппи-дисковод, тридцать – привод CD-ROM. Итого, экономим около сотни долларов на каждом компьютере. Для средней руки банка прямая экономия составит 5—10 тыс. долларов. Но это еще не все! Поскольку от бездисковых компьютеров много не требуется – на нем выполняются одно-два приложения, то вполне возможно использовать старые компьютеры – 486, Pentium. Работать будут до последнего.
Имеется и косвенная экономия – раз нет жестких дисков, значит они не выйдут из строя, не потеряются данные, меньше надо персонала, чтобы обслуживать компьютеры. И администрирование сети становится проще – если надо поставить новую программу, то она устанавливается на одном компьютере и копируется на сервере по пользовательским папкам. Если завис компьютер – нажал кнопку Reset, и через две минуты все снова работает. Резервирование данных намного упрощается – не надо копировать их с каждого компьютера, достаточно сделать резервную копию сервера.
И, что немаловажно, – безопасность сети и данных. На бездисковом компьютере нет жесткого диска, дисководов, приводов CD-ROM – никто не занесет вирус, не перепишет секретные данные, не сможет установить программное обеспечение, идущее вразрез с политикой компании.
Есть еще один любопытный вариант – совмещение загрузки по сети с загрузкой с жесткого диска. Это позволяет использовать компьютер с разными операционными системами или попеременно в качестве персонального или сетевого компьютера.
Конечно, нет бочки меда без ложки дегтя. Бездисковые компьютеры неприменимы для работы с большими объемами данных – графикой, расчетами, требующими сотен мегабайт данных. Ограничение по пропускной способности сети резко сужает круг используемых операционных систем. Архитектура операционных систем так же может быть не приспособлена для использования при удаленной загрузке.
Автор этой книги с бездисковыми компьютерами работает с 1995 года. На Одесской городской телефонной сети большинство компьютеров бюро ремонта являются бездисковыми станциями. Сначала это были компьютеры, загружаемые с дискеты и работавшие в связке Lantastic 6 и Windows 3.11. Потом убрали дисководы, и загрузка компьютеров производилась по сети. Приблизительно через год мы перешли на Novell NetWare 4. Объемы данных росли, нагрузка на сеть увеличилась, сервер баз данных на Novell перестал справляться с нагрузкой, а на новый сервер не выделялось финансирование.
В качестве операционной системы на бездисковых компьютерах можно использовать 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).