The terminals have little software built-in other than the Boot Monitor. At boot time, this interrogates the network in order to find out information such as an IP address and where to retrieve a boot file and the remaining software, including the X software and possibly a window manager, terminal emulator and others. Note the software is run on the terminal itself and is independent of the host machines architecture. In this example, I've used a 200MHz Pentium II system which already had Slackware Linux 8.1 on it, and which was already being used to boot other thin clients.
In the remainder of the document:
I already have DHCP installed on the server I put the software on, mostly providing basic BOOTP support for some other thin-client machines I have. My network's relatively uncomplicated, I have fixed IP addresses for everything, listed in the /etc/hosts file on each machine.
In /etc/hosts, add entries for the terminals:
# Tektronix X terminals 192.168.1.140 tekxp01.localnet tekxp01 192.168.1.141 tekxp02.localnet tekxp02
Next, in /etc/dhcpd.conf, add entries for the terminals, replacing the hardware addresses here with those of your terminals. The hardware address appears in the top-right corner of the screen when the terminals boot, and it can also be found on stickers on the underside and left side of the units (on mine, at least.)
It is already assumed that you have a global section in /etc/dhcpd.conf which includes broadcast address, dns servers, etc.
group { filename "/export/tekxp/boot/os.350"; host tekxp01 { hardware ethernet 08:00:11:12:34:56; fixed-address tekxp01; } host tekxp02 { hardware ethernet 08:00:11:65:43:21; fixed-address tekxp02; } }
For more information, please consult man pages dhcpd(8) and dhcpd.conf(5)
Add the directory where the software is located to your /etc/exports file, I've exported it read-only to my entire subnet.
/export/tekxp/ 192.168.1.0/24(ro)
Then issue the command exportfs -r to re-read /etc/exports and update the exported filesystems.
For more information, please consult man pages exports(5), exportfs(8)