在开机时,X 终端机自网路上的硬件系统取得这些必要文档 (包含它的 X server ) 当终端机开机以后,X server 将会控制输入,显示以及 X 通信息定的沟通。 X server 是在 X 终端机上执行的,所以它并不需要与存放它的主机需要兼容。
一并提及 tftp (trivial file transfer protocol) 还有 BootP (boot protocol server) 都被使用于 X 终端机透过网路取得硬件主机上的 X server 以及设定档, 这两种服务典型的都是被 inetd ( Internet Daemon ) 启动。
X 终端机开机以后,如果它设定成自网路开机,它将会以 BootP ( TCP/IP bootstrap protocol ) 送出广播的信息。 这份开机的信息将会包含X 终端机的网路卡卡号资料, 这份资料是用来让开机用的处机利用来回应 X 终端机的。
当硬件主机机收到硬件开机的要求时, inetd ( 这个 daemon 是在倾听在 /etc/services 所开的 Port )启动 BootP 这个被 /etc/services 指定的 daemon 。
在 inetd.conf 这个设定档里面,建立或是取消 TFTP 以及 BootP 的设定列。 tftpd 这设定的最终一项参数,以下方这个设定为例子,是一个存放 X 终端机需要的文档所存放的目录。虽然存放的目录不是限定的,但是为了安全因素,它们应该放在一个限制只能由 tftp 存取的特殊路径。
/etc/inetd.conf 的范例档:
# tftp 主要是提供开机的服务。许多的站台 # 执行这个服务只是为了提供开机。 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 这个在主机上执行的 daemon会去读它 /etc/bootptab 的资料库档。 每一个 X 终端机都必须在这个设定档里面存有一组资料。 每一笔资料被 ':' 字元所分隔。 每部主机的名字都是每一笔资料的头一个标记。
有用的 bootptab 标记:
开机用的家目录 ( 例如 /usr/X11/lib/X11/ncd/ )。
X 终端机的网路位址 ( 例如 10.0.0.1)。
子网路遮罩 ( 例如 255.0.0.0)。如果欲知如何使用子网路遮罩以及其他的 IP 网路原则, 请参阅 Linux NET-3 (networking) HOWTO document。
闸道的 IP 位置 ( 例如 10.0.0.1)。
硬件装置类型 - 在这个例子中是 Ethernet。
X 终端机的硬件位置 ( 6 个位元组的表示的乙太网路卡号 )
依据 bootptab 的 UNIX 说明,'ht' 标记必须比 'ha' 标记在前面。 X 终端机的乙太网路卡号会在终端机第一次接上电源时显示。 这个位置有点像是六组被分号分开的两位数的十六进位符号 所表达 ( 例如 00:00:A7:12:26:19 )。
表格内的资料继续下去。
名称伺服器的 IP 位址 ( 例如 10.0.0.3 )。 如果不用解析电脑的名称,这一个项目是不需要的。
X 终端机的开机文档 ( 终端机的名称常常用做为文档名称,例如 Xncd19r)。
接下来列的是一个 BootP 伺服器资料库文档的/etc/bootptab 例子。 '\'这个字元是用作换行的字元。
# 这是一笔资料 ( 它给定一些预设的设定信息 ) # 指定所有 BootP 客户端的共同信息 default:hd=/usr/X11/lib/X11/ncd/:\ ds=10.0.0.3:\ sm=255.0.0.0:\ gw=10.0.0.1: # 这笔 X 终端资料的主机名称为 myxterm # 注意, tc 这个标记是参阅预设的资料 myxterm:ht=ethernet:\ ha=0x0000a7122619:\ ip=10.0.0.2:\ tc=default:\ bf=Xncd19r:
当一个符合 bootptab 资料库的开机要求被侦测到时 bootpd 会从资料库中找到相符的信息, 并送出一个符合这个硬件卡号的 IP 位址。 文档藉由 TFTP 透过 IP 协定传送出去。
X 终端机的主机名称能被存放于开机主机的 /etc/hosts 这个文档里的某一笔资料决定。 这个文档用来解析主机名称对应于 IP 位置的关系。 在这个范例中, X 终端机 ( IP 位址为 10.0.0.2) 被分配成 myxterm 。
10.0.0.1 linuxhost # 开机用的主机 10.0.0.2 myxterm # X 终端机