Старые компьютеры в роли графических терминалов (ранее была частично напечатана в журнале "Downgrade" #4) http://ru54.com/~nostalgy http://nostalgy.net.ru ©2012 М.Бабичев (Антиквар) ВВЕДЕНИЕ Во многих организациях, а также у некоторых домашних пользователей сохранились устаревшие, но работоспособные компьютеры, которые, с одной стороны, жаль выбрасывать, а с другой - непонятно, как использовать на практике, потому что современную операционную систему на них не установишь, а полноценно работать с DOS, Windows 3.1 или Windows 95 в настоящее время умеют лишь немногие, да и они зачастую вынуждены обращаться к более современному программному обеспечению. Если же речь идет об образовательных учреждениях - школах, ВУЗах - то здесь использовать старые программы и вовсе трудно, так как учебные программы предусматривают освоение учениками современного софта. Неужели это означает приговор для тысяч доживших до наших дней 486-х и "первых"-"вторых" Pentium'ов? К счастью, нет. И на таких компьютерах, даже не оснащенных жесткими дисками, пользователи могут работать со вполне современными операционными системами, такими как Windows 2003/2008 Server, Windows XP/Vista/7, AltLinux Terminal, EdUbuntu, K12LTSP, SkoleLinux... Для этого старые компьютеры нужно "превратить" в графические терминалы (консоли). Консолью с давних пор называли текстовый дисплей (монитор) и клавиатуру, соединенные через линию связи с сервером ("мэйнфреймом"), на котором, собственно, и работал пользователь. Во второй половине 90-х годов терминальные системы были реализованы на качественно новом уровне: консоль стала графической, появилась мышь, впоследствии терминальные системы стали поддерживать звуковые адаптеры, локальные CD/DVD, USB, принтеры и другое вспомогательное оборудование. Понятно, что с прорисовкой рабочих столов и с передачей на сервер сигналов с клавиатуры и мыши справится даже маломощный компьютер. Зато терминальный сервер должен иметь достаточные ресурсы для того, чтобы несколько человек могли одновременно запускать на нем разные "громоздкие" программные пакеты. Тем не менее, ресурсы такого сервера, как "системы массового обслуживания", используются более рационально, чем имеющие значительную избыточность ресурсы персональных компьютеров. Скажем, для работы 10 пользователей вместо 10 полноценных ПК можно купить один сервер, имеющий лишь в 2-3 раза большие память и быстродействие, чем обычные ПК. Не нужно оснащать терминалы источниками бесперебойного питания - достаточно оснастить таким источником сервер. То есть, терминальная система может быть экономически выгодной. А учитывая, что все данные пользователей хранятся на одном компьютере, такая система может быть выгодна и для администратора: не нужно заменять "посыпавшиеся" жесткие диски или переустанавливать давшие сбой ОС на пользовательских машинах, легче администрировать, следить за порядком, бороться с вирусами, делать резервное копирование... ВАРИАНТЫ РЕАЛИЗАЦИИ ТЕРМИНАЛЬНОЙ СИСТЕМЫ Хорошо, что реализовать терминальную систему можно многими способами. Если один способ не подходит - используем другой: I. Сервер на базе Windows (Server 2000/2003 или XP/7/Vista):
а) Терминал загружает с дисковода RDP-клиент
(Remote Desctop Protocol) DOSRDP II. Сервер на базе Linux с пакетом LTSP (AltLinux Terminal, K12LTSP, EdUbuntu, SkoleLinux):
а) Терминал считывает с дисковода код сетевой загрузки
Etherboot, который с помощью DHCP и TFTP загружает
с сервера LTSP-клиент Наиболее примитивными, но наименее удобными и надежными в повседневном использовании являются способы Iа и Iб. В этих случаях интенсивно используются и изнашиваются дисководы и дискеты, поскольку при каждом запуске терминала в его память загружается DOS, и считывается клиент, занимающий практически весь объем дискеты. Понятно также, что такой запуск терминалов отнимает сравнительно много времени. Да и новые дискеты теперь нечасто встретишь в продаже. Более надежны, удобны и быстры способы загрузки терминальных клиентов с жестких дисков или CD-приводов (способы Iв, Iг, IIб. Жесткие диски и CD-приводы значительно быстрее и надежнее дисководов и дискет. Впрочем, необходимость использования на терминальных клиентах винчестеров или CD-приводов снижают эффект от терминальной системы: терминалы с "винчестерами" шумят и боятся ударов также, как и обычные ПК. Что же касается CD/DVD-приводов - то, в отличие от 3-дюймовых дисководов, они есть не на каждом старом компьютере, а приобретать их отдельно - хлопотно и затратно. Надо учитывать, что на старых компьютерах используется интерфейс IDE, а новые DVD-приводы сейчас имеют интерфейс SATA. Кроме того, не каждый старый компьютер содержит в BIOSе подпрограмму загрузки с CD-диска. Вышеупомянутые варианты позволяют минимизировать усилия по настройке терминального сервера, который должен лишь подключать к себе по сети клиенты с фиксированными IP-адресами, и работать с ними через протокол RDP. Так, в Windows Server достаточно настроить сетевой адаптер сервера, свойства сети, включить службу терминалов и включить пользователям доступ к "удаленному рабочему столу". Сложнее настроить, но приятнее использовать варианты Iд и IIа. С дискет отсуществляется лишь начальная загрузка: на них записан не полноценный терминальный клиент, а только маленький (десятки килобайт) код Etherboot для обеспечения начального подключения терминала к сети. Etherboot быстро считывается с дискеты, почти не изнашивая дисковод. Etherboot обычно используется, если сетевой адаптер не содержит ПЗУ удаленной загрузки (BOOTROM). Если же в вашем распоряжении есть сетевые адаптеры (в том числе встроенные) с BOOTROM, можно реализовать наиболее удобные, надежные и "красивые" варианты запуска терминалов Iе и IIв. К сожалению, PXE содержат далеко не все сетевые платы. В-основном такой способ загрузки доступен для современных компьютеров со встроенным сетевым адаптером (код удаленной загрузки записан в BIOS материнской платы) или с сетевой платой для шины PCI. ТЕРМИНАЛЬНАЯ СИСТЕМА НА ОСНОВЕ WINDOWS Рассмотрим более подробно порядок создания терминальной системы на базе Windows. Прежде всего нужно напомнить, что Windows - платная коммерческая программа, которую нужно лицензировать. ОС Windows Server стоит значительно дороже Windows для рабочих станций. Кроме того, для подключения терминальных клиентов к Windows Server нужно дополнительно приобретать клиентские лицензии (о терминальных лицензиях см. Приложение 4). В случае использования системы WTWare (не Light), возможно, придется купить лицензии и для нее. Тем не менее, даже при таком "полностью легальном" раскладе, терминальная система может быть выгоднее, чем несколько "самостоятельных" ПК, на каждый из которых установлена отдельная лицензионная Windows. Кроме того, к терминалам для Windows Server предъявляются меньшие системные требования, чем к терминалам для системы Linux с LTSP. Но ввиду того, что школы сейчас "переводят" на СПО, область применения терминальных серверов Windows заметно сократилась. Решив строить систему на базе Windows, определимся с выбором версии Windows. Автор испытывал Windows Server 2000 и 2003. Процесс установки и настройки этих систем примерно одинаков. Windows 2000 менее "тяжеловесна" (что может играть роль, если терминальный сервер сравнительно маломощен), однако в ней используется версия 5.0 протокола RDP, которая не позволяет переназначать локальные диски клиентов на сервер (т.н. mapping) без использования сторонних программных средств типа Citrix Metaframe. "Маппинг" нужен, чтобы пользователи могли считывать или записывать файлы, вставив в дисковод своего терминала дискету или CD/DVD-диск, или подключив к нему USB-флэшку. "Маппинг" должен поддерживаться как терминальным сервером, так и терминальным клиентом. Он реализован в бесплатном клиенте WTWare Lite версии 4.5.11, в платном WTWare, в бесплатном Thinstation. Так вот, Windows 2003 Server содержит RDP версии 5.2, которая поддерживает "маппинг", а кроме того, позволяет получить на экране терминала больше, чем 28=256 цветов. Установка и начальная настройка Windows 2003 Server Rus 1. После ввода лицензионного ключа, появится окно "режимы лицензирования". Укажите вариант "на сервер", и выберите число подключений с запасом на будущее, например, если сейчас у вас 10 терминалов, стоит указать 15-20 подключений. 2. Окно "сетевые параметры" - выберите "особые параметры". 3. Протокол Интернета. Свойства. Укажите вручную IP-адрес сервера (сервер должен иметь фиксированный адрес!). В нашем примере - 192.168.0.1, маска сети 255.255.255.0. Если сервер не подключен к внешней сети, шлюз и DNS можно не указывать. 4. После завершения программы установки Windows и установки пакета обновлений R2, Windows запустится в обычном режиме. Если зайти в нее под именем "Администратор", автоматически появится окно "Управление данным сервером" (также его можно запустить через Пуск - Администрирование). Там надо выбрать пункт "Добавить или удалить роль", 5. После этого в окне "Параметры настройки" выбрать "Особая конфигурация". В списке "Роль сервера" будет строка "Сервер терминалов". По умолчанию там стоит "Нет". Измените этот параметр на "Да". После этого будет установлена и настроена служба терминалов. Теперь администратор может зайти на рабочий стол сервера через сеть. Но нужно сделать кое-что еще. 6. Пуск - Администрирование - Управление компьютером. Вкладка Служебные программы - Локальные пользователи - Пользователи. Создайте пользователей для терминалов. Например, по одному на каждый терминал. Так, у нас они называются K1, K2... K10, и заходят в систему без пароля. При создании пользователя поставьте галочки "запретить смену пароля пользователем" и "срок действия пароля не ограничен". Добавьте пользователей в группы "Пользователи" и "Пользователи удаленного рабочего стола", чтобы они могли заходить через терминал. 7. Увы, пользователи без пароля по умолчанию не могут работать через терминалы! Чтобы это исправить, выбираем Пуск - Администрирование - Локальная политика безопасности. Там открываем вкладку Локальные политики - Параметры безопасности. Ищем пункт "Учетные записи: ограничить использование пустых паролей". Вместо "Включен" устанавливаем параметр "Отключен". Вот, собственно и вся первоначальная настройка сервера. Теперь на нем можно работать с терминалов, на которых с дискет целиком загружаются такие клиенты, как DOSRDP или FRWT. Для использования терминалов, у которых начальная загрузка производится с PXE BOOTROM сетевой платы или с дискеты, содержащей код Etherboot, нужно дополнительно настроить на сервере службы DHCP и TFTP, и поместить в публичный каталог TFTP-сервера файлы терминального клиента WtWare или Thinstation. Но об этом позже... Для Windows 2000 Server Rus порядок установки несколько иной. Там при установке также нужно выбрать режим лицензирования "На сервер". После этого в окне "Компоненты Windows 2000" нужно поставить галочки на компонентах "Лицензирование служб терминалов" и "Службы терминалов". Затем, в окне "Установка служб терминалов" выберите "Режим сервера приложений". В следующем окне следует выбрать "Разрешения группы пользователей Windows 2000". Что касается сетевых параметров - нужно, как и для Windows 2003, выбрать "Особые параметры" сети... ТРЕБОВАНИЯ К ТЕРМИНАЛЬНЫМ КЛИЕНТАМ, СЕРВЕРУ И СЕТИ Рассмотрим теперь простейший вариант терминального клиента. Аппаратные требования к клиенту таковы. Минимум 486-й процессор с частотой желательно не менее 66 МГц, а лучше Pentium. Оперативная память - не менее 8 Мб для DOSRDP и FRWT, и не менее 16 Мб для WtWare. Мышь для COM-порта или PS/2. Видеоадаптер минимум ISA-шный с 512 Кб видеопамяти, что позволяет получить разрешение экрана от 640х480 (DOSRDP) до 800х600 (FRWT) при 8-битном цвете (256 цветов). Но лучше поставить PCI-ную видеокарту с 1-2 Мб памяти. Нужно заметить, что для "школьной" системы AltLinux Terminal 5 необходима PCI-ная видеокарта с 1 Мб памяти, как минимум. Сетевой адаптер может быть ISA-шным или PCI-ным, если терминалы будут работать с Windows Server, и ТОЛЬКО PCI-ным, если терминалы подключаются к AltLinux Terminal. Наряду со старыми компьютерами в роли "тонких клиентов" могут успешно использоваться и новые машины с процессорами Intel Core i5, гигабайтами ОЗУ, гигабитными сетевыми платами и т.д. Но надо учесть, что многие терминальные клиенты (например WTWare Light) не поддерживают современное "железо". Что касается необходимой скорости сети, то для 10 терминалов, работающих с Windows Server, может быть достаточно 10-мегабитной сети. Но для системы Altlinux Terminal LTSP 10-мегабитной сети явно недостаточно даже для 5-7 скромных терминалов (с низким разрешением экрана, без звука). Поэтому, если у вас больше 4-5 терминалов, и если разрешение дисплея у терминала превышает 640х480, используйте 100- а лучше 1000-мегабитную сеть. Компромиссным решением может быть разделение сети из десятка машин на две части: одна с 10(100)-мегабитными адаптерами, другая с 100(1000)-мегабитными. Обе части подключаются к общему свитчу. Если 10-мегабитная сеть коаксиальная, подключить ее к коммутатору для "витой пары" можно через старый "универсальный" хаб, оборудованный BNC-разъемом. Если вам попадется такое устройство - не выбрасывайте его! Оно может работать, как "медиаконвертер". Клиент должен быть оснащен дисководом 3.5", CD-приводом, либо маленьким жестким диском (лучше всего твердотельным - картой памяти Compact Flash, подключаемой к разъему IDE через переходник). Разумеется, если клиент оборудован сетевым адаптером с загрузчиком PXE в ПЗУ, это все не нужно. При определении конфигурации сервера для системы из 10 терминалов, в случае с Windows 2003 Server можно ограничиться Pentium IV с 1 Гб ОЗУ. А для системы Altlinux Terminal желательно иметь процессор Intel Core i5 и 4 Гб ОЗУ. ОПИСАНИЕ РАЗЛИЧНЫХ ТЕРМИНАЛЬНЫХ КЛИЕНТОВ DOSRDP. Желательно взять DOSRDP XP версии 2.0 или 2.4. Это наиболее неприхотливый клиент, запускающийся из-под ДОС, и работающий с сетью через пакетный драйвер сетевого адаптера. Дистрибутив DOSRDP содержит программу установки SETUP.EXE, работающую под Windows, и позволяющую на основании указанных вами параметров создать готовую загрузочную дискету. Впрочем, можно обойтись и без SETUP. Скопируйте на загрузочную дискету или в отдельный каталог жесткого диска следующие файлы из дистрибутива:
1. пакетный драйвер вашей сетевой платы Также создайте файл RUN.BAT для запуска клиента, в которй включите, как минимум, следующие строки:
MOUSE
Рис.1 Заставка DOSRDP Если все нормально, при запуске RUN.BAT загрузится DOSRPD, который покажет на экране графическую заставку (Рис.1), а затем - удаленный рабочий стол Windows. Но перед этим надо отредактировать TCP.CFG. В нашем примере он будет иметь такой вид:
[COMMON] Проверьте адреса клиента и сервера, маску сети. Установите разрешение и глубину цвета, соответствующие возможностям ваших видеокарты и монитора. Скажем, для ISA-шной карты стоит начать с разрешения 640x480, а colordepth=4 (16 цветов) или 8 (256 цветов). colordepth=16 есть смысл ставить лишь для PCI-ных видеокарт при использовании системы Windows 2003. Строки keyboard и port менять не надо. FRWT. В компьютерном классе с 10 машинами типа 486DX2-66 с 16 Мб ОЗУ и ISA-шными видеокартами с 512 Кб памяти, клиенты DOSRDP работали недостаточно быстро, курсоры мышей перемещались по экранам с неприятной задержкой. Оказалось, что клиент FRWT 2.01, представляющий из себя загрузочную дискету с урезанным специализированным Linux'ом, обеспечивает заметно лучшее быстродействие. В отличие от DOSRDP, FRWT бесплатен, на него не нужно получать лицензию. Дистрибутив FRWT представляет из себя самораспаковывающийся или обычный образ дискеты 1.44 Мб. После распаковки образа на дискету, в ее корневом каталоге можно увидеть несколько файлов (help, licence, load, ramimage, vmlinuz, syslinux.cfg, term0.cfg, term1.cfg, logo.dis, logo.lss, f8.psf и ldlinux.sys). Нам нужно отредактировать файл term0.cfg. Его строки снабжены комментариями на русском языке, поэтому подробно их рассматривать нет необходимости. FRWT автоматически определяет сетевой адаптер, но если используется адаптер типа NE2000, ему необходимо установить адресс ввода-вывода 300h. Если перемычек на сетевой плате нет, значит адрес задается с помощью утилиты конфигурации адаптера, работающей в DOS. Нужно найти в утилиту для вашей модели сетевой платы (определяется надписью на ее главной микросхеме, например UM9003, UM9008, W89C904F, RTL8019...).
Рис.2 Заставка FRWT WtWare Light. FRWT зарекомендовал себя, как весьма удачный терминальный клиент. Однако, и ему свойственны некоторые недостатки. Во-первых, он занимает всю дискету, и при каждом запуске клиента дисковод должен прочитать дискету целиком, что вызывает повышенный износ дисководов и дискет, и занимает значительное время. Во-вторыых, как говорилось ранее, FRWT не поддерживает т.н. "маппинга", или "подключения" дисков терминала к серверу, чтобы пользователи могли работать со своими съемными дисками. Этим требованиям соответствует система WtWare - результат дальнейшего развития FRWT. Однако, WtWare не является бесплатной, ее нужно лицензировать. Но существует бесплатная версия клиента - WtWare Lite. К сожалению, "маппинг" локальных дисков можно включить, по сути, лишь в одной версии WtWare Lite - 4.5.11. В отличие от ранее рассмотренных терминальных клиентов, WTWare не загружается с диска терминала. WTWare рассчитан на загрузку самого себя через сеть. Это позволяет упростить терминалы. В идеале они вообще могут не иметь никаких дисков, но их сетевые адаптеры должны быть оснащены PXE BOOTROM - микросхемой ПЗУ, в которую записан код PXE (подробнее о PXE см. Приложение 2). Однако в старых сетевых платах, обычно установленных в 486-х или "Пентиумах", микросхемы BOOT ROM, если они и есть, содержат не PXE, а иной загрузочный код - RPL, предназначенный для популярного в 90-х годах способа сетевой загрузки бездискового компьютера с сервера Novell Netware в сети IPX. Что явно не годится для решения нашей задачи в сети TCP/IP. Но выход есть: используются дискеты, на которые записан небольшой (десятки килобайт) код Etherboot, загружающийся вместо кода из ПЗУ сетевого адаптера, и работающий аналогично. Образ дискеты с Etherboot (EB-NET) для вашей модели сетевого адаптера можно загрузить с сайта http://rom-o-matic.net. Но лучше использовать уже созданные универсальные загрузчики Etherboot, автоматически определяющие достаточно большое количество сетевых адаптеров для шин ISA и PCI. Для подключения к Windows Server желательно использовать Etherboot версии 5.2.2, а для AltLinux Terminal - версии 5.4.0. Установка и настройка терминальной системы, основанной на WTWare или WTWare Lite, осуществляется следующим образом. Прежде всего, нужно запустить на машине с Windows Server службы DHCP и TFTP. В Windows для этого есть штатные серверные приложения, но мы предпочитаем использовать стороннюю бесплатную программу Tftpd32, которая весьма проста в настройке. Ее можно установить на отдельном компьютере, что немного снизит нагрузку на сервер терминалов. Впрочем, при небольшом количестве клиентов целесообразно запускать TFTPD32 прямо на терминальном сервере. Рассмотрим Tftpd32 версии 3.35 с англоязычным интерфейсом. Размер пакета около 600 Кб. Распакуйте его в отдельный каталог сервера, например, C:\Tftpd32. Запустите программу (файл TFTPD32.EXE). В окне программы в строке "Current Directory" укажите путь к корневому каталогу терминального сервера. В этом каталоге будут находиться файлы, доступные терминальным клиентам. Например, C:\Tftpd32\TFTP_DIR. В строке "Server Interface" выберите адрес сетевого адаптера, к которому подключены терминальные клиенты. Ниже располагаются вкладки: "Tftp Server", "DHCP Server" и "Log Viewer". На вкладке "DHCP Server" нужно настроить следующие параметры:
- IP Pool starting address - начальный адрес пространства
IP-адресов, которые DHCP-сервер будет "раздавать" клиентам.
В нашем примере - 192.168.0.2 Затем следует нажать кнопку "Save" справа от вышеописанных строк. Настройки сохранятся в файле TFTPD32.INI в каталоге C:\Tftpd32. Внимание, если файл TFTPD32.INI имеет атрибут "Read Only" (только чтение), настройки не сохранятся. Этот атрибут надо убрать. Внизу окна программы нажмите кнопку "Settings" для осуществления дополнительных настроек. В окне настроек в группе Global Settings поставьте галочки напротив пунктов TFTP Server и DHCP Server, прочие галочки следует убрать. Будут работать только выбранные службы. В группе "DHCP Options" все по умолчанию - впрочем, галочки напротив пунктов "ping address before assignation" и "persistant leases" ("пинговать IP-адреса до их выделения" и "постоянное присвоение адресов") можно убрать. Напротив строки "Bind DHCP to this address" должен стоять адрес сетевого адаптера, к которому подключены терминалы (в нашем примере 192.168.0.1). В группе "Advanced TFTP Options" нужно поставить галочку напротив пункта "PXE Compatibility" ("совместимость с PXE"). При этом галочка возле пункта "Option negotiation" автоматически уберется. Прочее по умолчанию. В пункте "Bind DHCP to this address", отмеченном галочкой, также должен стоять адрес адаптера, подключенного к сети терминалов. Теперь перейдем к настройке WtWare Lite. Дистрибутив этой программы распространяется в виде файла с именем wtware.lite.4.5.11.ru.zip размером примерно 10 Мб. В этом архиве в каталоге /wtware.net/lite/4.5.11/ есть файл wtshell.nbi размером 1988096 байт. Его нужно скопировать в корневой каталог сервера TFTP (в нашем примере C:\Tftpd32\TFTP_DIR). Также в корневой каталог надо скопировать подкаталоги CONFIGS и PACKAGES из дистрибутива WtWare Lite. В каталоге CONFIGS содержится файл 00.00.00.00.00.00.wtc. Это пример файла конфигурации для терминального клиента. Система позволяет создать для каждого компьютера-терминала собственный файл конфигурации, имя которого должно соответствовать аппаратному MAC-адресу сетевого адаптера терминала (подробнее о MAC см. Приложение 1). Например, аппаратный адрес ISA-шного адаптера Realtek RTL-8019 52:54:4C:04:86:03. Следовательно, файлу конфигурации терминала с таким адаптером нужно дать имя 52.54.4C.04.86.03.wtc и поместить его в подкаталог /CONFIGS корневого каталога сервера TFTP. Подробное описание настроек конфигурационного файла содержится в документе CONFIG.HTM в подкаталоге DOCS дистрибутива WtWare Lite. Поэтому не будем их подробно рассматривать. Приведем лишь пример файла, который использовался в нашем классе на терминале номер 1:
win2kIP = 192.168.0.1 При подключении клиента K1 к терминальному серверу с адресом 192.168.0.1, на экране появляется окно входа в систему, в котором уже введено имя пользователя user1, который может входить без пароля. Просто нажав кнопку "Ok", пользователь заходит в Windows. Далее в файле указаны настройки мыши и монитора. Мышь без колесика подключена к порту COM1. Разрешение экрана 800х600, глубина цвета (bpp) 8 бит или 28=256 цветов. Строка floppy = on позволяет переназначать дисковод клиента на сервер. Эта возможность включена лишь в версии 4.5.11 WtWare Lite. Подробнее - см. Приложение 3. Строка redraw_delay определяет интервал (в миллисекундах) между перерисовками экрана. Уменьшение периода делает работу более комфортной, но повышает загрузку сети и сервера. 100 мс - это разумный компромисс.
Теперь осталось лишь приготовить загрузочные дискеты
с образами Etherboot 5.2.2. Для этого можно
воспользоваться WinImage или бесплатной программой
RAWRITE.EXE (работает в DOS и Windows 95/98). Запустив
RAWRITE, введите имя файла с образом (например,
eb-net.dsk), а затем букву дисковода (a). Если вы
работаете в Linux, образ Eherboot можно записать на
отформатированную дискету (она должна быть в это время
размонтирована) командой вида:
Начав загружаться с такой дискеты, на экране терминала
увидим надпись:
- горит ли индикатор линка с сетью на сетевой плате Но допустим, адаптер и сеть исправны, DHCP-сервер в сети обнаружен. В таком случае на экране появится что-то вроде: ...Me: 192.168.0.5, Server: 192.168.0.1, Gateway 192.168.0.1
То есть, загрузчик подключился к DHCP-серверу и тот
присвоил терминалу временный адрес 192.168.0.5. После
этого, если сервер TFTP запущен и настроен, на экране
возникнет сообщение:
- Настроить видеокарту и мышь Нам понадобится пункт "Настроить видеокарту и мышь". Нужно выбрать наиболее подходящий драйвер для видеокарты клиента. Поддерживаются многие модели видеокарт. Стоит начать с универсального драйвера VESA. Затем выбирают тип мыши, разрешение экрана и количество цветов. После чего терминал тестирует видеоадаптер в выбранных разрешении и цветности. На экране появляются движущиеся вертикальные цветовые полосы. В конце теста система определяет, сколько секунд заняло его выполнение. Выбирая разные драйверы видеокарты, можно определить, какой из них обеспечивает наименьшее время выполнения теста, то есть, максимальное быстродействие видеосистемы. Найденные оптимальные настройки следует вручную записать в файл конфигурации терминала на сервер. Если такой файл имеется, WtWare, если не нажимать в ходе его запуска клавишу "Del", отобразит на экране приглашение входа в Windows и долгожданный рабочий стол. LTSP. В последнее время многие школы, где использование терминальных систем наиболее целесообразно, принудительно переводятся на свободное программное обеспечение. Помимо школ, многие другие бюджетные и некоммерческие организации также не могут позволить себе покупку лицензии на Windows Server. К счастью, систему графических терминалов можно организовать и на базе бесплатного Linux. Наиболее популярный способ создания терминальной системы Linux - установка на сервер пакета LTSP (Linux Terminal Server Project). На своем опыте автор этой статьи убедился, что многолетний стаж работы с DOS и Windows отнюдь не обеспечивает легкого и безболезненного перехода на т.н. NIX-системы (здорово помогает в этом деле файловый менеджер MC - Midnight Commander, linux-"клон" старых добрых Norton Commander и FAR. Чтобы запустить MC, достаточно ввести в консоли команду "mc"). Те проблемы которые возникают у "виндузятника" при начале работы с Linux, ему приходится, как правило, решать самому, путем проб, ошибок и накопления собственного драгоценного опыта. Ведь "линуксоиды" в большинстве своем отнюдь не горят желанием объяснять "перебежчику из вражьего стана" какие-то якобы "тривиальные" вещи. Так, например, поставив на сервер вместо Windows 2003 AltLinux Terminal 4, я обнаружил, что те 486-е терминалы, которые хорошо работали с Windows, запуская с дискет Etherboot 5.2.2, упорно не желают подключаться к AltLinux. Попытки "гуглить" в интернет-поисковике ответ на возникающую ошибку, давали что-то невразумительное, вроде "тарбол чрута". Хочешь послать подальше бывшего "виндузятника", надоедающего вопросами? Ответь ему при случае: "создай тарбол чрута".
Итак, "курение мануалов" оказалось малопродуктивным.
Сетевой загрузчик Etherboot 5.2.2 подключался к машине
AltLinux по сети, через DHCP получал IP-адрес, по TFTP
скачивал терминальный клиент отсюда: Kernel Panic - это критическая системная ошибка в Linux, нечто вроде BSOD ("синего экрана смерти") в Windows. Причина ошибки в том, что клиент не может подключиться к серверу при помощи службы NFS ("сетевая файловая система"). А подключиться ему надо, чтобы сменить свой временный корневой каталог на некий каталог, находящийся на сервере. Как видите, терминальный клиент в Linux работает совсем не так, как в Windows. Он не является изолированной системой, общающейся с сервером через терминальный протокол. У него с сервером общая распределенная сетевая файловая система. Более того, "сервером" (X-сервером, взаимодействующим с консольным оборудованием) является терминал, а мощная машина на базе Linux выступает в роли "клиента". Есть от чего впасть в "когнитивный диссонанс"... Пытаясь решить проблему с помощью более удачного загрузчика, я нашел Etherboot 5.4.0. Эта версия EB-NET весьма удачно эмулирует PXE-код сетевой платы. Поэтому AltLinux отдает терминалу для загрузки не nbi-образ клиента (nbi.img), а PXE-образ, хранящийся в файле initrd.gz, который лежит в том же каталоге, что и nbi.img. С initrd.gz процесс запуска клиента пошел немного дальше, но "кернел паник" снова возникла. На этот раз по причине проблем с сетевым адаптером. Попробовал загрузить систему со специального CD-диска, образ которого лежит на сервере в каталоге /opt/ltsp-boot.iso. Та же проблема. Возникла мысль: похоже, этот клиент просто не поддерживает ISA-шные сетевые платы. Заменил 486-ю материнскую плату без PCI на плату Pentium (поставив те же 16 Мб ОЗУ), установил в нее PCI-ную 10-мегабитную плату Realtek RTL-8029 (именно ее, потому что на ней есть сетевой разъем BNC, а в классе была древняя коаксиальная сеть)... Процесс загрузки пошел еще дальше. Загрузилась обычная текстовая консоль Linux. X-сервер, однако, не запустился. Пришлось поставить вместо ISA-шной видеокарты с 512 Кб памяти PCI-ную с 1 Мб памяти. И на сей раз терминал заработал в графическом режиме! О решении других проблем, возникавших при использовании Altlinux Terminal, см. Приложение 5. Итак, терминальная система на базе "школьного" AltLinux Terminal была успешно запущена. Поставив вместо RTL-8029 современный сетевой адаптер Intel с PXE, я обнаружил, что терминал загрузился через PXE без помощи дискеты. Altlinux Terminal действительно поддерживает загрузку бездисковых терминалов "прямо из коробки". Другой вопрос, как это реализовано. Возрастают требования к клиентам. Терминал должен быть оснащен сетевой платой и видеоадаптером для шины PCI. Следовательно, 486-е материнские платы, не оснащенные этой шиной, не годятся. Конечно, это если решать проблему "в лоб". Вероятно, поработав с файлом initrd.gz, сведущий в Linux человек может усовершенствовать штатный образ клиента, заставив его работать с сетевыми адаптерами наподобие NE-2000, и ISA-видеокартами. Впрочем, радости от такого клиента будет немного, потому что терминальный клиент под Linux работает медленнее клиента под Windows. Но попробовать все же стоит. Также есть смысл испытать и другие Linux-дистрибутивы, оснащенные LTSP, например, K12LTSP (K12Linux на базе Fedora), EdUbuntu или Skole Linux (на базе Debian). ОПИСАНИЕ РАЗЛИЧНЫХ ТЕРМИНАЛЬНЫХ КЛИЕНТОВ В данной статье было показано несколько более или менее простых вариантов реализации терминальной системы, которая позволяет и поныне успешно использовать давно устаревшие компьютеры, выпущенные в 90-х годах. Начиная с 486-х машин с 8 Мб оперативной памяти и ISA-шными сетевыми и видеоадаптерами. Впрочем, наряду со "старичками" могут успешно эксплуатироваться и клиенты на основе современных "машин". Читатель наверняка уже убедился, для для создания и использования терминальной системы не требуются какие-то особенно глубокие познания, главное понимать, какими "инструментами" можно решить поставленную задачу. И если какой-то "набор инструментов" не подходит, можно взять другой. Разумеется, далеко не все варианты терминальных систем были описаны. Так, например, не была рассмотрена мощная коммерческая система Citrix Metaframe. Хотя для нее и существуют DOS-клиенты. Дело в том, что возможности Citrix были незаменимы в эпоху Windows NT 4.0 TSE, а сейчас зачастую вполне можно обойтись штатными средствами терминальных операционных систем. Также мы не обсуждали RDP-клиенты для Windows 9x и Linux, VNC-клиенты для работы в Linux из Windows, FreeNX (менее "ресурсоемкое" средство, чем LTSP), SSH... Ведь наша задача более узкая - предоставить начинающему (не очень хорошо знающему Linux) администратору наиболее простые средства для создания терминальной системы, основанной в первую очередь на старых и/или бездисковых "тонких" клиентах. Побочный эффект от внедрения терминалов - экологический и ресурсосберегающий. Старые компьютеры в роли "тонких клиентов" уже не подвергаются беспощадной, но неоправданной утилизации, которая является расточительством и варварством по отношению к природе. В наше время, когда все больше внимания уделяется экологии и энергосбережению, дешевые, долговечные, бесшумные и потребляющие мало энергии терминальные системы особенно актуальны. Тормозит их распространение главным образом недостаток популярной литературы на тему графических терминалов. Хочется надеяться, что данное руководство поможет заполнить этот пробел.
Антиквар
Важное дополнение от 10.11.2011 Некоторые из указанных в статье программных продуктов найти в сети стало проблематично. Поэтому они размещены на нашем сайте http://nostalgy.net.ru, в разделе "Сети, связь, Интернет" Приложение 1. Некоторые вопросы, касающиеся сетевой аппаратуры
MAC-адрес уникален для каждой сетевой платы и
состоит из шести пар 16-ричных цифр. Узнать его
можно разными способами: Если MAC-адрес, который отображается пакетным драйвером или кодом Etherboot, выглядит наподобие 00:00:00:00:00:00, это говорит о том, что драйвер не подходит, либо адрес и прерывание сетевой карты заданы неверно (возможен конфликт адресов или прерываний, чтобы его разрешить, следует запустить в DOS программу настройки и тестирования этой сетевой платы). Сеть в этом случае будет недоступна. Бывает, что кабель к сетевой плате подключен, а светодиод "Link" ни на ней, ни на хабе не светится. Возможно, неисправен кабель или разъем. Но порой бывает, что в настройках сетевой платы, если она имеет разные сетевые разъемы (RJ-45, BNC, AUI), выбран другой сетевой интерфейс, например, BNC вместо витой пары. Либо жестко выставлен такой режим витой пары (10 или 100 Мбит, полный дуплекс или полудуплекс), который не поддерживается хабом. Еще бывает (на старых хабах), что вы подключили кабель к порту, который называется "Uplink") и предназначен для подключения к хабу верхнего уровня. К такому порту, впрочем, можно подключить сетевую плату - но через "перекрестный", "crossover" (а не "прямой") кусок витой пары. Учитывая, что терминалы бывают весьма древними, они могут подключаться к сети через "тонкий коаксиал". Такой сегмент сети в виде общей шины не должен нигде иметь разрывов, а на концах сегмента должны стоять сопротивления - "терминаторы" по 50 Ом. Если измерить в любой точки сети сопротивление между оплеткой и центральной жилой кабеля, оно должно быть близко к 25 Ом (мерить можно и при работающих компьютерах). Это означает, что сегмент сети на коаксиале электрически исправен. Приложение 2. Процесс сетевой загрузки терминального клиента при помощи PXE-кода в ПЗУ сетевой платы PXE (Preboot eXecution Environment, "пиикси") содержат многие современные 100/1000-мегабитные сетевые адаптеры для шины PCI - как отдельные, так и встроенные в материнскую плату. Работает PXE следующим образом: 1. При включении питания, BIOS компьютера-терминала выполняет тест системы, а затем ищет дополнительные ПЗУ, с помощью которых можно произвести загрузку (помимо подпрограмм загрузки с дисковода, CD-диска или винчестера IDE, встроенных в основной BIOS, существуют подпрограммы, записанные в микросхемы ПЗУ, установленные на дополнительные платы, такие как контроллер SCSI или сетевой адаптер). Найдя ПЗУ в сетевом адаптере, BIOS передает ему управление. 2. Код загрузки из ПЗУ сетевого адаптера инициализирует (запускает) сетевой адаптер, и отправляет в сеть широковещательный запрос к DHCP-серверу. Этот сервер служит для автоматической выдачи компьютерам сетевых реквизитов. DHCP назначает терминальному клиенту временный IP-адрес, указывает ему маску сети, адреса шлюза и сервера DNS... 3. Затем код загрузки делает запрос к TFTP-серверу. TFTP (Trivial FTP) - сильно упрощенный вариант протокола FTP, задача которого - передать по сети файл с сервера на клиент. Терминал скачивает в свою оперативную память из корневого каталога сервера TFTP образ терминального клиента. Какой файл передавать клиенту - указано в настройках сервера TFTP. Размер этого файла не должен превышать 64 Кбайта. Поэтому загрузка терминального клиента производится в два этапа. На первом этапе с сервера загружается маленький предварительный загручик (bootstrap) - например, файл thinstation.nbi.zpxe. Предварительный загрузчик должен уметь работать с сетевым адаптером клиента; когда предзагрузчик получает доступ к сети - он загружает сам образ терминального клиента (например, thinstation.nbi) размером 2-6 Мб и более. 4. Терминал запускает загруженный образ клиента. Клиент должен уметь работать с сетевым адаптером, видеокартой, клавиатурой и мышью терминального клиента. То есть, он должен или автоматически определять это оборудование, или дополнительно считывать файл конфигурации из каталога TFTP-сервера. Если это оборудование работает нормально, клиент подключается к терминальному серверу, и пользователь видит в графическом режиме приглашение входа в систему. Введя имя и пароль, он получает доступ к "удаленному рабочему столу" Приложение 3. Использование дисководов терминальных клиентов в WTWare Для того, чтобы работать со своей дискетой, пользователь должен вызвать специальное меню, переместив указатель мыши в нижний правый угол экрана терминала, удерживая при этом левую клавишу Ctrl (см. строку infobox = lctrl в файле настроек клиента WtWare).
Рис. 3. Меню для подключения дискет в WtWare Lite В меню, помимо прочего, присутствует кнопка с надписью "подключить", нажав которую пользователь "монтирует" свою дискету, которая будет видна ему в Windows, как сетевой диск. Перед извлечением дискеты ее нужно таким же способом "размонтировать".
Рис. 4. Дисковод терминала в окне "Мой компьютер"
Чтобы было удобнее работать с дискетой, вставленной в
дисковод терминала, ей следует назначить букву диска. Это
удобно делать в файловом менеджере FAR. Нажав комбинацию
клавиш Alt-F1 или Alt-F2, вызываем в левой или правой панели
список дисков, в котором также присутствует пункт "network".
Выбрав его, увидим примерно такой список: Приложение 4. Лицензирование терминального сервера Windows
К сожалению, терминальный сервер Windows требует приобретать
лицензии на подключаемые к нему терминалы. Чем больше терминалов
предполагается использовать, тем дороже лицензия. Лицензии не
нужны только в том случае, если терминальный сервер будет
использоваться для удаленного администрирования (в этом случае
допускается не более двух терминальных подключений). Терминальный
сервер Windows 2000/2003 напоминает программы, распространяемые
по лицензии shareware. Если терминальная лицензия не приобретена,
система отсчитывает определенное количество дней (Windows 2000 -
90 дней, Windows 2003 - 120), после чего терминалы перестают
работать. Рассказывают, что некоторые "админы", использовавшие
Windows Server неофициально и в некоммерческих целях, и потому
не желавшие покупать какие-то терминальные лицензии, поступали
гениально просто: перед установкой Windows Server они переводили
часы компьютера далеко вперед, например, в 2020-й год. После
того, как все терминалы поработают с сервером, и сервер
выдаст угрожающее сообщение типа... Приложение 5. Решение некоторых проблем с Altlinux Terminal 4.x/5.x Те неискушенные пользователи Linux, которые установили Altlinux Terminal на школьный сервер в качестве готового терминального решения, могут, подобно мне, сталкиваться с некоторыми проблемами, решение которых не "лежит на поверхности". Поэтому я хотел бы поделиться здесь своим небольшим опытом использования этой системы.
Привязка сетевых интерфейсов
Восстановление загрузчика системы Следует добавить, что изменить lilo.conf вы сможете только из-под учетной записи администратора (root-а). Зайти под root-ом в Altliunx Terminal можно только из-под текстовой консоли. То есть, запустите консоль (терминал), в ней укажите команду su, и введите пароль пользователя root. Теперь в этой консоли вы можете делать все без ограничений. Кстати, чтобы посмотреть информацию о разделах диска (узнать, на каком разделе корень файловой системы), введите в консоли команду df.
Дополнение от 07.09.2012
Дополнение от 21.09.2012
Обеспечение приемлемого быстродействия терминальной системы LTSP Немного уменьшить нагрузку на сеть и сервер можно, понизив разрешение дисплеев у клиентов. Для этого на сервере запустите Меню - Настройки - Центр управления системой, там зайдите в раздел Сеть - Терминалы LTSP. В строке "default" показаны настройки, которые по умолчанию используются всеми клиентами. Уберите там галочку напротив пункта "Звук", чтобы передача звука не загружала сеть. Установите разрешение 1024х768 или 800х600. Надо учесть, что при разрешении 800х600 и меньше часть окон в приложениях не вмещается в экран, что весьма затрудняет работу пользователей. При изменении разрешения возможны и другие казусы. Так, у нас на некоторых клиентах с 17-дюймовым ЖК-монитором Acer при разрешении 1024х768 (не при 800х600!) картинка рабочего стола сдвигалась вправо, а "лишняя" часть картинки уходила в левую часть экрана. Пришлось оставить 800х600.
Простой запуск Windows-программ в эмуляторе Wine
Восстановление рабочей конфигурации "иксов" (Xorg) Вообще, терминальная система на базе Altlinux Terminal, ввиду неудачной ее реализации, разочаровала. Встроенные сетевые адаптеры Atheros на базе чипа RTL-8169 с Altlinux не заработали - пришлось искать другие сетевые адаптеры для шины PCI-E (на многих новых компьютерах шины PCI уже нет). Опыт показал, что использование более 5 терминальных клиентов в одном 100-мегабитном сегменте сети нецелесообразно. Кроме того, размер шрифтов на экранах разных клиентов получался неодинаковым, как правило - слишком мелким, а настроить все шрифты с помощью штатных улитит настройки KDE и QT3/4 не удалось. По причине вышесказанного, а также ввиду недосточной квалификации в области Linux-систем у администратора и тем более, у преподавателей и учеников, было решено вернуться к терминальному серверу Windows.
Дополнение от 10.10.2012 "Клиентские" версии Windows, начиная с XP, подобно "серверным" версиям позволяют пользователю подключаться к их рабочему столу через сеть по протоколу RDP. Но эта возможность ограничена. Предусмотрено только одно терминальное подключение, при этом локальная консоль компьютера выключается! Путем замены DLL-файла и внесения изменений в реестр ограничение на число терминальных клиентов снимается. Подробно об использовании "клиентских" Windows в роли терминального сервера можно узнать в статье: Как из Windows 7/ Vista /XP сделать Терминальный Сервер! К сожалению, не каждый дистрибутив Windows XP позволяет подключаться 10 и более пользователям даже после переделок, рекомендованных в статье. В моем случае "не повезло", и при входе в систему Windows двух терминальных пользователей (плюс третий - локально), система запрещает новые подключения, не выводя никаких пояснений. После ввода пользователем имени и пароля на экране снова появляется окошко входа в систему (если вы настроили автоматический вход в систему клиента WTWare, попытки авто-ввода логина и пароля будут постоянно безуспешно повторяться, что проявится миганием экрана клиента). К счастью, в вышеупомянутой статье указано, хотя и не рекомендовано решение проблемы с помощью патча TSFree 1.1; в моем случае он успешно сработал.
Дополнение от 13.10.2012 - 20.10.2012 После модернизации нашего класса в нем оказалось 10 современных бездисковых компьютеров с 2-ядерными процессорами Intel, 2 Гб ОЗУ и "гигабитными" сетевыми адаптерами RTL8110CS на шине PCI Express, с ПЗУ удаленной загрузки. Для того, чтобы подключить эти машины к терминальному серверу Windows, нужно было обеспечить загрузку терминалов с помощью BootROM (это неизбежно, поскольку на новых компьютерах уже нет "устаревших" флоппи-дисководов). При решении этой задачи, как всегда, возникли различные "неожиданные" проблемы, о решении которых читателям, возможно, захочется узнать. Оказалось, что недостаточно просто подключить в ту же сеть новый компьютер, с прошивкой PXE в сетевой плате, вместо старого - с кодом Etherboot на дискете. Новый компьютер посредством BootROM успешно подключается к DHCP-серверу, но загрузка образа терминального клиента (файл wtshell.nbi) прерывается с сообщением, что файл слишком велик, и не помещается в памяти.
Тут следует сказать о механизмх удаленной загрузки (или
разновидностях загрузочных кодов): наиболее известны
etherboot (NBI) и впоследствии возникший на его
основе pxelinux (gPXE). Ранее упомянутый сайт
http://rom-o-matic.net/
позволяет генерировать обе разновидности кодов для
дальнейшей прошивки в ПЗУ сетевых адаптеров. Кроме
того, загрузочные коды можно записать: Кроме кода начальной загрузки, "встроенного" в клиент, NBI и PXE различаются файлами, которые после загружаются в терминал с сервера. NBI позволяет сразу загрузить весь образ терминального клиента в одном файле (например, wtshell.nbi - для WTWare). Но PXE-код может загрузить лишь маленький файл - предварительный загрузчик (bootstrap) размером не более 64 Кб. А уже тот берет на себя управление компьютером, и загружает "большой" файл с образом терминального клиента. "Исторически сложилось" так, что NBI чаще используется при загрузке с дискет и в системах Windows, а PXE - преимущественно при загрузке через сетевые адаптеры с ПЗУ и в системах Linux. Впрочем, это зависит от настроек сервера. Так, в зависимости от версии Etherboot на дискете, Altlinux Terminal выбирает либо nbi, либо pxe-вариант загрузки терминального клиента. На сервере Windows вы также можете выбирать, nbi или pxe-файлы отдавать клиенту, загружаемому с помощью BootRom. Это достигается тем, что современные клиенты Thinstation и WTWare позволяют использовать оба варианта сетевой загрузки. Таким образом, при использовании PXE BootROM, в настройках сервера DHCP нужно сослаться на маленький файл предварительной загрузки, который будет прежде всего "предлагаться" клиенту. "Предзагрузчик" в свою очередь будет ссылаться на образ "большого" клиента. Где взять "предзагрузчик"? Например, в дистрибутиве Thinstation-2.2.1-prebuilt-Netboot.zip, см. подкаталог /BootPXE. Оттуда нужно взять файл loader.zpxe или, в случае ошибок, loader-native.zpxe, и поместить в каталог TFTP-сервера, рядом с файлом "большого" клиента. Если вы используете WTWare Lite, и клиент называется wtshell.nbi, переименуйте loader.zpxe в wtshell.nbi.zpxe, и сошлитесь на этот файл в настройках DHCP. Казалось бы, тут-то и должно все заработать. Не тут-то было! Да, wtshell.nbi.zpxe действительно загружает и запускает wtshell.nbi, то есть, клиент WTWare. Но клиент сообщает нам, что он не может обнаружить сетевой адаптер. И это неслучайно. Разработчики говорят, что система WTWare Lite рассчитана на старые терминальные клиенты, и потому не поддерживает гигабитные сетевые платы. Впрочем, как написано на сайте pxe.ru, в WTware lite 4.5.17 все-таки включили драйверы "гигабитных" плат - но это надо проверять. "Закрыта одна дверь - стучитесь в другую". Мы попробовали терминальный клиент Thinstation. Его можно найти на сайте itadvisor.ru/downloads или "собрать" прямо на сервере it-advisor.ru. После сборки возможно загрузить разные варианты клиента: Etherboot, ISO, Loadlin, PXE и Syslinux. Наш вариант - Etherboot. Выбрав его, получим с сервера два файла; предзагрузчик thinstation.nbi.zpxe и собственно клиент thinstation.nbi. У меня с этим клиентом успешно загрузился... один бездисковый компьютер. Самый старый. Другие же компьютеры писали: pci_init: no BIOS32 detected Дело в том, что хотя у всех наших терминалов одна и та же модель сетевого адаптера - гигабитный RTL-8110CS на базе чипа RTL-8169, но у "старого" терминала этот адаптер подключен к шине PCI, а у более новых - к PCI-E. Эту проблему удалось решить, получая особым образом настроенный предзагрузчик .zpxe с сайта rom-o-matic.net. Если на странице "ROM-o-matic.net for Etherboot version git" нажать кнопку "Configure", и в открывшемся списке настроек включить галочку напротив пункта CONFIG_PCI_DIRECT - полученный код .zpxe нормально работает с RTL8169 на шине PCI-E, не жалуясь на отсутствие BIOS32. Победа? Увы, нет. Происходит вот что. Предзагрузчик *.nbi.zpxe, вместо того, чтобы взять с сервера файл *.nbi и выполнить его, берет *.nbi.zpxe, то есть самого себя, и зацикливается... Оказывается, в настройках на rom-o-matic нужно было поставить галочку еще и напротив ZPXE_SUFFIX_STRIP. Эта опция убирает пять последних символов в имени файла, к которому обращается предзагрузчик. И вместо *.nbi.zpxe наконец-то загружается *.nbi Однако... клиент Thinstation и на этот раз не заработал нормально. Тогда мне пришлось обратиться к платному клиенту WTWare (не "Lite"). Скачал его дистрибутив (в формате ZIP) с wtware.ru, распаковал, взял оттуда файлы wtware.pxe, http.cfg и wtware.http, подкаталог /packages, поместил все это в корневой каталог TFTP-сервера. В настройках сервера DHCP указал клиентам загружать файл wtware.pxe. И неожиданно все машины стали загружаться! Но они не могли подключаться к терминальному серверу Windows, поскольку не были настроены. Чтобы задать настройки клиентам WTWare, нужно в "корне" сервера TFTP создать подкаталог /Everyone, и в него поместить файл all.wtc. Этот файл содержит настройки, общие для всех клиентов. В нем можно указать, например, IP-адрес сервера терминалов (строка вида server=192.168.2.1). Кроме того, нужно создать в "корне" TFTP подкаталог /Terminals, и в него помещать файлы с настройками отдельных терминалов. Файлы имеют имя типа f8.d1.11.02.9f.92.wtc, то есть имена файлов должны соответствовать MAC-адресам сетевых плат терминалов. Многочисленные настройки, которые можно поместить в wtc-файл, описаны в документации к WTWare. Вот содержимое одного из моих файлов настроек:
server=rdp:192.168.2.1 Следует сказать насчет лицензирования системы WTWare. При лицензировании 10 терминалов лицензия на один терминал стоит порядка 600 рублей, то есть сравнительно недорого. Если же терминалы не лицензировать, система нормально работает, лишь в правой части экранов появляется вертикальная полоса с надписью "Только для тестирования". Это приводит к уменьшению рабочего стола Windows, например, с 1024х768 точек до 960x768. Полагаю, что для учебных компьютеров это вполне терпимо. # |