This page is specific to Ubuntu versions: 12.04, 14.04


Introduction

This page describes an alternative way to install and maintain LTSP that supports both thin and fat clients. No chroots are used and a single-NIC setup with an external DHCP server (e.g. a router) is recommended (but not required) as it uses dnsmasq in proxyDHCP mode.

Prerequisites

It's assumed that you've installed Ubuntu >= 12.04 without LTSP, e.g. using the desktop CD.

Your clients need to be the same architecture as your server, so if they're i386, you need to install the i386 Ubuntu variant in the server as well. If you have more than 4 Gb RAM don't worry, the default -pae kernel can access up to 64 Gb RAM.

It's recommended that you setup your network first. A static IP is suggested but not required for single NIC setups. If you're using a dual NIC setup, configure the internal NIC to 192.168.67.1.

Also, it's suggested that you install on your server any programs that you want to make available to fat clients.

Installation

A newer LTSP version than the one in 12.04 is required for this method to work. In the Greek schools PPA the Debian Wheezy LTSP version is available, which suits our purposes fine, even if it lacks the Ubuntu-specific ltsp-cluster bits. So, if you're running 12.04, execute this:

sudo add-apt-repository --yes ppa:ts.sch.gr

Then, whatever Ubuntu version you're running, execute the following commands:

sudo -i
apt-get update
apt-get --yes --install-recommends install dnsmasq ltsp-server-standalone ltsp-client ldm-ubuntu-theme
ltsp-config dnsmasq
echo 'IPAPPEND=3' >> /etc/ltsp/update-kernels.conf
/usr/share/ltsp/update-kernels

Generating the client image

After the initial installation, and also any time that you have server updates (new software etc) that you want to push to your clients, you need to run the following command:

ltsp-update-image --cleanup /

If you need to, you can exclude some of your server files or directories from the generated image from /etc/ltsp/ltsp-update-image.excludes.

Editing lts.conf

To create an initial lts.conf, run:

ltsp-config lts.conf
gedit /var/lib/tftpboot/ltsp/i386/lts.conf

Note that the generated lts.conf contains LDM_DIRECTX=True, that significantly increases thin client graphics performance at a security cost.

If you don't like the default Unity session, you can install the gnome-session-fallback package and uncomment LDM_SESSION in lts.conf to enable it.

It's recommended that you don't install too many services on your LTSP server (e.g. apache, clamav, ...), but if you do, you may prevent them from running on your clients with the RM_SYSTEM_SERVICES lts.conf directive.

DNS issues

Fat clients are supposed to get their DNS from DHCP, but with IPAPPEND=3 they don't. So, one easy way to point them to the correct DNS server is to put for example

DNS_SERVER="8.8.8.8 208.67.222.222"

in lts.conf.

An alternative way is to tell dnsmasq to function as a DNS server as well. This would be easy if not for Ubuntu bug #959037. In short, to work around the bug, you need to run the following commands:

sudo -i
sed 's/^dns=dnsmasq/# Commented by ltsp-pnp: dns=dnsmasq/' \
    -i /etc/NetworkManager/NetworkManager.conf
sed 's/^port=0/# Commented by ltsp-pnp: port=0/' -i /etc/dnsmasq.d/ltsp-server-dnsmasq.conf
service network-manager restart
service dnsmasq restart

After that, LTSP clients will automatically use the DNS server on the LTSP server, there's no need to add DNS_SERVER in lts.conf.

Comments

This page is maintained by https://launchpad.net/~alkisg, please don't edit it but send a mail with your suggested improvements to the author instead. I know this doesn't align with the usual wiki spirit, but in my experience when many people edit the same page it ends up being unmaintained. IMHO it's best if different people maintain different pages.

See also


CategoryLtsp

UbuntuLTSP/ltsp-pnp (last edited 2015-01-16 07:03:10 by alkisg)