How to configure LTSP (Linux Terminal Server Project) on Ubuntu Server
In the How to Install LTSP guide we covered how to install LTSP and build the basic client image. We’ll now cover how to configure it by firstly installing a full-blown Ubuntu Gnome desktop.
Configure the LTSP environment
The first thing we want to do is expand the list of available package sources from the default list since they are quite limited and secondly to bring our LTSP environment up to date. So issue the following command to copy the source list from the host machine (our server) to the LTSP environment:
sudo cp /etc/apt/sources.list /opt/ltsp/i386/etc/apt/sources.list
During this process it’s possible Ubuntu will try to stop and start services as it goes along so we’ll prevent this from happening by issuing the following command:
export LTSP_HANDLE_DAEMONS=false
The LTSP environment lives in a separate part of Ubuntu. This means we can add and remove packages in this environment independent of the host machine. So, let’s switch into this LTSP environment:
sudo chroot /opt/ltsp/i386
and mount the proc filesystem:
mount -t proc proc /proc
Now let’s bring the LTSP environment up to date. Note we are omitting the normal “sudo” prefix from these commands because we’re already running as root:
apt-get update
aptitude safe-upgrade
Lastly let’s install an Ubuntu Desktop GUI for our LTSP clients:
apt-get install ubuntu-desktop
You might also want to install openoffice and firefox
apt-get install openoffice.org firefox flashplugin-installer
Add an admin user account
Now we have installed the Ubuntu desktop we need to set up an admin user. This is because the existing admin user on our host machine does not get transferred across to this LTSP environment. I used the same credentials for this admin user as on the one on my main server but it’s not compulsory, just easier to remember!:
useradd -m adminusername -G sudo
replacing adminusername with the required name of your admin user
Now set the password for this account and type the password when prompted:
passwd adminusername
replacing adminusername with the required name of your admin user. Now add this new user to sudoers file:
visudo
Press the [Insert] key once and insert a blank line after the “%sudo ALL=(ALL) ALL” line and paste the following:
adminusername ALL=(ALL) ALL
replacing adminusername with the required name of your admin user.
When you’re done editing the file press the [Esc] key once and type the following:
:wq
This should save the changes and bring you back to the command line. If you make a mistake then issue :q! instead of :wq to abort your changes.
Now exit out of chroot:
exit
And unmount the proc filesystem
sudo umount /opt/ltsp/i386/proc
Whenever you make any changes to your LTSP environment it’s always a good idea to run the following commands:
sudo ltsp-update-sshkeys
sudo ltsp-update-kernels
sudo ltsp-update-image --arch i386
The first one MUST be run whenever you change any IP settings. The second one updates the kernel if required and the last one rebuilds the LTSP client image to take account of any packages you’ve updated.
You should now be able to launch a thin client and once logged on be presented with a full-blown Gnome desktop environment. Enjoy!