Настройка UNIX машины

В момент запуска Х терминал скачивает файлы (включая программное обеспечение для Х сервера) с удаленной машины в сети. После загрузки терминала Х сервер управляет вводом, выводом, локальными клиентами, а также протоколом обмена Х-ов. Программное обеспечение Х сервера работает на Х терминале и не обязательно совместимо с программным обеспечением машины, на которой оно находится.

TFTP и BootP

Вместе tftp (trivial file transfer protocol) с BootP (boot protocol server) используются на удаленной машине для того, чтобы Х терминал скачал программное обеспечение Х сервера и настроил файлы через сеть. Оба сервиса обычно запускаются от inetd (Internet Daemon).

После включения Х терминал, если он настроен на загрузку из сети, рассылает широковещательное сообщение, используя BootP (TCP/IP bootstrap protocol). Это сообщение содержит адрес устройства Ethernet Х терминала, который используется запускающей машиной в ответ на полученный запрос.

Когда ответ получен удаленной машиной, inetd (отвечая на запрос порта, описанного в /etc/services) запускает демона BootP, который находится в /etc/inetd.conf.

В файле inetd.conf создайте или раскомментируйте строки, относящиеся к TFTP и BootP. Последний аргумент tftpd entry в нижеследующем примере - это путь к каталогу, содержащему файлы, требующиеся Х терминалу. Хотя имена каталогов не являются обязательными, ради безопасности они всегда должны присутствовать, так как доступ tftpd будет ограничен для файлов в указанных каталогах

Из простого файла /etc/inetd.conf: # tftp сервис предназначен, в первую очередь, для загрузки. Большинство сайтов # действует только на машинах, работающих как "boot серверы". tftp dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.tftpd /usr/X11/lib/X11/ncd/ bootps dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.bootpd

После активизации BootP демон сервера считывает файл базы данных /etc/bootptab. Каждый вход содержит набор тегов, разделенных знаками ":" . Имя машины должно быть первым тегом.

Используемые теги файла bootptab

hd

домашний каталог файла загрузки (например /usr/X11/lib/X11/ncd/).

ip

адрес Х терминала (например 10.0.0.1).

sm

маска подсети (например 255.0.0.0). Чтобы понять назначение маски подсети и других принципов IP сети, обратитесь к документу HOWTO по Linux NET-3.

gw

адрес шлюза (например 10.0.0.1).

ht

тип аппаратного обеспечения- в данном примере Ethernet

ha

аппаратный адрес Х терминала (6-ти байтовый адрес Ethernet)

В соответствии с руководством UNIX по bootptab, тег 'ht' должен предшествовать тегу 'ha'. При первом включении терминала, Ethernet адрес Х терминала выводится на дисплей. Адрес появляется в виде 6 сдвоенных шестнадцатеричных чисел, разделенных двоеточием (например 00:00:A7:12:26:19).

tc

Продолжение таблицы или имя другой записи базы данных BootP. Смотрите пример ниже.

ds

IP адрес DNS (например 10.0.0.3). Не требуется, если DNS не используется для разрешения имен машин.

bf

Имя файла запуска Х терминала (Обычно модель терминала используется как имя файла Х сервера (например Xncd19r)

Ниже приведен пример файла базы данных сервера протокола Boot /etc/bootptab. Знак '\' используется для пропуска перевода строки.

# Это запись (дано имя default) # с информацией, общей для всех клиентов BootP. default:hd=/usr/X11/lib/X11/ncd/:\ ds=10.0.0.3:\ sm=255.0.0.0:\ gw=10.0.0.1: # запись об Х терминале с именем машины myxterm # заметьте, что тег tc ссылается на запись default myxterm:ht=ethernet:\ ha=0x0000a7122619:\ ip=10.0.0.2:\ tc=default:\ bf=Xncd19r:

Когда подходящая запись аппаратного адреса в запросе на загрузку найдена, bootpd посылает ответ с IP адресом из этой записи. Файл пересылается по протоколу IP с использованием TFTP.

Имя машины может быть назначено Х терминалу, путем создания записи на запускающей машине в файле /etc/hosts. Этот файл используется, чтобы сопоставить имена машин и соответствующие IP-адреса. В данном примере Х терминалу (адрес 10.0.0.2) было задано имя машины 'myxterm'.

10.0.0.1 linuxhost #имя машины 10.0.0.2 myxterm #Х терминал