Fine tuning at a central point
All applications on the server are now available to users, who can work with them as though on a normal PC. But if you are dissatisfied with the standard settings of your thin client network or want to improve its performance and compatibility, you need to study the file lts.conf
in detail. It holds the current settings for the thin clients and is held in the client root folder as /opt/ltsp/i386/etc/lts.conf
. You'll need administrator rights to edit this file, which essentially consists of two areas: standard settings [Default]
, which apply to all clients unless otherwise stated, and client-specific settings. The listing below shows a simple example.
[Default]
SERVER = 192.168.168.2
SOUND = true
X_MOUSE_DEVICE = /dev/psaux
X_MOUSE_PROTOCOL = Auto
[00-15-C5-A6-3A-2A]
XSERVER = s3
SOUND = false
SCREEN_01 = startx
SCREEN_02 = shell
# groups can also be formed
# example: Office group
[Office]
XSERVER = ati
X_MOUSE_DEVICE = /dev/ttyS0
X_MOUSE_PROTOCOL = "Microsoft"
[ws001] LIKE = Office
[ws002] LIKE = Office
Figure 1 : /opt/ltsp/i386/etc/lts.conf
This merely says that sound output is enabled, by default, for all thin clients, with the exception of a client specified by its MAC address. The client's IP address or name may alternatively be used to identify it. Instead, for that MAC address, the example lts.conf
disables sound output for a client and instructs the X Server to use the S3 screen driver. Groups of clients can also be set up, which makes life easier when you are configuring large networks.
Screen scripts allow you to use different types of session on a thin client and up to twelve screen scripts per client can be defined. In the example shown in Listing 1, an X Server starts on the first screen and a shell prompt on the second, for the selected client. A user can switch between the two screens with the key combination Ctrl Alt F<screen number>
. By default, LTSP recognizes four kinds of screen scripts, which are, besides the startx
and shell
above, telnet
, which sets up a telnet session to the server, and rdesktop
, which connects with a Windows server via RDP (remote desktop protocol):
SCREEN_03 = rdesktop -f meinterminalserver.com
If you'd like to write your own scripts, you can use the standard scripts in /opt/ltsp/i386/etc/screen.d
as models.
LTSP supports the connection of up to three printers to a thin client: serial, parallel or USB. They too are configured in lts.conf
, for example:
[00-15-C5-A6-3A-2A]
PRINTER_0_TYPE=U
PRINTER_0_DEVICE=/dev/usblp0
This example configures a USB printer connected to the thin client. In some cases, it may be necessary to load the USB printer module as well. The following entry would achieve that:
MODULE_01 = usblp
The printer spooler then has to be matched to the server, but whether it's CUPS (Common UNIX Printing System), LPRng or any other is irrelevant in practice. LTSP tells the thin client that a JetDirect printer is connected, so it acts as a print spooler.
socket://192.168.0.110:9100
Some contributions to the relevant forums and mailing lists show that configuring a printer doesn't always go smoothly. However, there is a suitable solution for almost every situation, so if things get complicated, it's worth having a look at the project forums and wikis.
Local media via LTSPFS
LTSP has been given ltspfs
for anyone who'd rather not, or can't, do completely without a local hard disk or a CD/DVD drive. This filing system, which has been developed on a FUSE (file system in user space) basis, gives access to local media like hard disks, USB sticks, CD-ROM drives etc. Edubuntu also contains it in the standard installation, and all Ubuntu or Debian users can install the required packages without fuss.
If you aren't sure whether the packages have already been installed, you can easily check this in Debian and its derivatives. The information is supplied for the server side by dpkg -l ltspfs|grep ^ii
and for the thin clients by sudo chroot /opt/ltsp/i386 dpkg -l ltspfsd|grep ^ii
.
If you would prefer to set up LTSP by yourself from the ground up, or if you would like to adapt it to your favourite distribution, you can do so with the LTSP Build Environment (LBE). The fact that the LBE uses the same compilers, linkers and other tools to make up the official packages means you can make your own packages compatible with the official ones. Further information and download sources are listed on the project web site.