Ключевые слова: Х-терминал, linux, LTSP, Linux Terminal Server Project, терминальный linux-сервер, бездисковая станция, ПК без жесткого диска, использование старых компьютеров, diskless workstation, thin client, asplinux, использование Linux в офисе, X-terminal
Из первой части книги вы узнали как и зачем появились бездисковые клиенты и откуда взялось понятие удаленной загрузки. Если немного пофантазировать в этом направлении, то в недалеком будущем мы вполне можем иметь ситуацию, когда просто не останется обычных персональных компьютеров. Представьте себе, что придя домой или на работу в офис, вы включаете свой компьютер не в локальную сеть, а сразу в глобальный Интернет (или как он там будет в будущем называться). Интернет к тому времени станет таким всепоглощающим, что заменит собой все телекоммуникации. То есть вместо телевидения и телефонной связи останется одна глобальная компьютерная сеть, причем такой пропускной способности, что просто не будет необходимости в жестких дисках, в локальном хранении информации отпадет надобность. Теперь хоть дома, хоть на работе вы будете имееть возможность работать со своими документами, более того вам не нужно заботиться о модернизации своего компьютера, так как всю информацию будет обрабатывать удаленный сервер, а ваш персональный компьютер только посылать ему команды и принимать от него ответы. Фактически главными компонентами компьютера станут монитор, клавиатура и “мышка” (скорее всего аналогичные устройства из будущего, такие как голографический монитор и устройства речевого ввода). К тому времени все программное обеспечение будет бесплатным, так как информация должна быть свободно доступной, а корпорация Microsoft объявит о своем банкротстве ... Так, стоп. Что-то я чересчур расфантазировался. Однако если тщательно всмотреться в компьютер будущего из моей фантазии, то в принципиальном плане он очень сильно напоминает Х-терминал. А так как теоретически вы знаете на что это должно быть похоже, не будем останавливаться на пройденном и перейдем к реальному использованию Х-терминалов с операционной системой Linux.
Работа Х-терминала в Linux несколько отличается от работы бездисковых компьютеров в других операционных системах. Для использования Х-терминальных решений требуется: настроенный Х-терминал сервер, локальная сеть и Х-терминал клиенты. Когда пользователь включает Х-терминал (клиентский компьютер) на нем автоматически запускается загрузочная программа, которая рассылает широковещательные запросы с целью получения информации от сервера (IP-адрес, ядро для загрузки по сети и т.п.). Сервер Х-терминалов откликается на этот запрос и отсылает требуемую информацию Х-терминал клиенту. Далее через локальную сеть на Х-терминал клиент загружается с сервера, а затем и запускается ядро Linux, скомпилированное особым образом. Ядро выполняет на Х-терминал клиенте привычную для него работу: инициализирует устройства, распределяет память, протоколирует все системные сообщения и т.д. После того как ядро полностью вступило во владение Х-терминалом, инициализирующий скрипт монтирует по сети корневую файловую систему сервера. То есть фактически вместо локального жесткого диска в распоряжение Х-терминала поступает жесткий диск (диски) сервера. Теперь именно с сервера загружается Х-сервер системы X-Windows, но выполняется он на локальном оборудовании Х-терминала. Затем он подключается к Х-серверу терминального сервера для удаленного запуска приложений.
Этот процесс удаленных подключений необходимо пояснить более детально. Например, вы работая на Х-терминале запустили браузер Mozilla. Реально происходит следующее: Mozilla запустился на сервере, но свои окошки через Х-протокол он отрисовывает на Х-терминале клиента. Этот пример и объясняет низкие требования к аппаратному обеспечению оборудования Х-терминала. Основная работа Х-терминала фактически заключается в обработке сетевых подключений и отрисовке на экране программных окошек. Дисковое пространство, оперативная память, использование центрального процессора – все это Х-терминал берет от сервера. Практически, Х-терминал - это реальное воплощение давней мечта всех пользователей персональных компьютеров, которые задавали вопрос: "Как подключить к компьютеру второй монитор и вторую клавиатуру?".
Описать насколько продуктивно работает Х-терминал однозначно не получиться. Лучше один раз увидеть (например, я пишу эти строки используя Х-терминал, а реальный пример внедрения Х-терминальной сети вы найдете в приложении). Если быть кратким, то Х-терминал имеет легкий системный блок, быстро загружается и не боится перебоев в электропитании. Практически все программы запускаются на нем также как и на обычном персональном компьютере (исключение составляют программные пакеты интенсивно использующие графику, например, Gimp). Так как программы выполняются на сервере, а аппаратные возможности сервера значительно превосходят параметры рядового персонального компьютера, то получается, что программы на Х-терминале выполняются быстрее, а следовательно работать на нем удобнее.
Не всегда нужно использовать удаленную загрузку именно для Х-терминалов работающих в графическом режиме. Терминал можно использовать и в текстовом режиме, правда в таком роле он больше подходит для функций системного администрирования нежели для обычной работы (а если признаться откровенно, то администрировать из Х-Windows удобнее: запустил xterm и вперед).
Многие могут подумать, что для работы Х-терминалу требуется локальная сеть супер качества. Сразу скажу, что это не так, но желательно наличие хорошей локальной сети Fast Ethernet 100 Мбит/с (хотя в моей практике Х-терминалы работали и по коаксиальному кабелю 10 Мбит/с в полудуплексном режиме “Half Duplex”). Для того, чтобы проверить зависимость Х-терминала от помех в локальной сети, я для эксперимента взял и отсоединил работающий Х-терминал от сетевого кабеля. Как результат на экране Х-терминала все замерло, только мышка продолжала реагировать на действия пользователя. Через пару минут я подключил сетевой кабель обратно. После 10 секундной паузы Х-терминал продолжил работу как ни в чем не бывало. Для очистки совести должен признаться, что если отключить работающий Х-терминал от сети на очень длительное время, то шанс его "реанимировать" простым подключением к локальной сети достаточно невелик. Скорее всего в этом случае лучше поможет его перезагрузка.