Использование бездисковых Linux-станций с загрузкой по сети::Журнал СА 11.2004
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
О журнале
Журнал «БИТ»
Информация для ВАК
Звезды «СА»
Подписка
Где купить
Авторам
Рекламодателям
Магазин
Архив номеров
Вакансии
Игры
Контакты
   


  Опросы

Какие курсы вы бы выбрали для себя?  

Очные
Онлайновые
Платные
Бесплатные
Я и так все знаю

 Читать далее...

1001 и 1 книга  
27.03.2019г.
Просмотров: 239
Комментарии: 0
Arduino Uno и Raspberry Pi 3: от схемотехники к интернету вещей

 Читать далее...

27.03.2019г.
Просмотров: 195
Комментарии: 0
Автоматизация программируемых сетей

 Читать далее...

27.03.2019г.
Просмотров: 226
Комментарии: 0
Изучаем pandas. Второе издание

 Читать далее...

27.03.2019г.
Просмотров: 173
Комментарии: 0
Компьютерное зрение. Теория и алгоритмы

 Читать далее...

13.03.2019г.
Просмотров: 380
Комментарии: 0
DevOps для ИТ-менеджеров

 Читать далее...

Друзья сайта  

Форум системных администраторов  

sysadmins.ru

 Использование бездисковых Linux-станций с загрузкой по сети

Архив номеров / 2004 / Выпуск №11 (24) / Использование бездисковых Linux-станций с загрузкой по сети

Рубрика: Администрирование /  Продукты и решения

АНДРЕЙ МАРКЕЛОВ

Использование бездисковых Linux-станций

с загрузкой по сети

Постановка задачи

Работа сотрудника отдела автоматизации – это постоянная борьба с проблемами и решение задач, которые попеременно подкидывают пользователи, разработчики эксплуатируемого программного обеспечения и руководство организации. И если два первых направления работы – это просто «борьба за живучесть корабля», то последнее, как правило, – поступательное движение вперед. Как раз в ходе решения одной из таких задач и появилась на свет данная статья.

Итак, перед отделом автоматизации была поставлена задача в короткие сроки ввести в строй два новых удаленных офиса, каждый численностью в пять-десять человек. Оба офиса и «голову» связали посредством технологий VPN в одну сеть. Минимальная ширина канала между тремя точками составила 256 Кбит, что вполне удовлетворило наши потребности. В каждом из офисов был развернут дополнительный контроллер домена Windows 2000, а для минимизации трафика домен разделили на несколько сайтов. Все вышеописанное является стандартным решением, и здесь я не ожидал никаких сюрпризов. Главным вопросом для нас было, как поведет себя основной инструмент работы сотрудников организации – комплексная система автоматизации, при работе с которой и в пределах одной площадки хватало проблем. Изначально ориентированная на Novell/BTRIVE 6.15 после миграции сети на Windows, она работала под Windows/Pervasive.SQL 7.

После недели тестирования этого основного бизнес-приложения организации, оказалось, что разработчик и вовсе не оставил нам выбора, так как использование встроенного терминального режима автоматизированной системы по ряду причин нас не устроило. Опять же, из-за особенностей функционирования в качестве терминального сервера была выбрана платформа Microsoft Windows Server. Тестирование же решений компании Citrix мы не проводили, так как работа с «родными» терминальными службами Windows нас вполне удовлетворила, а использование надстроек только увеличивает стоимость всей системы.

Когда с серверной частью все определилось, встал вопрос по клиентской составляющей системы. В первую очередь хотелось бы снизить необходимость в администрировании пользовательских машин, так как постоянное присутствие системного администратора на удаленных площадках не планировалось. Кроме того, желательным представлялось уменьшить стоимость решения, которая возросла из-за необходимости покупки терминальных лицензий. Также необходимо было учесть намерение разместить в офисах устаревшие компьютеры класса Celeron-400 с ОЗУ от 32 до 64 Мб.

Идеальным со всех точек зрения оказалось использование в качестве рабочих мест бездисковых станций с загрузкой по сети. При этом единственным компьютером, требующим внимания администратора, становится дополнительный контроллер домена в каждом офисе, управляемый по VNC. Само собой, что в рамках данной статьи я оставляю за пределами внимания оборудование и ПО, обеспечивающее шифрование трафика, доступ в Интернет и т. д.

В роли ОС, которая будет по сети загружаться на рабочие станции, я выбрал Linux – что обеспечивает лицензионную чистоту решения (по крайней мере на сегодняшний момент). Доступ к рабочему столу Windows 2003 должен был осуществляться при помощи разработки проекта http://www.rdesktop.org, который стал стандартом для решения данной задачи. В качестве же необходимых для такой загрузки серверов DHCP и TFTP логично было бы использовать уже имеющиеся в каждом сайте дополнительные контроллеры домена Windows 2000. Благо существуют как бесплатные реализации DHCP/TFTP под эту операционную систему, так и встроенные сервера. При этом TFTP наличествует в рамках службы Remote Installation Services (RIS).

Сетевые карты клиентских машин, естественно, должны поддерживать возможность загрузки по Etherboot/PXE. В отдельных случаях из-за несовместимости оборудования я допускал использование загрузчика, расположенного на дискете.

Выбор реализации Linux

При выборе варианта ОС Linux с возможностью загрузки по сети в первую очередь я обратил внимание на уже готовые дистрибутивы подобной направленности со встроенным пакетом rdesktop. Наиболее известный из них – NetStation (netstation.sourceforge.net), который застыл в виде бета-версии с конца 2002 года, и его наследники: PXES (pxes.source forge.net), Thinstation (thinstation.sourceforge.net), и DIET-PC (diet-pc.sourceforge.net). При этом DIET-PC предназначен для пользователей, хорошо знакомых с ОС Linux, что сразу исключает его из области рассмотрения. Поскольку процедура его настройки весьма кропотлива, и в DIET-PC присутствует достаточно много настроек, которые простому смертному, не Linux-гуру, никогда не пригодятся. PXES является наиболее «продвинутым» с большим числом дополнительных возможностей, включая собственную графическую среду, что также лишнее в моем случае. В моей конфигурации клиент, минуя промежуточные меню, должен был сразу загружать удаленный рабочий стол и выходить на окно ввода пароля Windows 2003 Server. Таким образом, я обратил внимание на оставшийся дистрибутив – Thinstation.

Кратко рассмотрим его возможности:

  • поддержка протоколов X, RDP, VNC, SSH, Telnet, ICA и Tarantella;
  • возможность использовать браузер Firefox;
  • загрузка по сети при помощи Etherboot, PXE (при помощи Etherboot-загрузчика или PXELinux), HDD, CD или floppy-диска. К сожалению, отсутствует поддержка USB-flash;
  • работа на ПК класса x86-100 МГц c ОЗУ 16 Мб;
  • наличие pre-build образа, и возможность самостоятельной сборки через веб-интерфейс;
  • поддержка локальных дисков, USB- и LPT-принтеров.

Из всех вариантов загрузки наиболее простой – это PXE при помощи Etherboot-загрузчика. В рамках этой статьи мы пойдем по самому простому пути будем использовать заранее скомпилированный образ.

Установка и первоначальная настройка

Начнем с того, что скачаем со странички http://struktur. kemi.dtu.dk/thinstation/download, доступной по ссылке с официального сайта, последний из архивов, в моем случае – это был Thinstation-2.0.2-prebuilt-NetBoot.zip. Архив содержит в себе все, что необходимо, включая TFTP/DHCP-сервер Tftpd32, который удобен при первоначальной настройке и конфигурировании. Если вы будете его использовать, то я бы порекомендовал сразу же обновить его с домашней странички, где имеется более свежая версия. Кстати, Tftpd32 (http://tftpd32.jounin.net) – сама по себе отличная программа. Причем настолько, что даже рекомендуется Cisco для некоторых потребностей клиентов компании.

Развернув архив, мы получаем пять директорий:

  • BootDisk – образ дискеты с Etherboot-загрузчиком, для ПК, с неподдерживаемыми сетевыми картами;
  • BootPXE – загрузчик через PXE для эмуляции Etherboot;
  • BuildFiles – примеры конфигурационных файлов;
  • TFtp – сервер Tftpd32;
  • TftpdRoot – корневая директория TFTP-сервера.

Итак, первым делом запускаем самораспаковывающийся архив thinstation.nbi (autoextract).exe, содержащий один-единственный файл thinstation.nbi, архив сделан для того, чтобы у вас была возможность ознакомиться с «CITRIX(R) LICENSE AGREEMENT».

Теперь копируем TFtp и TftpdRoot на Windows-сервер в нашем сегменте сети. В качестве такого сервера при использовании Tftpd32 может выступать любая Windows-машина со статическим IP-адресом.

Допустим, мы скопировали обе директории на диск C:. Запускаем на исполнение C:TFtpTftpd32.exe. Внешний вид окна программы представлен на рис. 1. Необходимо задать параметры сервера. Нажимаем кнопку «Settings» и прописываем в качестве «Base directory» значение «C:TftpdRoot». Далее идем на вкладку «DHCP server». Там необходимо указать начальный IP-адрес, выделяемый DHCP-сервером («IP pool starting address»), размер пула адресов («Size of pool»), маску подсети («Mask»), имя файла с Etherboot-загрузчиком(«Boot file»), в нашем случае это thinstation. nbi.zpxe. Нажимаем кнопку «Save» для сохранения настроек и сворачиваем приложение.

Рисунок 1. TFTP/DHCP-сервер Tftpd32, который удобен при первоначальной настройке

Рисунок 1. TFTP/DHCP-сервер Tftpd32, который удобен при первоначальной настройке

Все готово для работы. Вы можете попробовать включить одну из машин с сетевой картой, поддерживающей загрузку по протоколу PXE, не забыв выставить порядок загрузки в BIOS станции. При включении машина должна получить IP-адрес из выделенного диапазона и загрузить по протоколу TFTP файл thinstation.nbi.zpxe. Он содержит загрузчик, эмулирующий работу сетевой карты с поддержкой Etherboot. Затем управление передается загрузчику, который в свою очередь еще раз запрашивает по DHCP адрес, и загружает файл с именем, совпадающим с названием файла самого загрузчика минус расширение zpxe, то есть thinstation.nbi. Данный файл и есть образ Thinstation. Когда образ загружен, Thinstation пытается загрузить из корневой директории TFTP-сервера конфигурационный файл thinstation.conf-, затем thin station.conf-. Если такие файлы найдены, то Thinstation объединяет их содержимое с общим конфигурационным файлом thinstation.conf.network, который в отличие от двух вышеперечисленных обязан присутствовать на TFTP-сервере.

Постарайтесь избежать конфликтов между главным файлом настроек и специфическим к группе или конкретной станции. Кроме того, можно объединять одним конфигурационным файлом целые группы IP- и MAC-адресов. Это делается при помощи файла thinstation.hosts, имеющего следующий формат:

# HOST     MAC          GROUPS        COMMENTS

ws-oper1   0002B3655065 hi_res       # Операционист №1

ws-oper2   0002B3651075 hi_res       # Операционист №2

ws-oper3   0002B365A021 hi_res ssh_en # Операционист №3

В данном примере предполагается, что имеются два файла thinstation.conf.group-hi_res и thinstation.conf.group-ssh_en.

Настройки, прописанные в первом файле, применяются ко всем трем станциям, а настройки из второго – только к компьютеру ws-oper3.

То, как отображаются сессии терминальных клиентов в оснастке диспетчера терминальных служб, вы можете увидеть на рис. 2.

Рисунок 2. Сессии тонких клиентов в оснастке диспетчера терминальных служб

Рисунок 2. Сессии тонких клиентов в оснастке диспетчера терминальных служб

Клиенты с именами вида ts_ – это как раз клиентские терминалы, работающие под управлением Thinstation. Клиенты с именами вида P работают под управлением дистрибутива PXES, рассмотрение которого выходит за рамки данной статьи.

Рисунок 3. Меню Thincstation

Рисунок 3. Меню Thincstation

Далее я приведу простой, но вполне работоспособный вариант конфигурационного файла с комментариями.

# Опции сессий

#

# Первая сессия должна обязательно начинаться с номера 0.

# При отсутствии необходимости выбора сессии, например, когда вы используете только rdesktop,

# можно снять комментарий со следующего параметра, и исключить меню выбора сессий.

#AUTOSTART=On

SESSION_0_TITLE="Windows 2003 terminal server (16 bit color depth)"

SESSION_0_TYPE=rdesktop

SESSION_0_RDESKTOP_SERVER=192.168.0.1

SESSION_0_RDESKTOP_OPTIONS="-u Administrator -p password -a 16"

SESSION_1_TITLE="VNC server"

SESSION_1_TYPE=vncviewer

SESSION_1_VNCVIEWER_SERVER=192.168.0.2

SESSION_2_TITLE="Telnet server"

SESSION_2_TYPE=telnet

SESSION_2_TELNET_SERVER=192.168.0.3

SESSION_3_TITLE="SSH server"

SESSION_3_TYPE=ssh

SESSION_3_SSH_SERVER=192.168.0.4

# Общие опции

#

# Раскладка клавиатуры. В случае работы с rdesktop она роли не играет

KEYBOARD_MAP=en_us

# Опции XServer

#

SCREEN_RESOLUTION="1024x768"

SCREEN_COLOR_DEPTH="16"

SCREEN_HORIZSYNC="30-64"

SCREEN_VERTREFRESH="56-87"

MOUSE_RESOLUTION=100

# Опции печати

#

PRINTER_0_NAME=usb

PRINTER_0_DEVICE=/dev/usb/lp0

PRINTER_2_TYPE=U

В заключение статьи, хочу сказать, что после отладки работы с терминальными клиентами, лучше всего передать функции TFTP- и DHCP-серверов программному обеспечению, способному работать в режиме службы на Windows NT/2000/2003/XP, например, как я уже говорил, «родным» службам Windows, либо воспользоваться соответствующими сервисами любой другой операционной системы.

Кроме того, на сайте проекта thinstation.sourceforge.net при помощи веб-интерфейса вы можете самостоятельно перекомпилировать образ Thinstation без загрузки исходных кодов, включив какие-либо отсутствующие в prebuild образе функции, например браузер, или исключив ненужные модули.

Рисунок 4. Самостоятельное построение образа через веб-интерфейс TS-O-Matic

Рисунок 4. Самостоятельное построение образа через веб-интерфейс TS-O-Matic


Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-41
Fax: (499) 277-12-45
E-mail: sa@samag.ru