home *** CD-ROM | disk | FTP | other *** search
/ Caldera Network Desktop 1.0 / caldera-network-desktop-1.0.bin / doc / HOWTO / mini / Xterminal < prev   
Text File  |  1995-08-05  |  29KB  |  637 lines

  1. The X Terminal HOWTO
  2.  
  3. How to connect an X terminal to a Linux PC
  4. Version 1.0 BETA (July 1995)
  5. Scot W. Stevenson <scot@catzen.gun.de>
  6.  
  7.  
  8.     This document gives a brief introduction to how to connect an X terminal 
  9.     to a Linux PC. It assumes a basic knowledge of the X Window System, 
  10.     TCP/IP addressing, and ethernet cards. 
  11.  
  12.  
  13. 1.0 Introduction
  14.  
  15.     This is the first version of the document and should be considered BETA.
  16.     It is more of a been-there, done-that text than a comprehensive treatment.
  17.     Discussions of access control mechanisms (e.g. xaccess, xhost, 
  18.     MIT-COOKIEs), and the use of NFS, are not yet included.
  19.  
  20.     Most X terminals now have a whole host of advanced features which allow
  21.     them to be more than mere X servers. For the most part, these features
  22.     will be ignored.
  23.  
  24.  
  25. 1.1 Changes from previous versions
  26.  
  27.     (There are no previous versions, so everything was changed)
  28.  
  29.  
  30. 1.2 Disclaimers
  31.  
  32.     Neither the author nor the distributors of this HOWTO are in any way
  33.     responsible for physical, financial, or moral damage incurred by 
  34.     following the suggestions in this text. In short: "Yea though I talk...." 
  35.            
  36.  
  37. 1.3 Copyright
  38.  
  39.     The Linux Xterminal HOWTO is copyrighted (C) 1995 by Scot W. Stevenson. 
  40.     Linux HOWTO documents may be reproduced and distributed in whole or in
  41.     part, in any medium physical or electronic, as long as this copyright
  42.     notice is retained on all copies. Commercial redistribution is allowed
  43.     and encouraged. The author, however, would like to be notified of any 
  44.     such distributions.
  45.  
  46.     All translations, derivative works, or aggregate works incorporating
  47.     any Linux HOWTO documents must be covered under this copyright notice.
  48.     In othe words, you may not produce a derivative work from a HOWTO and
  49.     impose additional restrictions on its distribution. Exceptions to these
  50.     rules may be granted under certain conditions.
  51.  
  52.     In short, we wish to promote dissemination of this information through
  53.     as many channels as possible. However, we do wish to retain copyright
  54.     on the HOWTO documents, and would like to be notified of any plans to
  55.     redistribute the HOWTOs.
  56.  
  57.     Should you have any questions, please contact Greg Hankins, the Linux 
  58.     HOWTO coordinator, at gregh@sunsite.unc.edu. You may finger his address
  59.     for phone number and additional contact information.  
  60.  
  61.  
  62. 1.3 New Versions and Feedback
  63.  
  64.     New versions of this document can be found on sunsite.unc.edu in 
  65.     the /pub/Linux/docs/HOWTO/ directory. If you do not have FTP 
  66.     access, you can try to get Linux Help Files via Bill Riemers. Send
  67.     email to bcr@physics.purdue.edu with a subject of "help" for more 
  68.     infomation and an index file.                         
  69.  
  70.     Any additions to, corrections of, or comments about this document would
  71.     be most welcomed! Please send email to 
  72.  
  73.                  scot@catzen.gun.de (Scot W. Stevenson)
  74.  
  75.     I would especially like to hear from you if you already have experience
  76.     with linking an X terminal to a Linux machine, even if is only something
  77.     like "worked on this machine with this terminal."
  78.  
  79.     On the board for the next versions are access control mechanisms and
  80.     the use of NFS filesystems for booting.
  81.  
  82.  
  83. 2.0 Background
  84.  
  85.     This section provides some very basic information for those not familiar 
  86.     with the X Window System and its terminal-ology. If you have at least 
  87.     some experience with X and X terminals, you should be able to skip
  88.     this part with no ill effects.
  89.  
  90.  
  91. 2.1 What is X?
  92.  
  93.     The X Window System, or just X (never X Windows), is "a portable,
  94.     network-transparent window system" as the man page has it. It provides
  95.     a graphic environment that cuts across operating systems, vendors, and 
  96.     hardware types. When people talk about a window system in connection with
  97.     Unix, they almost always mean X.
  98.  
  99.     The most important characteristic of X in our case is the strict
  100.     division between the programs that control the local hardware that the
  101.     user interfaces with (screen, keyboard, mouse, etc.), and those programs
  102.     the user actually wants to run (editor, spreadsheet, DOOM). This means 
  103.     that the interface software, which is called the X server, can be
  104.     on a one machine, while the actual programs, or X clients, can be on
  105.     one or even more than one machine at a totally different location.
  106.     Note that the terms "server" and "client" are used in the reverse sense
  107.     of what they usually are.
  108.  
  109.     Linux comes with a collection of X servers from the XFree86 project,
  110.     that is, servers for SVGA Video cards, as well as a whole host of X 
  111.     clients such as xv, maze, and xterm. If you are new to X, you might 
  112.     want to get some hands-on experience with X on the Linux machine before
  113.     attempting to link up an X terminal.
  114.     
  115.     
  116. 2.2 What is an X terminal?
  117.  
  118.     An X terminal (referred to as XT from now on) is a specialized piece of
  119.     hard- and software which combine into an X server, that is, the part of 
  120.     X that manages in- and output to and from the user. In the most
  121.     primitive case, only the X server program and communcication software are
  122.     included. Even the window manager comes from the host computer, to which 
  123.     the XT is connected by ethernet (or in rare cases serial lines), using 
  124.     TCP/IP. 
  125.  
  126.     The hardware of an XT will include at least a (large) screen, keyboard, 
  127.     mouse, some RAM, and jacks for ethernet cables. Most XTs do not have a 
  128.     hard disk, a floppy drive, or other such means of data transfer.
  129.     This means that the XT either has its operating system in ROM (rare),
  130.     or gets it from a host on the net that it is attached to. 
  131.  
  132.     To get to its operating system from the Linux computer at boot time, 
  133.     the XT usually does something like this: It sends out a cry of help 
  134.     through the net with its ethernet number as a name tag. A "real" computer
  135.     on the net compares this number with a list of them, and if a match 
  136.     is found, sends the XT the IP number it has been assigned to (via the
  137.     bootpd daemon). This allows the XT to download its operating system and
  138.     other data it needs from the hard disk of the host computer (usually via 
  139.     tftp). This is the procedure explained here in detail.
  140.  
  141.     An XT is therefore actually a full-fledged computer, with its own IP
  142.     number, RAM, program, and independent hardware, albeit more like
  143.     an idiot savant. It's great at what it does best, managing X graphics,
  144.     but not much good for anything else.
  145.  
  146.     
  147. 2.3 Advantages and Disadvantages
  148.  
  149.     Ideally, an XT is silent, swift, and deadly. Usually without fan, floppy
  150.     or hard disk, they make no noise at all, and with a few meters of 
  151.     ethernet cable you can put your loudish computer in a different room and
  152.     have the silent XT on your desk. Since the XT is built for X and graphics,
  153.     it is faster than, say, an X server program unter MS Windows or DOS.
  154.     
  155.     With the server on one machine and the client on another, the processor
  156.     doesn't have to handle both at once. Though this might not be noticable
  157.     in terms of speed (since the data now has to be moved over the ethernet),
  158.     it will reduce the CPU load and save memory on the Linux machine that
  159.     would otherwise be swallowed by the X server.
  160.  
  161.     On the flip side, you will need an ethernet card, which usually means
  162.     giving up a slot and an IRQ. Depending on the manufacturer, the software
  163.     for the XT can take up around 20 MBytes of hard disk space on your Linux 
  164.     machine. You can almost always delete a lot of unused stuff once you 
  165.     figure out what is really needed. Most XTs will require the host machine
  166.     to have the bootpd and tftpd daemons installed and running - both are
  167.     potential security holes. You will probably want to have a further daemon,
  168.     xdm, running in the background. And yes, that big XT screen will take up
  169.     a lot of desk space.
  170.  
  171.  
  172. 2.4 What do I need?
  173.  
  174.     Kind of you to ask! But more appropriately, what do you need? 
  175.  
  176.     First of all, you need an XT. If you have lots of money, and we do mean
  177.     lots, you can go out and buy one. Jim Morton <jim@applix.com> posts
  178.     a list of XTs and their prices to comp.windows.x on a regular basis.
  179.     Or fortune might smile on you. Since old XTs can't be used with DOS,
  180.     MS Windows, or OS/2, some firms solve the problem of what to do with
  181.     their old ones by just throwing them out.
  182.  
  183.     On the Linux computer side, you will need an ethernet card. Though it
  184.     is in theory possible to run an XT via serial line and SLIP, this is
  185.     not recommended unless you have masochistic tendencies. Check out the 
  186.     Ethernet-HOWTO maintained by Paul Gortmaker <Paul.Gortmaker@anu.edu.au>
  187.     on how to purchase and set up ethernet cards. SLIP und CSLIP are covered
  188.     in the same document, should you have no other choice. In this case, you 
  189.     might also want to look at the Serial-HOWTO by Greg Hankins 
  190.     <gregh@cc.gatech.edu> for information on how to get the best performance.
  191.  
  192.     You will also need to have TCP/IP support compiled into the kernel,
  193.     as well as a IP number for at least your machine and the XT. The 
  194.     Net-2-HOWTO by Terry Dawson <terryd@extro.ucc.su.oz.au> covers this.
  195.  
  196.     Finally, you will need to have X installed on you Linux machine. In
  197.     theory you should be able to have just the X clients and programs
  198.     like xdm installed, without the servers package. But it is probably
  199.     not worth the effort to untangle the various parts. The XFree86 HOWTO
  200.     by Helmut Geyer <Helmut.Geyer@iwr.uni-heidelberg.de> will tell you how
  201.     to get X up and working.
  202.  
  203.  
  204. 3.0 Cables, Nets and Daemons
  205.  
  206.     This section discusses the changes to hard- and software required to 
  207.     get the XT connected to the Linux machine. Some conventions are that 
  208.     the XT is called "whisper" (because it makes no sound), and the Linux
  209.     host machine "imlinux" (I am Linux). They are both part of the 
  210.     "frog" domain in Germany (".de"). Their IP numbers are
  211.  
  212.           192.168.13.1   for  imlinux.frog.de (the Linux machine)
  213.           192.168.13.41  for  whisper.frog.de (the XT linked to it).
  214.  
  215.     Note that these are standalone IP numbers for systems not connected to
  216.     the greater Internet, and that to my knowledge there is no frog domain
  217.     in Germany. We will assume that there are no other machines on the net, 
  218.     and that NFS is not installed. 
  219.  
  220.     [Bummer. If someone has used NFS in connection with his or her XT, I'd 
  221.     love to hear from you.]
  222.  
  223.  
  224. 3.1 Physical connection
  225.  
  226.     This should be as easy as plugging cables into both machines. Please note 
  227.     that some XTs have two serial inputs that can only run at certain speeds 
  228.     if both are in use. Check your XT manual for details. You will need the 
  229.     ethernet number of the XT later on. It is displayed during boot of the 
  230.     XT, even if no connection is yet established.
  231.  
  232.     As soon as you have the wires in place, you should be able to test the
  233.     ethernet link. After booting the XT, it should start off by complaining
  234.     that its calls for a bootpd and/or tftpd are not being answered, and
  235.     then start a boot operating system (usually part of the XT ROM). This 
  236.     should include a primitive ping command which will allow you to test
  237.     the ethernet from the XT to the Linux machine. Don't panic if it 
  238.     doesn't work the other way around yet. The XT probably needs its full
  239.     operating system to be able to respond.
  240.  
  241.  
  242. 3.2 Configuring the Net
  243.  
  244.     Your basic configuration needs should be covered by the Net2-HOWTO as
  245.     mentioned above. We'll assume here that you already have TCP/IP and 
  246.     such up and running. Since the XT is considered to be just another 
  247.     computer on the net, you will now have to make sure both Linux machine
  248.     and XT know each other's IP address and that of the net they are on.
  249.  
  250.  
  251. 3.2.1 Configuring the Linux Machine
  252.  
  253.     Information on the XT will have to be included in at least these files:
  254.  
  255.     /etc/hosts    Add a line with the IP number of the XT, such as
  256.  
  257.                   # /etc/hosts line for Linux machine. lprhost and loghost 
  258.                   #            are optional 
  259.                   192.168.13.1    imlinux imlinux.frog.de lprhost loghost
  260.                   # The new line for the XT is next
  261.                   192.168.13.41   whisper whisper.frog.de
  262.  
  263.     /etc/ethers   This file provides a list of ethernet numbers and the
  264.                   corresponding host names. This does not seem to be needed
  265.                   in all distributions and setups, but in case it is, you
  266.                   will need to include the ethernet number of the 
  267.                   XT and its hostname. This would be something like
  268.                   
  269.                   04:03:e8:cc:0d:24    imlinux
  270.                   0f:03:11:31:45:f1     whisper 
  271.  
  272.                   (Yes, the ethernet numbers are fakes)
  273.     
  274.     [You might have to change further files if you are running programs like
  275.     named, routed, or gated. As I am not, I would be grateful if someone 
  276.     could fill me in on which files, if any, must be modified.]
  277.  
  278.     You will have to reboot your Linux machine to make sure all changes 
  279.     take effect.
  280.  
  281.  
  282. 3.2.2 Configuring the X Terminal
  283.  
  284.     Check your XT manual for which files will have to be edited. In my case,
  285.     there was a central configuration file which needed to have the 
  286.     following entries changed:
  287.  
  288.         ip_host_table            192.168.13.1    imlinux
  289.         ip_host_table            192.168.13.1    imlinux.frog.de
  290.         ip_host_table            192.168.13.41   whisper
  291.         ip_host_table            192.168.13.41   whisper.frog.de
  292.  
  293.         file_access_1            TFTP
  294.         file_host_name_1         imlinux.frog.de
  295.         file_path_1              /usr/local/xterm/liveshere
  296.  
  297.         display_access_table     whisper
  298.         display_access_table     imlinux
  299.         enable_access_control    YES
  300.  
  301.         xdmcp_server             imlinux
  302.         broadcast_address        192.168.13.255
  303.         default_telnet_host      imlinux
  304.  
  305.     Note that the XT picks up its files via tftp from the directory
  306.     /usr/local/xterm/liveshere, and the terminal is able to do XDMCP 
  307.     (important for the configuration of xdm). 
  308.  
  309.     There will also be other configurations files for things like fonts. You
  310.     should be able to use the fonts already installed with Linux. In my case, 
  311.     the file for the fonts (font.tbl) looks something like this
  312.  
  313.         /usr/lib/X11/fonts/75dpi
  314.         /usr/lib/X11/fonts/100dpi
  315.         ...
  316.         /usr/local/xterm/misc
  317.         /usr/local/xterm/openlook
  318.  
  319.     with a few more lines to the same effect. Later, when the XT boots off
  320.     the Linux machine, you should see a list of files it has successfully
  321.     loaded. 
  322.  
  323.     Another thing you will probably want to have on your XT is "backing
  324.     store," which means that those window parts covered by other windows
  325.     are not stored in the Linux' RAM, but in that of the XT. Check your
  326.     XT manual for further details.
  327.  
  328.  
  329. 3.3 bootpd
  330.  
  331.     Bootpd is the daemon that hears the X terminal's cry for help
  332.     at boot time and responds by telling the XT who it is, and where 
  333.     it can find the software it wants to download. For some odd reason
  334.     bootpd is not included in some current distributions, notably 
  335.     Slackware 2.2.0.1. This means you will have to get it via FTP or
  336.     some other source. It should then be placed in /usr/sbin/ (not in 
  337.     /etc, as the man page would have it) as in.bootpd. Add or uncomment
  338.     the following line in /etc/inetd.conf:
  339.  
  340.        bootps dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.bootpd 
  341.  
  342.     This will ensure that inetd can start bootpd if a boot request
  343.     is found. 
  344.  
  345.     The configuration file for bootpd is /etc/bootpd. The syntax is 
  346.     explained in the man page. In our example, the /etc/bootpd file should
  347.     look something like this ("server" is now used in the classical sense
  348.     again):
  349.  
  350.        # Sample /etc/bootpd file
  351.        # First, global entry for stuff every host uses
  352.        allhost:hd=/usr/local/xterm/liveshere:\ # Home directory XT software
  353.              :ds=192.168.13.1:\                   # Domain name server (imlinx)
  354.              :sm=255.255.255.0:\               # Subnet mask
  355.              :gw=192.168.13.1:\                # Gateways
  356.              :ts=192.168.13.1:\                # Time Servers
  357.              :lp=192.168.13.1:\                # lpr Servers
  358.              :to=-7200:                        # Time Offset in seconds
  359.        # Next, individual entries of every single host. Futher XTs would
  360.        # have their own entry
  361.        whisper:ht=ethernet:\         # Type of hardware link
  362.               :ha=0f03113145f1:\     # Ethernet number of X terminal
  363.               :ip=192.168.13.41:\    # IP number of X terminal (whisper)
  364.               :tc=allhost:\          # Template for standard options as above
  365.               :bf=xtermOS:           # Boot file name - the X terminal's OS
  366.  
  367.     The name of the XT's operating system may not be included as part of the 
  368.     hd (home directory) entry. In our example, the file that the XT grabs
  369.     as its operating system is /usr/local/xterm/liveshere/xtermOS, but the
  370.     hd entry is /usr/local/xterm/liveshere. 
  371.  
  372.     bootpd will write information to both /var/adm/syslog and 
  373.     /var/adm/messages, which should look something like this after a
  374.     successful boot:
  375.  
  376.        Jul 17 05:19:42 imlinux in.bootpd[110]: connect from 0.0.0.0
  377.        Jul 17 05:19:42 imlinux bootpd[110]: reading "/etc/bootptab"
  378.        Jul 17 05:19:42 imlinux bootpd[110]: read 2 entries from "/etc/bootptab"
  379.        Jul 17 05:19:43 imlinux bootpd[110]: request from hardware address 
  380.        0F03113145F1 Type 1
  381.        Jul 17 05:19:43 imlinux bootpd[110]: found 192.168.13.41 whisper
  382.  
  383.     After helping the XT to boot, bootpd will stick around for about 
  384.     15 minutes, then remove itself if there is no further work to do.
  385.  
  386.  
  387. 3.4 tftpd
  388.  
  389.     The Trivial File Transfer Program is used by the XT to load its 
  390.     operating system from a Linux hard disk. It should be included in 
  391.     every distribution and does not have a configuration file. You can 
  392.     test tftp by just typing "tftp" from a command shell.
  393.  
  394.     As with bootpd, you will have to include or uncomment the following line
  395.     in /etc/inetd.conf:
  396.  
  397.        tftp dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.tftpd 
  398.  
  399.     Note that tftp can only access files that have world read access set.
  400.     Note also that tftp is a potential security hole that you will have to
  401.     keep in mind, and that the version of tftp included in some Linux
  402.     packages does not include the -r (or -s) flags for more secure use.
  403.  
  404.     tftp will also write to /var/adm/messages. If bootpd has successfully
  405.     done its stuff, the next lines should be something like
  406.  
  407.        Jul 17 05:19:43 imlinux in.tftpd[111]: connect from whisper
  408.        Jul 17 05:19:58 imlinux in.tftpd[113]: connect from whisper
  409.        Jul 17 05:19:59 imlinux in.tftpd[115]: connect from whisper
  410.        Jul 17 05:20:00 imlinux in.tftpd[117]: connect from whisper
  411.        Jul 17 05:20:03 imlinux in.tftpd[125]: connect from whisper
  412.        Jul 17 05:20:05 imlinux in.tftpd[127]: connect from whisper
  413.  
  414.     and so on for quite a while. These are the files that the XT is requesting
  415.     from its home directory on the Linux computer. You should see messages on
  416.     the XT's screen while this transfer takes place.
  417.  
  418.  
  419. 3.5 Testing the link 
  420.  
  421.     Once you have modified the files mentioned above, you should be able
  422.     to boot the XT. Depending on the manufacturer, more or less verbose
  423.     messages on the XT's screen will tell you what is happening. Look
  424.     carefully for messages about files that cannot be found.
  425.  
  426.     If all is well, it should progress to the point where the XT can launch
  427.     its own version of X. This means a grey background and the X cursor.
  428.     If you already have xdm running on the Linux machine, it might even
  429.     put up the xdm login prompt, though things might go a little haywire 
  430.     since some definitions are not in place yet. Be prepared to kill xdm as 
  431.     root from the Linux machine as a last resort.
  432.  
  433.     Most XTs have an inbuilt set of functions, like a telnet client, as
  434.     part of their boot operating system. You can test the link further by 
  435.     telneting into the Linux computer.
  436.  
  437.     At this point, depending on how access is set up, you might also 
  438.     be able to start X programs on the XT by using the display option.
  439.     From the Linux computer, try something like
  440.  
  441.                       xclock -display whisper:0 &
  442.  
  443.     This should produce the xlock on the XT. You can even start a window
  444.     manager such as fvwm this way. 
  445.  
  446.  
  447. 4.0 X on the run
  448.  
  449.     This section deals with setting up xdm so that a login prompt is 
  450.     available on the XT, and will return when a user has logged out. The xdm
  451.     program is a display manager that is the (very) rough equivalent of the
  452.     login programs for normal terminals. It should be included in every 
  453.     Linux X package.
  454.  
  455.  
  456. 4.1 xdm configuration
  457.  
  458.     xdm's configuration files live in /usr/X11R6/lib/X11/xdm (/usr/X11R6 may 
  459.     be a link to /usr/X11). The main configuration file is xdm-config. You 
  460.     should find, among others, the following lines already in place:
  461.  
  462.        DisplayManager._0.authorize:    true
  463.        DisplayManager._0.setup:        /usr/X11R6/lib/X11/xdm/Xsetup_0
  464.        DisplayManager._0.startup:      /usr/X11R6/lib/X11/xdm/GiveConsole
  465.        DisplayManager._0.reset:        /usr/X11R6/lib/X11/xdm/TakeConsole
  466.  
  467.     These are the files that control the screen when X is run on the Linux
  468.     machine itself. For the XT, we add four lines of the same type:
  469.  
  470.        DisplayManager.whisper_0.authorize:     true
  471.        DisplayManager.whisper_0.setup:   /usr/X11R6/lib/X11/xdm/Xsetup_whisper
  472.        DisplayManager.whisper_0.startup: /usr/X11R6/lib/X11/xdm/Xstartup
  473.        DisplayManager.whisper_0.reset:   /usr/X11R6/lib/X11/xdm/Xreset
  474.  
  475.     Note that whisper_0 is the xdm notation for whisper:0, just as _0 is :0.
  476.     Note also that GiveConsole has been replaced by Xstartup, which in my
  477.     case is a dummy file, and TakeConsole by Xreset, is also a dummy file.
  478.     The original files both control the ownership of the console when X is
  479.     run on the Linux machine, and there is no reason to fool around with 
  480.     the Linux console just because the XT is running.
  481.  
  482.     The setup files run programs before the login prompt is placed on the
  483.     screen. This is the place to, say, use xv or a similiar program to
  484.     have a picture in the background. You should be able to simply copy
  485.     the given Xsetup_0 file to Xsetup_whisper.
  486.     
  487.     [Since this question comes up again and again: One way of putting a 
  488.     picture in the root window is by placing the line
  489.     
  490.          nice xv -root -quit -rmode 5 <picture_file> &
  491.  
  492.     or such in the setup file. picture_file will then be displayed in 
  493.     the root window under the xdm login prompt. Note that some XTs will
  494.     give an error message if the file is too large or too complex.]
  495.  
  496.     Xaccess controls who can have access to the machine. You should be able
  497.     to leave the defaults as they are. Note hat Xaccess will let you greet
  498.     the user with a chooser, in case you have different machines on the net
  499.     that can service the XT.
  500.  
  501.     Xresources controls the shape and size of the login prompt. You might
  502.     want to have different messages for the XT and Linux machine by
  503.     replacing the 
  504.  
  505.        DisplayManager*resources:       /usr/X11R6/lib/X11/xdm/Xresources
  506.  
  507.     with two lines such as
  508.  
  509.        DisplayManager._0.resources:        /usr/X11R6/lib/X11/xdm/Xres_0
  510.        DisplayManager.whisper_0.resources: /usr/X11R6/lib/X11/xdm/Xres_wh_0
  511.  
  512.     where Xres_wh_0 is the name of the whisper resource file. 
  513.  
  514.     You should be able to leave the Xsession file unchanged, too.
  515.  
  516.     Configuration of the Xservers file is slightly more tricky. Out of the
  517.     box, there is probably only one line uncommented (Slackware 2.2.0.1)
  518.  
  519.                     :0 local /usr/X11R6/bin/X 
  520.  
  521.     or something to that effect. This starts the Linux machine X server
  522.     when xdm is called. Commenting this line means that when xdm is called, 
  523.     there will be no X started on the Linux machine. This is what you need
  524.     to do if you only want to have xdm managing the XT, but not the local
  525.     Linux X server. In this case, X can still be started with startx at any 
  526.     time on the Linux machine with no ill effects found so far.
  527.  
  528.     If your XT does not have XDMCP, you must also include a line for the
  529.     XT, such as 
  530.  
  531.                          whisper:0 foreign
  532.  
  533.     XDMCP is a standardized method that for example lets X terminals talk
  534.     to their hosts. If your terminal does have XDMCP, don't repeat do not
  535.     include that line here. This would make xdm think that there is an XT
  536.     out there that doesn't know XDMCP, while at the same time a terminal
  537.     with the same name is trying to get in, too. This can lead to all kinds
  538.     of ugly effects, such as two xdms fighting for control.
  539.  
  540.     Note that you can use the xdm-config entries even if there is no line
  541.     in Xservers for the XT, that is, you can still customize the xdm
  542.     login prompt, etc, for a XT that uses XDMCP.
  543.  
  544.     To make xdm start with every reboot, you can include a line such as
  545.  
  546.         /usr/bin/X11/xdm
  547.  
  548.     in /etc/rc.d/rc.local. Other people start xdm with the /etc/inittab
  549.     file. In any case, xdm should appear with the list of processes after
  550.     a reboot of the Linux machine.
  551.  
  552.  
  553. 4.2 Access questions
  554.  
  555.     [BummerRank1. This is important, and we're working on it.]
  556.  
  557.     To see if a user can access the XT screen from the Linux machine,
  558.     log in as non-root on the Linux machine and try a command like
  559.  
  560.            xsetroot -solid white -display whisper:0 &
  561.     or 
  562.            xterm -display whisper:0 &
  563.  
  564.     Try this when somebody is logged in on the XT and when there is only the
  565.     xdm login to be seen. Depending on where you are, the ability to put 
  566.     stuff on the XT screen from the console might more of a feature than a 
  567.     bug. 
  568.  
  569.  
  570.  
  571. 5.0 Errors, Unknowns, and Thanks
  572.  
  573.     
  574. 5.1 Known problems
  575.    
  576.     These are problems which have turned up, as well as interesting features
  577.     that might be considered problems. If you have come up with any 
  578.     interesting features, or even solutions, please let me know.
  579.  
  580.     talk  - The interactive chat will work if the user at the XT starts the
  581.             session with a user at the Linux machine, but fails the other
  582.             way around. I'm sure I read a fix for this once, but have 
  583.             forgotten it.
  584.  
  585.     who   - A user logged in via the XT does not appear in the output of the
  586.             who command, even if it is sent from the XT itself. This is 
  587.             probably the reason why talk fails when initiated from the Linux
  588.             machine ("On an XT, nobody even knows you're a human").
  589.  
  590.     xlock - Normal call of xlock will only produce a message to the effect
  591.             that the XT's screen can't be grabbed. The -remote option must
  592.             be included in the xlock call to allow terminal locking. Note
  593.             that some xlock modes are more resource hungry than others. 
  594.             Qix seems to be more suited for XTs than others - check out the
  595.             FAQ by Art Mulder (below) for more details.
  596.  
  597.     xv    - Some XTs will not have enough video memory to be able to handle
  598.             large and/or complex colored background pictures. Try removing
  599.             any old pictures (with `xsetroot' or such) and refreshing the 
  600.             screen before you move xv's window into the root.
  601.  
  602.  
  603. 5.2 Terminals tested
  604.  
  605.     The procedures described in this text have so far only been seriously 
  606.     tested on a Tektronix XP23 in connection with a 386DX-33MHz, 16 MByte 
  607.     RAM running Linux 1.2.3 and the XFree86 Version 3.1.1 files from the
  608.     Slackware 2.2.0.1 distribution.
  609.  
  610.  
  611. 5.3 Futher reading
  612.  
  613.     More information on X can be found on the net as:
  614.  
  615.     David B. Lewis <dbl@ics.com> posts the detailed and extensive 
  616.     Comp.windows.x Frequently Asked Questions (FAQ) to comp.windows.x, 
  617.     news.answers, and comp.answers on a regular basis. This document also
  618.     contains entries on where to get more information on X.
  619.  
  620.     Steve Kotsopoulos <steve@ecf.toronto.edu> posts the X on Intel-based Unix 
  621.     Frequently Asked Questions (FAQ) list to the same groups.
  622.  
  623.     Art Mulder <art@cs.ualberta.ca> maintains the Comp.windows.x: Getting 
  624.     more performance out of X FAQ, which is als posted regularly to these
  625.     groups. It includes tips very useful for Linux under X, too. 
  626.  
  627.  
  628.  
  629. 5.4 Thanks
  630.  
  631.     First thanks, as always, go out to Linus B. Torvalds 
  632.     <torvalds@kruuna.helsinki.fi>. Futhermore to
  633.  
  634.     Klaus ter Fehn <ktf@bc3.gun.de>, for making it possible and
  635.     Douglas K. Stevenson <duck@catzen.gun.de>, for making it passable.
  636.  
  637.