Configure an LTSP Server

Legacy documentation, does not apply to the current release Toutatis
This manual shows how to install and configure a thin client server LTSP (Linux Terminal Server Project), generally to be used as a classroom environment.

In our example we will use for the server a computer with two Ethernet cards, one connected to the Internet and the other to a switch, which will be connected to the thin clients. As a client, you can use any PC or dedicated thin client with a i386 or amd64 processor, if it is capable of booting from PXE.

Installation

ATTENTION: The current LTSP client build in Trisquel 5.5 is broken. See Bug #5982. These instructions are only for Trisquel 4.0.1 LTS.

Having Trisquel installed and running in the server computer (using an LTS edition and a server kernel image is recommended), we open a terminal and install the ltsp-server-standalone package:

sudo apt-get install ltsp-server-standalone
This will install the necessary dependencies, including the dhcp server, which we will need to configure with the following command:
sudo gedit /etc/default/dhcp3-server
We edit the archive, setting the network interface we have connected to the switch. In our case, it will look like this:
INTERFACES="eth1"
We configure an static IP for that interface, at Trisquel menu > System > Administration > Network . The IP needs to be in the same range used by the dhcp server, 192.168.0.1 being the recommended value.

If we need to change the IP range or any other dhcp configuration, we edit:

sudo gedit /etc/ltsp/dhcpd.conf
The default values in this archive are OK, but in our case it will look like this:
authoritative;

subnet 192.168.0.0 netmask 255.255.255.0 {
    range 192.168.0.20 192.168.0.250;
    option domain-name "trisquel.local";
    option subnet-mask 255.255.255.0;
    option root-path "/opt/ltsp/i386";
    if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
        filename "/ltsp/i386/pxelinux.0";
    } else {
        filename "/ltsp/i386/nbi.img";
    }
}
We need to restart the servers to apply the changes:
sudo /etc/init.d/dhcp3-server restart
sudo /etc/init.d/openbsd-inetd restart
Note that there is not needed for the thin clients to have route to internet.

The next step is creating the image the clients will load. In our case, and as a recommendation for everyone, we will use the i386 arch for the clients.

sudo ltsp-build-client --arch i386
ATTENTION: The current LTSP client build in Trisquel 5.5 is broken. See Bug #5982.

This process takes a while; when it is finished you can connect the clients to the switch and boot them using pxe (you might need to configure the BIOS to do so).

Some advice

  • Every user session is loaded on the server, so you will need a relatively powerful machine. A gigabit link is recommended between the server and the client switch. It is also a good idea to use fast disks in the server, or even RAID systems, and it is highly recommended to use multiprocessor servers.
  • The first user session to load will consume between 250 and 300MB of RAM, and every next session will use between 50 and 80MB. This can help to calculate the amount of RAM needed for the server, but take in count that it will vary depending of what programs the users will load.
  • The minimal requirements for the clients are 48MB of RAM, and a 200Mhz processor or the i386 (recommended) or amd64 architectures. The recommended values are a 400Mhz processor and 128MB of RAM. The client software has sound support and USB or CD disks will be automatically mounted.

Revisions

11, Dec 2009
Trisquel
20, Jan 2011
AndrewT
13, Apr 2011
Trisquel
10, Sep 2012
MagicFab
27, Jul 2013
Ark74
13, Aug 2013
lloydsmart