SLXT - SPARC-Linux Xterminal FAQs
Section I - General Information.
================================
Q1-01 - What is this package?
Q1-02 - Why would I want to use this package?
Q1-03 - Where is the XML and how do I do transformations?
Q1-04 - What are the differences between this and the other Xkernel
packages out there?
Section II - Requirements & Configuration.
==========================================
Q2-01 - What extra hardware do I need?
Q2-02 - What extra software do I need?
Q2-03 - Do I have to use a SPARC machine as a server?
Q2-04 - Do I have to use a Linux machine as a server?
Q2-05 - I've heard that a Linux server can cause problems on a Sun
network. Does this apply to an Xterminal server, too?
Q2-06 - Do I have to use your ditsy install scripts and templates?
Q2-07 - Can I use multiple frame-buffers and displays on a single client?
Q2-08 - Can I use a diskfull, Sun workstation as a test client, just to
get the feel of the package?
Q2-09 - My machine runs a recent version of Linux and uses "xinetd"
rather than "inetd". Will SLXT still work?
Q2-10 - Can I use the SLXT package to boot my Classic-X/JavaStation?
Section III - Functionality.
============================
Q3-01 - How do I boot the Xterminal client system?
Q3-02 - How do I shut down the Xterminal client system?
Q3-03 - My IPC runs much faster as an Xterminal than it does as a normal
SPARC-Linux machine. Does this mean that the "slowdown bug" is
fixed in the SLXT kernel?
Q3-04 - Will the audio work on the client workstation?
Q3-05 - Can I use the floppy drive as a mountable filesystem?
Q3-06 - When I log on at the client workstation, the prompt shows that I'm
actually running a shell on the server. Can I change this?
Q3-07 - Can I run multiple Xterminal clients from the same server?
Q3-08 - Do I need to set up the /usr/gnemul tree to be able to run
Netscape?
Q3-09 - <CTRL><ALT><F1> gets me back to the console from
the X session, but this functionality stops working after I log
into X for the second time. When will this be fixed?
Q3-10 - What other functionality can we expect to see in the SPARC-Linux
Xterminal package?
Q3-11 - How can I tell whether I have an 8-bit or a 24-bit graphics card in
my Sun machine?
Section IV - Troubleshooting.
=============================
Q4-01 - My client doesn't boot. What could be wrong?
Q4-02 - The ARP/RARP entries on my server look okay... now what?
Q4-03 - Where can I find the Xterminal client log files?
Q4-04 - My application crashes with:-
"Gdk-ERROR **: BadDrawable (invalid Pixmap or Window parameter)"
Why is this?
Q4-05 - When I start the 23rd instance of Quake-III on my client, the X
server crashes and leaves me back at the "#" prompt. Did I say
something to offend it?
--------------------------------------------------------------------------------
Section I - General Information (ANSWERS).
==========================================
Q1-01 - What is this package?
A1-01 - This is a simple Xterminal package for SPARC architecture
machines, loosely based on Seth Robertson's Xkernel package. It
enables a Sun SPARCstation to be used as an Xterminal, running
only the X server process, while all of the client programs are
run on a separate system with the output displayed on the high
resolution, SPARC monitor.
Q1-02 - Why would I want to use this package?
A1-02 - This package uses a Linux kernel to give full display
functionality to the SPARCstation at speeds approaching that of
the host server. In cases where the SPARC is an exceptionally
slow model, or has very little memory, this speed increase can be
very marked. The package also enables a SPARCstation to be used
without an internal disk and with only 12MB of memory (an 8MB
machine will boot, but the X server process will eat all of
available physical memory and the system will explode in a shower
of slimy, unsatisfied kmallocs - this is an experience on a par
with that of a visiting Mother-in-law... rarely fatal, but not to
be encouraged).
Q1-03 - Where is the XML and how do I do transformations?
A1-03 - That's XSLT, dummy! Go to:- http://www.w3.org/TR/xslt
Q1-04 - What are the differences between this and the other Xkernel
packages out there?
A1-04 - This package uses only the very finest, hand crafted, Linux code.
There are no Sun binaries or libraries used at all, so this
package is totally free from any licencing restrictions (other
than those imposed by the GNU General Public Licence - see
enclosed LICENCE file). This package is intended to support
SPARC architecture clients only. For Xterminal client support
of i386 clients, I would recommend that you check the Linux
Terminal Server Project at http://www.ltsp.org (they also have
support for SPARC machines).
--------------------------------------------------------------------------------
Section II - Requirements & Configuration (ANSWERS).
====================================================
Q2-01 - What extra hardware do I need?
A2-01 - None. Any SPARCstation system with a frame-buffer manufactured by
Sun should work. Obviously, your machine must have a monitor,
keyboard and a mouse.
Q2-02 - What extra software do I need?
A2-02 - None for the client system; everything you need is included in
the SLXT package. The machine you choose as a server must have a
full X11 tree (default for most Linux installations) and
ARP/RARP support either built into the kernel, or available as
loadable kernel modules (again, these should be available by
default on most, post 2.0 Linux systems).
Q2-03 - Do I have to use a SPARC machine as a server?
A2-03 - No. Nien. Niet. Iie. Your server can be of any architecture.
The only programs that run on your Xterminal are effectively
the Linux kernel and the X server. All applications, window
managers, etc, are executing in native mode (whether that happens
to be i386, Alpha, SPARC, VAX or IBM390) on the server and only
*displaying* on the Xterminal. The Linux kernel and the X
server binary (and the other programs needed to run the display
on your SPARC Xterminal) are all included in this package.
Q2-04 - Do I have to use a Linux machine as a server?
A2-04 - You do not need to use a Linux (or an iX86 system) as your
server. Any system capable of providing ARP/RARP, TFTP and NFS
support will work, although the installation and add_xterm scripts
will probably need some modification. I have already tested the
package using a Solaris 2.5.1 server and, although the scripts did
not work, installing and running SPARC-Linux Xterminals proved to
be a very easy task - no more than ten minutes work at most for
an experienced Sun admin.
Q2-05 - I've heard that a Linux server can cause problems on a Sun
network. Does this apply to an Xterminal server, too?
A2-05 - Yes. Please be very careful where you deploy this package. It
will almost certainly cause problems on networks where there
are diskless, dataless, or autoclient Sun machines, unless the
server chosen as the Xterminal server also happens to be the
server for the existing clients. The reason for this is that
most Suns will assume that a server answering an RARP request
will also provide bootparam services. This is obviously not
going to be the case when that "server" is actually an iX86
Linux system providing nothing more than Xterminal support.
Q2-06 - Do I have to use your ditsy install scripts and templates?
A2-06 - No. If you have the experience to be able to install things
manually, I would encourage you to experiment with the package
(and to post any improvements).
Q2-07 - Can I use multiple frame-buffers and displays on a single client?
A2-07 - You tell me! The X server process did detect the second and
third frame buffers in my IPC, but the screen output at
initialization was jumbled. This could well be a problem with
my hardware rather than the X server itself, though. I'd
certainly like to hear from anyone else who has tried multiple
frame-buffers in their machine.
Q2-08 - Can I use a diskfull, Sun workstation as a test client, just to
get the feel of the package?
A2-08 - Yes. The kernel image in the package does not have any device
drivers for disks included. It cannot overwrite existing data and
so it is quite safe to use a diskfull system as a test client.
Q2-09 - My machine runs a recent version of Linux and uses "xinetd"
rather than "inetd". Will SLXT still work?
A2-09 - Yes. Revisions of SLXT later than 0.7d understand the xinetd
structure. However, depending upon which distribution you're
using, you may still need to manually load some packages from
your release media. "rarpd" and "tftpd", for instance, are not
included in the default installs on some distributions.
Q2-10 - Can I use the SLXT package to boot my Classic-X or JavaStation?
A2-10 - No. The SLXT package is not intended as a replacement for Sun's
XTerminal products. The boot PROMs in those machines are very
different from standard systems and will not understand
or execute the Linux code which the SLXT server sends it.
A Classic-X will fail to boot with the message "Error while
getting software from Boot Host". A JavaStation will leak cold
coffee all over your desktop.
--------------------------------------------------------------------------------
Section III - Functionality (ANSWERS).
======================================
Q3-01 - How do I boot the Xterminal client system?
A3-01 - You need to ensure that the client boots from the network. The
exact syntax of the boot command depends upon the revision of
the boot PROM in your machine, but one of the following two
examples will generally work:-
PROMPT COMMAND
====== =======
> ble()
ok boot net
To make the change permanent and ensure that the machine boots
from the network by default, save the setting to NVRAM:-
ok setenv boot-device net
Q3-02 - How do I shut down the Xterminal client system?
A3-02 - Simply log-out and switch off. The client doesn't have any
filesystems to sync or check.
Q3-03 - My IPC runs much faster as an Xterminal than it does as a normal
SPARC-Linux machine. Does this mean that the "slowdown bug" is
fixed in the SLXT kernel?
A3-03 - No. The SLXT package does not fix the IPC "slowdown" bug (it
only appears to do so by moving the load from the client onto
the server). The SLXT kernel is a standard, 2.0.30 kernel,
with most of the drivers for peripheral devices removed. The
client doesn't do anything other than run the X-server process;
there is no disk I/O and no swapping. In the same way that some
IPC systems display the "slowdown" bug and some don't, it's
quite possible that some SLXT clients might still suffer from
the problem, but because there's so little running on the
system, it is unlikely that the symptoms will be as evident as
on a normally configured SPARC-Linux machine.
Q3-04 - Will the audio work on the client workstation?
A3-04 - No. All applications run on the server, with only the display
output redirected to the SPARC-Linux Xterminal. Any sound
output (other than keyboard beeps) would normally be through
the speaker or sound card on the server, assuming that the user
has access permission.
Q3-05 - Can I use the floppy drive as a mountable filesystem?
A3-05 - No. There are no floppy, or other disk drivers included in the
Xterminal kernel.
Q3-06 - When I log on at the client workstation, the prompt shows that I'm
actually running a shell on the server. Can I change this?
A3-06 - Yes. Although you cannot get a shell on the client machine
itself (it only runs a cut-down kernel and the X-server
process), you can change the XDM configuration to enable a
menu-selectable choice of machines before the initial login.
See the "CHOOSER" section of the XDM manual page for more
details on how to configure the target servers, and the
"X-server configuration" section at the top of the
SLXT_root/bin/init file for client side changes. In addition,
the normal practice of setting the DISPLAY variable and running
applications from remote machines will also work.
Q3-07 - Can I run multiple Xterminal clients from the same server?
A3-07 - Yes. I have run two SPARC clients from a single, i386 Linux
server, with surprisingly good results. The only limits to the
number of simultaneous clients are the horsepower of your
server and the bandwidth of your network.
Q3-08 - Do I need to set up the /usr/gnemul tree to be able to run
Netscape?
A3-08 - No. All applications run on the server with display
output redirected to the SPARC client, so your server's native
version of Netscape will work. You do not need the SunOS
emulation tree unless your server is also a SPARC-Linux system
(and even then, you can probably "xhost" applications like
Netscape from some other machine on the net).
Q3-09 - <CTRL><ALT><F1> gets me back to the console from
the X session, but this functionality stops working after I log
into X for the second time. When will this be fixed?
A3-09 - Actually, the initial virtual-console functionality is the bug,
not the fact that it stops working. Switching between X and the
console display can really confuse the X keyboard handling and
I don't recommend doing it unless you're trying to debug
display problems. As there's no shell available on the virtual
console, there's very little point in switching to it anyway.
Q3-10 - What other functionality can we expect to see in the SPARC-Linux
Xterminal package?
A3-10 - Extra functionality will come with the addition of
administration scripts for OS'es other than Linux, making it
easier to use different systems and architectures as support
servers for SPARC-Linux Xterminal clients. For non-SPARC
clients I would recommend that you look at the DXT package
Q3-11 - How can I tell whether I have an 8-bit or a 24-bit graphics card in
my Sun machine?
A3-11 - Power cycle your system. When the banner first appears on the
screen, you'll see a Sun logo in the top, left-hand corner. If the
logo is a single colour (usually blue), it's a fair bet that your
frame buffer is an 8-bit board. If the logo is a multicolour,
shaded, 3D picture of geometric objects, then you probably have
a 24-bit board. This method is not infallible (a customized
logo can be loaded into the NVRAM by OEMs or customers). However,
the SPARC-Linux kernel will identify most boards correctly during
boot, so another method is just to watch the screen during boot.
--------------------------------------------------------------------------------
Section IV - Troubleshooting (ANSWERS).
=======================================
Q4-01 - My client doesn't boot. What could be wrong?
A4-01 - There are many reasons for a failed boot, but the most common
one is a missing, or bad, ARP or RARP entry on the server,
resulting in repeated "Timeout waiting for ARP/RARP packet"
messages scrolling down the console on the client system. To
check this, log into the server and do "arp -a" and "rarp -a".
You should see the client hostname and ethernet address in both
tables. Double check the ethernet address against the address
shown at the top of the client's display (all numbers in
the ARP/RARP tables will be padded with leading zeros). If the
client address is missing or incorrect, you can add it manually
using "arp -s " (the syntax is the
same for the "rarp" command). Remember to pad any single
characters with a leading zero.
Q4-02 - The ARP/RARP entries on my server look okay... now what?
A4-02 - Make sure that your client and server are physically connected
to the same sub-net. Most routers and repeaters will not
forward ARP/RARP packets.
If you're still having problems, use the "tcpdump" program
("etherfind" on SunOS, or "snoop" on Solaris) to verify that
your client is actually sending packets out onto the network.
The syntax is simple:-
tcpdump host
You should verify that the ethernet address which the client is
sending out in it's initial packet is the same as the one you
have loaded in your ARP/RARP tables on the server.
Make sure that some other system isn't answering the initial
ARP request. You might have to delete client entries from the
ARP/RARP tables on other machines to ensure that only the
server answers the Xterminal client's requests.
Q4-03 - Where can I find the Xterminal client log files?
A4-03 - The client machines do not write to the server filesystem at
all (in fact, the server exports the common, client filesystem
"read-only"). This can make debugging a little difficult, but
you can use the XDM error log to troubleshoot most application
problems (check the xdm-config file for the location on your
particular machine, but generally the file is
/var/tmp/xdm-errors). Boot problems should be visible on the
client console during the boot sequence.
Q4-04 - My application crashes with:-
"Gdk-ERROR **: BadDrawable (invalid Pixmap or Window parameter)"
Why is this?
A4-04 - This is typical of a "heavy" graphics application (web browsers
are prime candidates) trying to grab more physical *main*
memory (not Frame-Buffer memory) than is actually available
on your machine (for performance reasons, the whole of your
graphics memory is usually mirrored somewhere in main memory).
The only real answer is to update your machine with more RAM.
A work around is to use fewer applications concurrently
and to avoid bloat-ware.
Q4-05 - When I start the 23rd instance of Quake-III on my client, the X
server crashes and leaves me back at the "#" prompt. Did I say
something to offend it?
A4-05 - Your SLXT client is running out of memory (see the previous
answer on application crashes). This is because SLXT does not
page or swap; all applications must fit into the available
memory space. You can upgrade physical RAM to give yourself
more space to play, or content yourself with running fewer,
lighter applications, or if all else fails, buy a disk drive
and install a full distribution locally on the machine.
--------------------------------------------------------------------------------
Last updated: $Date: 2003/03/13 02:16:50 $