Penguin
Diff: HowToNCDXTerminal
EditPageHistoryDiffInfoLikePages

Differences between version 2 and previous revision of HowToNCDXTerminal.

Other diffs: Previous Major Revision, Previous Author, or view the Annotated Edit History

Newer page: version 2 Last edited on Friday, October 29, 2004 10:08:51 am by StuartYeates Revert
Older page: version 1 Last edited on Friday, June 7, 2002 1:07:09 am by perry Revert
@@ -1,953 +1 @@
-  
-  
-  
-NCD X terminal mini HOWTO  
-  
-  
-  
-----  
-  
-!!! NCD X terminal mini HOWTO  
-  
-!!Ian Hodge, ian at permedia.ca v1.09, March 27, 2000  
-  
-  
-----  
-''This document describes how to connect  
-an NCD X terminal to a UNIX host''  
-----  
-  
-  
-  
-  
-!!1. Copyright  
-  
-  
-  
-  
-!!2. Introduction  
-  
-  
-*2.1 Summary of steps  
-  
-  
-  
-  
-  
-!!3. Requirements  
-  
-  
-*3.1 The X terminal  
-  
-*3.2 Physical Connection  
-  
-*3.3 NCD X server software  
-  
-  
-  
-  
-  
-!!4. Configuring the UNIX Host  
-  
-  
-*4.1 TFTP and BootP  
-  
-  
-  
-  
-  
-!!5. Configuring the NCD X terminal Boot Process  
-  
-  
-*5.1 Boot Monitor command syntax  
-  
-*5.2 Boot Monitor Setup Menu  
-  
-*5.3 X Terminal Configuration Files  
-  
-*5.4 Logging on to the host  
-  
-  
-  
-  
-  
-!!6. Fonts and the X terminal  
-  
-  
-*6.1 The font server  
-  
-  
-  
-  
-  
-!!7. Miscellaneous  
-  
-  
-*7.1 Supported Terminals  
-  
-*7.2 Reference  
-  
-*7.3 Equipment used in the preparation of this document  
-  
-*7.4 Acknowledgments  
-  
-*7.5 Outstanding Issues  
-  
-*7.6 Feedback  
-  
-----  
-  
-!!1. Copyright  
-  
-  
-The NCD X terminal mini HOWTO is copyright(c) 1998 by Ian Hodge. Linux  
-HOWTO documents may be reproduced and distributed in whole or in part, in  
-any medium physical or electronic, as long as this copyright notice is  
-retained on all copies.  
-  
-  
-  
-----  
-  
-!!2. Introduction  
-  
-  
-This document describes how an X terminal manufactured by NCD (Network  
-Computing Devices) can be connected to and booted from a UNIX host using  
-BootP (boot protocol). Many terminals are also capable of booting with  
-RARP, NFS or locally from a PCMCIA card or over a serial link (either  
-directly or with a modem).  
-  
-  
-Although the material in this document was prepared based on experience  
-with a single model of X terminal, much of the information applies to other  
-models and other X terminals generally. There is also an Linux X terminal  
-mini HOWTO document (declared obsolete by HOWTO maintainers at the time of  
-writing and therefore possibly not available in all Linux distributions)  
-which overlaps material from this document. That document covers X terminal  
-information more generally.  
-  
-  
-  
-  
-!!2.1 Summary of steps  
-  
-  
-  
-The process of connecting an X terminal to a UNIX network can be summarized  
-in the following steps:  
-  
-  
-  
-  
-  
-*Physically connect the X terminal to the network.  
-*  
-  
-*Configure the UNIX host you are going to boot from.  
-*  
-  
-*Configure the X terminal boot procedure.  
-*  
-  
-*Boot the X terminal.  
-*  
-  
-*Log in to the network.  
-*  
-  
-  
-  
-  
-  
-  
-  
-----  
-  
-!!3. Requirements  
-  
-!!3.1 The X terminal  
-  
-  
-  
-An X terminal is a device which communicates and displays over a network  
-using a distributed network window system known as X. Typically, the  
-terminal's X software, known as the X server, is retrieved from the network  
-at boot time. Programs other then the X server software (X client programs)  
-are not run locally on the X terminal (with some exceptions); instead, the  
-X terminal displays programs running on other hosts on the network. The X  
-terminal, therefore, is a type of network computer which uses the X  
-protocol to access network resources.  
-  
-  
-  
-  
-!!3.2 Physical Connection  
-  
-  
-  
- The NCD X terminal (model Xncd19r was used in preparation of this  
-document) has an RJ-45 (twisted pair) connector for use with 10baseT  
-Ethernet. A hub is required to link more than two Ethernet devices using  
-twisted pair. If the X terminal and its host are the only devices in the  
-network, they may be connected with a 'null' cable which is described in  
-the Linux Ethernet HOWTO document.  
-  
-  
-  
-  
-!!3.3 NCD X server software  
-  
-  
-  
-The terminal's X server software file is available from the manufacturer  
-and presumably is provided with the terminal upon initial purchase. This  
-file will reside on the boot host where it can be accessed by the X  
-terminal when it boots. This file is specific to the terminal type but  
-independent of boot host. The terminal can boot from any host which  
-supports the boot communication protocol (explained later). In addition to  
-X server, the X software may also include applications, like a window  
-manager, which can run locally on the X terminal itself.  
-  
-  
-  
-----  
-  
-!!4. Configuring the UNIX Host  
-  
-  
-At boot time, the X terminal retrieves files (including its X server  
-software) from a remote host on the network. After the terminal boots, the  
-X server software will control input, display, local clients and X protocol  
-communication. The X server software is executed on the X terminal and  
-therefore does not have to be software compatible with the host on which it  
-resides.  
-  
-  
-  
-  
-!!4.1 TFTP and BootP  
-  
-  
-  
-Together, tftp (trivial file transfer protocol) and BootP (boot protocol  
-server) are used on the remote host to allow the X terminal to retrieve its  
-X server software and configuration files over the network. Both services  
-are typically started by inetd (Internet Daemon).  
-  
-  
-  
-  
-  
-After the X terminal is powered up, if it is configured to boot from the  
-network, it will send out a broadcast message using BootP (TCP/IP bootstrap  
-protocol). This boot message will contain the X terminal's hardware  
-(Ethernet) address which is used by the boot host to respond to the boot  
-request.  
-  
-  
-  
-  
-  
-When a boot request is received by the remote host, inetd  
-(listening on a port designated in /etc/services) starts the BootP daemon  
-specified in /etc/inetd.conf.  
-  
-  
-  
-  
-  
-In file inetd.conf, create or uncomment lines that refer to TFTP and  
-BootP. The final argument of the tftpd entry in the example below is the  
-path of the directory containing the files required by the X  
-terminal. Although directory names are not mandatory, for security reasons  
-they should always be present as tftp access will then be restricted to  
-files in specified directories.  
-  
-  
-  
-  
-  
-From a sample file /etc/inetd.conf:  
-  
-# tftp service is provided primarily for booting. Most sites  
-# run this only on machines acting as "boot servers".  
-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  
-  
-  
-  
-  
-  
-  
-Upon activation, the BootP server daemon on the host will then read its  
-database file /etc/bootptab. An entry for the X terminal must be placed in  
-this file. Each entry contains a set of tags separated with ':'  
-characters. The host name must be the very first tag in an entry.  
-  
-  
-Useful bootptab tags:  
-  
-; ____hd____:  
-  
-Bootfile home directory (eg /usr/X11/lib/X11/ncd/).  
-; ____ip____:  
-  
-Address of the X terminal (eg 10...1).  
-  
-  
-  
-; ____sm____:  
-  
-Subnet mask (eg 255...). To understand the use of  
-the subnet mask and other IP networking principles, consult the Linux NET-3  
-(networking) HOWTO document.  
-  
-  
-  
-; ____gw____:  
-  
-IP Address of gateway (eg 10...1).  
-; ____ht____:  
-  
-Hardware type - Ethernet in this example.  
-; ____ha____:  
-  
-Hardware address of X terminal (6 byte Ethernet address)  
-  
-  
-According to the bootptab UNIX man page, the 'ha' tag must be preceded by  
-the 'ht' tag. The X terminal's Ethernet address is displayed when the  
-terminal is first powered on. The address appears as a series of 6  
-double digit hex numbers separated by colons (e.g. 00:00:A7:12:26:19).  
-  
-  
-  
-; ____tc____:  
-  
-Table continuation or label of another entry in the  
-BootP database. See the example below.  
-  
-  
-  
-; ____ds____:  
-  
-IP address of domain name server (eg 10...3). Not  
-required if DNS is not used for hostname resolution.  
-  
-  
-  
-; ____bf____:  
-  
-Name of X terminal boot file (Usually the terminal  
-model is used as the X server file name eg Xncd19r).  
-  
-  
-  
-  
-  
-  
- The following is an example of the Boot protocol server database file,  
-/etc/bootptab. The character '\' is used to escape the end-of-line  
-character.  
-  
-  
-  
-  
-# This is an entry ( here given the name default)  
-# with information common to all BootP clients  
-default:hd=/usr/X11/lib/X11/ncd/:\  
-ds=10...3:\  
-sm=255...:\  
-gw=10...1:  
-# X terminal entry with hostname myxterm  
-# Notice the tc tag reference to the entry default  
-myxterm:ht=ethernet:\  
-ha=0x0000a7122619:\  
-ip=10...2:\  
-tc=default:\  
-bf=Xncd19r:  
-  
-  
-  
-  
-  
-  
-When a matching entry for the hardware address in the boot request is found  
-in the bootptab file, a response is sent by bootpd with the corresponding  
-IP address from the matching entry. File transfer can then take place over  
-IP using TFTP.  
-  
-  
-A hostname can be assigned to the X terminal by creating an entry on  
-the boot host in the file /etc/hosts. This file is used to map hostnames to  
-IP addresses. In the this example, the X terminal (address 10...2) has  
-been assigned the hostname 'myxterm'.  
-  
-  
-  
-  
-10...1 linuxhost # The boot host  
-10...2 myxterm # X terminal  
-  
-  
-  
-  
-----  
-  
-!!5. Configuring the NCD X terminal Boot Process  
-  
-  
-After being powered up, the X terminal attempts to boot. This is the  
-process where the X software is loaded into memory and executed. If the X  
-terminal cannot boot, the Boot Monitor prompt '>' will appear. The Boot  
-Monitor is firmware found in terminal PROMs (programmable read-only  
-memory). With the basic Boot Monitor interface, it is possible to configure  
-the terminal to boot and retrieve its X server software from the host. Use  
-'?' for a list of Boot Monitor commands.  
-  
-  
-  
-  
-  
-Configuration parameters set with the boot monitor are stored in NVRAM  
-(Non-volatile Random-Access Memory) and are retained when the terminal is  
-powered down.  
-  
-  
-  
-  
-  
-From the boot monitor, the 'bt' command or a menu system can be used to  
-boot the terminal. Functionality of the two methods largely overlaps but  
-the menu provides control over more boot parameters.  
-  
-  
-  
-  
-!!5.1 Boot Monitor command syntax  
-  
-  
-  
->bt file terminal_IP host_IP gateway_IP subnet_mask  
-  
-  
-  
-  
-  
-  
-  
-; ____file____:  
-  
-The name of the file retrieved from the remote host  
-containing the X server software used by the X terminal to boot (eg  
-"Xncd19r"). Check that this file name is the same as the file name is found  
-in the X terminal entry in the bootptab file on the host (explained in the  
-previous section).  
-  
-  
-  
-; ____terminal_IP____:  
-  
-The IP address assigned to the X terminal (eg  
-10...2). Again, this IP address should be the same as the address assigned  
-in the X terminal entry of the bootptab file on the host.  
-  
-  
-  
-; ____host_IP____:  
-  
-The IP address of the boot host (eg 10...1).  
-  
-  
-  
-; ____gateway____:  
-  
-The IP address of the subnet gateway (eg 10...1)  
-  
-  
-  
-; ____subnet_mask____:  
-  
-The subnet mask, specified as a decimal IP  
-address or as a hexadecimal number (eg 255...0 or ff000000).  
-  
-  
-  
-  
-  
-!!5.2 Boot Monitor Setup Menu  
-  
-  
-  
-The setup menus are accessed by pressing the 'Setup' key or  
-typing 'se' from the boot monitor '>' prompt.  
-  
-  
-  
-  
-; ____Get IP Addresses From____:  
-  
-The IP address of the X terminal should  
-be obtained from boot monitor configuration stored in NVRAM. Only select  
-'Network' if you are using RARP (reverse ARP) to retrieve the X terminal's  
-IP address from the remote host.  
-  
-  
-  
-; ____Terminal IP Address____:  
-  
-The IP address assigned to the X terminal  
-(eg 10...2). This is the same as 'terminal_IP' parameter above.  
-  
-  
-  
-; ____First Boot Host IP Address____:  
-  
-The IP address of the boot host  
-(eg 10...1). This is the same as 'host_IP' parameter above.  
-  
-  
-  
-; ____Gateway IP Address____:  
-  
-The IP address of the subnet gateway. This  
-is the same as 'gateway' parameter above.  
-  
-  
-  
-; ____Subnet Mask____:  
-  
-The subnet mask, specified as a decimal IP  
-address. This is the same as the 'subnet_mask' parameter above.  
-  
-  
-  
-; ____Broadcast IP Address____:  
-  
-The IP address used to broadcast to the  
-subnet. (eg 10.255.255.255)  
-  
-  
-  
-; ____Boot File____:  
-  
-The name of the file retrieved from the remote  
-host containing the X server software used by the X terminal to boot (eg  
-"Xncd19r"). This is the same as 'file' parameter described above.  
-  
-  
-  
-; ____TFTP Boot Directory____:  
-  
-The name of the directory on the host  
-which contains the boot file (eg "/usr/X11/lib/X11/ncd/" or "/tftpboot/").  
-  
-  
-  
-; ____Config file____:  
-  
-The name of the X terminal configuration file on the remote host  
-(See below).  
-  
-  
-  
-; ____UNIX Config Directory____:  
-  
-Name of the directory containing X terminal configuration files  
-(eg "/usr/X11/lib/X11/ncd/").  
-  
-  
-  
-; ____TFTP Order, NFS Order, Local Order____:  
-  
-Assign '1' to the preferred method for booting. Assign '1' to TFTP  
-when booting from a host using BootP.  
-  
-  
-  
-  
-  
-!!5.3 X Terminal Configuration Files  
-  
-  
-  
-During the boot process, the X terminal will attempt to transfer and load  
-files from the boot host. These files are not required for the  
-X terminal to boot successfully. If a file is not found, the terminal  
-will use default settings.  
-  
-  
-Configuration Files transferred to the X terminal at boot time:  
-  
-  
-*X terminal configuration file (eg ncd.conf) used  
-to retain terminal settings.  
-*  
-  
-*Color file (eg rgb.txt).  
-*  
-  
-*X key symbol database (eg XKeysymDB).  
-*  
-  
-*Font directory files (eg font.dir, font.alias).  
-*  
-  
-  
-  
-  
-  
-  
-After a successful boot, the X terminal console window with a  
-menu bar should appear. The terminal setup key toggles display of this  
-console window. From the console window 'setup' pull-down menu, terminal  
-characteristics can be viewed, altered and saved on the boot host in the  
-configuration file which can be used in future sessions.  
-  
-  
-If TFTP is being used to transfer files from the boot host, then file  
-permission must be world readable. Similarly, to save a configuration file  
-to the boot host, the file must already exist and with world write  
-permission enabled. If secure TFTP is used (this is recommended for  
-security reasons), then file access is possible only through specified  
-directories.  
-  
-  
-__Note:__ The terminal may fail to boot if it was previously  
-configured to work with other hosts or with different configuration  
-parameters. Resetting the NVRAM to remove stored settings may solve the  
-problem.  
-  
-  
-  
-  
-  
-To reset NVRAM, from the boot monitor, type the 'nv' command. From this  
-sub-menu, select 'l' to load defaults, 's' to save and finally 'q' to  
-quit. Resume the boot procedure described above.  
-  
-  
-  
-  
-!!5.4 Logging on to the host  
-  
-  
-  
-From the X terminal console window menu bar, select the 'terminals'  
-pull-down menu and choose 'New Telnet...'. When the telnet window appears,  
-insert the address of a network host in the service entry and click  
-'OK'. The host log in prompt should appear. After logging in, X programs,  
-including a window manager, can be started from the telnet window.  
-  
-  
-  
-----  
-  
-!!6. Fonts and the X terminal  
-  
-  
-The X terminal comes with a small set of fonts. In the X terminal setup  
-menus and configuration files, these fonts are referred to as  
-'built-ins'. The terminal can be operated with these fonts alone but more  
-fonts are desirable. Fonts can be added by specifying font paths in  
-X terminal console setup menus, configuration files or by using the xset  
-command.  
-  
-  
-  
-  
-  
-Once the X server software is running on the X terminal, the font path can  
-modified or queried with the command xset.  
-  
-  
-To query the X server:  
-  
-xset -q  
-  
-To add a font entry:  
-  
-xset +fp <path>  
-  
-To remove a font entry:  
-  
-xset -fp <path>  
-  
-  
-  
-  
-  
-!!6.1 The font server  
-  
-  
-  
-The font server (xfs) runs on a network host and retrieves fonts for the X  
-terminal and other network clients. Use of the font server allows the use  
-of a wide variety of fonts as the X server software is otherwise  
-restricted to bitmap fonts. During retrieval, the font server can  
-uncompress, scale and convert fonts for the X server and can help  
-simplify the management of fonts for groups of terminals and network  
-clients. Font server software is part of many Linux distributions and has  
-been incorporated into X consortium software available from  
-ftp.x.org.  
-  
-  
-To indicate the use of a font server, a tcp service entry is used instead  
-of a font path in the X terminal's host resident configuration file or  
-console setup menu.  
-  
-  
-Format of tcp service entry:  
-  
-tcp/<IP address of font server>:<port used by font server>  
-  
-  
-  
-Example:  
-  
-tcp/10...1:7100  
-  
-  
-  
-  
-  
-  
-An example of an entry in the X terminal configuration file found on the  
-boot host:  
-  
-  
-  
-  
-xserver-default-font-path = {  
-{ "tcp/10...1:7100" }  
-{ "built-ins" }  
-}  
-  
-  
-  
-The xset command with the tcp service entry can used to add the font server  
-to the path:  
-  
-  
-  
-  
-xset +fp tcp/10...1:7100  
-  
-  
-  
-  
-  
-  
-WARNING: Certain versions of NCDware require the font server entry to be  
-listed first before X terminal 'built-in' fonts. This is contrary to the  
-NCD documentation "System Administrator's Guide for UNIX Systems".  
-Experiment with the order of the font path and verify it with the  
-'xset q' command.  
-  
-  
-  
-  
-  
-On the font server host, the server is started at boot time from the  
-rc.local startup script. The font server (xfs) is started with the  
-following command:  
-  
-  
-  
-  
-xfs -config <config file path> -port <font server port number>  
-  
-  
-  
-The standard font server port is 7100.  
-  
-  
-Example:  
-  
-  
-  
-  
-xfs -config /usr/X11/lib/X11/fs/config -port 7100  
-  
-  
-  
-  
-  
-  
-Example font server configuration file:  
-  
-  
-  
-  
-# font server configuration file  
-# allow a max of 10 clients to connect to this font server  
-client-limit = 10  
-# when a font server reaches its client limit, start up a new one  
-clone-self = on  
-# use the UNIX syslog utility to log errors.  
-use-syslog = on  
-# list of font directories  
-catalogue = /usr/X11R6/lib/X11/fonts/misc/,  
-/usr/X11R6/lib/X11/fonts/Speedo/,  
-/usr/X11R6/lib/X11/fonts/Type1/,  
-/usr/X11R6/lib/X11/fonts/75dpi/,  
-/usr/X11R6/lib/X11/fonts/100dpi/  
-# file used to log errors if syslog is not used.  
-error-file = /usr/X11R6/lib/X11/fs/fs-errors  
-# 12 point in decipoints  
-default-point-size = 120  
-# 100 x 100 and 75 x 75  
-default-resolutions = 75,75,100,100  
-  
-  
-  
-  
-----  
-  
-!!7. Miscellaneous  
-  
-!!7.1 Supported Terminals  
-  
-  
-  
-I have been told that this procedures in this document work (more or less)  
-with the following terminals: __NCD 19r, NCD 19c, NCD19m?, NCD 15b, NCD MCX__  
-  
-  
-  
-  
-!!7.2 Reference  
-  
-  
-  
-Unix man pages:  
-bootpd(8), tftpd(8), bootptab(5), xdm(1x), xfs(1), fsinfo(1), xset(1),  
-inetd(8)  
-  
-  
-Linux Ethernet HOWTO document,  
-Linux Net-3 (Networking) HOWTO document  
-  
-  
-  
-  
-  
-NCDware System Administrator's Guide for UNIX Systems (print version)  
-  
-  
-  
-NCD Techtips Archive  
-  
-Now available for download in the NCD Techtips Archive is the  
-NCDware Reference Manual which covers almost every X terminal  
-configuration issue in detail.  
-  
-  
-The searchable  
-NCD knowledge base addresses some frequently asked questions  
-as well as bug reports.  
-  
-  
-  
-  
-  
-Note that the above links are subject to change. Since the first  
-version of this mini-HOWTO was published, the NCD web site has been  
-extensively reorganized.  
-  
-  
-  
-  
-!!7.3 Equipment used in the preparation of this document  
-  
-  
-  
-X terminal: NCD model NCD19r with 19 monochrome monitor 1280x1024 8M RAM  
-  
-  
-X server software: NCDware V3.2.CV 19r_s  
-  
-  
-Remote Host: IBM Cyrix 686 P150+ running Slackware  
-(Linux kernel version 2..31)  
-  
-  
-Remote Host: IBM Cyrix M2 200 MMX running Red Hat 5.  
-(Linux kernel version 2..32)  
-  
-  
-Network Card: 10 base T Ethernet card (ne 2000 clone) and 8 port hub  
-  
-  
-Font server version 2 release number 6300  
-  
-  
-  
-  
-!!7.4 Acknowledgments  
-  
-  
-  
-I would like to thank Michael de Lind van Wijngaarden, Jamal Hadi-Salim and  
-Dwight Hodge for assistance in the preparation of this document.  
-  
-!!7.5 Outstanding Issues  
-  
-  
-  
-  
-  
-  
-*Is it possible or wise to start the font server using inetd?  
-  
-*  
-  
-*If the remote host running the font server is powered down but later  
-comes up again, with the font server active, the X terminal may fail to  
-retrieve its fonts. The font path entry has to be re-entered with the  
-console menu or xset. Why?  
-  
-*  
-  
-*Are the procedures for other models of X terminals roughly similar?  
-  
-*  
-  
-*What is the procedure to boot the X terminal using NFS (Network File  
-System) or RARP (Reverse Address Resolution Protocol)?  
-  
-*  
-  
-*The following messages appear in the X terminal Console. I am  
-suspicious that they come from xfree86 extensions to X which are not part  
-of the X terminal server. Can someone confirm or deny this?  
-  
-%XSERVER-I-NEWCLIENT, host "localhost" connected with blank authorization  
-%XSERVER-W-NOEXTENSION, client attempted to use non-existent extension "BIG-REQUESTS"  
-%XSERVER-W-NOEXTENSION, client attempted to use non-existent extension "XKEYBOARD"  
-%XSERVER-W-NOEXTENSION, client attempted to use non-existent extension "XFree86-Misc"  
-  
-  
-*  
-  
-*Could Linux be ported to an X terminal? This is almost a joke  
-question but Linux is already on some unlikely platforms.  
-  
-*  
-  
-  
-  
-  
-  
-!!7.6 Feedback  
-  
-  
-  
-Please write to ian at permedia.ca  
-with any comments, questions, corrections, suggestions or contributions.  
-Many thanks to all who have written with feedback and additional information .  
-  
-  
-  
-----  
+Describe [HowToNCDXTerminal] here.