Revision of Configure an LTSP Server from Sun, 01/16/2011 - 21:36
The revisions let you track differences between multiple versions of a post.
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
Having Trisquel Edu installed and running in our server computer (you can use any Trisquel LTS edition), we open a terminal and install the trisquel-ltsp-server package:
sudo apt-get install trisquel-ltsp-serverThis will install the necessary dependencies, including the dhcp server, which we will need to configure with the following command:
sudo gedit /etc/default/dhcp3-serverWe 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.confThe 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"; } }Make sure the file /var/lib/tftpboot/ltsp/i386|amd64/pxelinux.cfg/default looks like this:
DEFAULT vmlinuz ro initrd=initrd.img quiet splashWe need to restart the servers to apply the changes:
sudo /etc/init.d/dhcp3-server restart sudo /etc/init.d/openbsd-inetd restartNote that there is not needed for the thin clients to have route to internet.
The next step is creating the image the clientes 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 i386This 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.