How to install PNP LTSP on Ubuntu Mate 14.04 and all subsequent versions

Update:

Good news, I have updated tutorial and pnp ltsp also now works on 15.04 and 15.10

Great tutorial! Got it working straight away!

One problem though. When my thin/fat client locks its screen, I am unable to unlock it! I have tried the password for my thin/fat client user (which I would expect it to be) and also the password for my root user on the LTSP server. Neither of them work. Do any of you have any idea what I am doing wrong?

Thanks.

/Nicolai

You are doing nothing wrong. It is a bug in the way this LTSP is setup. To kill the ltsp client imageā€™s screen saver without having to fiddle around with difficult settings/configs. I installed Caffeine screen saver inhibitor. However, it is important to install the version that works best with Ubuntu Mate. I have found it to be:

caffeine_2.5.1+546~behda~ubuntu13.10.1_all.deb

You can find it here:

https://launchpad.net/~behda/+archive/ubuntu/ppa/+sourcepub/3850149/+listing-archive-extra2

Youā€™ll find it at the bottom of the page linked above.

You need to install the above on your host server and then run:

ltsp-update-image --cleanup /

from a terminal to update the client image with caffeine

Then fire up your ltsp client. You should find that Caffeine automatically loads and is in the system tray. Open Caffeine preferences. You can either have it inhibit the screen saver when only certain applications are running. Or, if you just want it to completely disable the screen saver/screen lock, then include an application that runs all of the time as one of the trigger applications. Marco, for instance.

Whatever changes you make to caffeine preference in your LTSP session will be retained and will automatically apply then next time you fire up your client. So, you only need to set the preferences once.

The tutorial has been updated and now works on all Ubuntu Mate versions from 14.04 through to 15.10

Hello Steve,
IĀ“ve tried to follow your tutorial, but havenĀ“t been able to make it work. I get stuck right at the beginning!
When I execute the first command, the network manager stops, but the internet also stops, and obviously, am not able to continue. If I follow the steps, without turning off the network manager, clients wonĀ“t boot.
Any ideas?

Hi Nestor.

I am so very sorry to relate this to you. but it has stopped working for me aswell!

Frankly, I am sick to the back teeth with, presumably Canonical, changing the software goalposts such that every time a new Ubuntu version comes out LTSP breaks down again and, frankly, I have had enough of it.

All I can suggest (though I have even packed in with this as well. Though it does work) is to install Edubuntu 14.04 (Edubuntu 16.04 does not exist because Edubuntu has been discontinued at 14.04) and then install, if you so desire (and I certainly would), the Ubuntu Mate desktop over the top.

Other than that, I am out of ideas.

Steve,
Thanks for replying so quick. IĀ“m out of ideas too. IĀ“ve been using LTSP for about 5 or 6 years. I started with Ubuntu 10.04. I remember it was a pain to configure it because of NetworkManager issues, but I found workarounds and was able to set it up, and it worked perfectly for a couple of years. Then, I installed edubuntu 14.04 and it worked out of the box. However, when I found out that Edubuntu was discontinued, I figured I better try to install LTSP from scratch (like I had done it before). IĀ“ve been trying for about a week and a half without success. IĀ“m about to go crazy after trying everything.
I better try to go back to edubuntu!

Thanks again!

I suppose one thing you could try, off the top of my head, might be the following:

Install Edubuntu 14.04, minus any/all of the educational packages, depending on what you want, but including the LTSP element.

Once installation is complete, open up a terminal and type the following commands:

sudo apt-get update

sudo apt-get upgrade

sudo apt-get dist-upgrade

do-release-upgrade

If all of that goes without a hitch, you will have ended up with Ubuntu 16.04 with LTSP

At which point you could install the Ubuntu Mate desktop over the top if you so wished. Or, if you wanted a pure Ubuntu Mate experience, purge Unity and then install Ubuntu Mate desktop.

Iā€™ll bet a pound to a penny, however, that the distribution upgrade will break LTSP!

If you decide to have a go, let me know if it works!

Hello Steve,
I installed Edubuntu 14.04, and it all worked perfectly. Then, I upgraded to Ubuntu 16.04 as you suggested, but LTSP stopped working.
After that failed to work, I decided I would try (for the tenth time) to install LTSP from scratch on a clean installation of Ubuntu Mate 14.04. Guess what? It worked!
I had tried it before so many times, and it would never work, but I found out why (at least in my case).
I found out that when you install LTSP, the system assigns the following IP to the dhcpd.conf file: 192.168.0.1.
It turned out that my router has that same IP!
So, before I installed LTSP, I set up my second Ethernet card to have a static IP: 192.168.2.1
Then I installed LTSP with the following two commands:
sudo apt-get install ltsp-server-standalone
sudo ltsp-build-client
After that, I opened the dhcpd.conf file and changed the IP 192.168.0.1 to the static IP I had setup: 192.168.2.1
I then created a couple users and rebooted the system, then I booted the first client and It worked!!
I then proceeded to install epoptes, and itā€™s been working perfectly since yesterday.
At the moment, IĀ“m trying to do the same thing on a clean installation of Ubuntu Mate 16.04.
IĀ“ll let you know how it goesā€¦

1 Like

Rightā€¦If you manage to get a working instillation in 16.04. please, please, please post a detailed, step-by step set of instructions here for how you did it. Miss absolutely nothing out, though.

You will have my eternal gratitude if you do.

1 Like

Steve,
I was able to install LTSP on Ubuntu Mate 16.04.
Clients are booting up almost perfectly. The only problem I havenĀ“t been able to fix, is the resolution on the clients. I had the same problem on Ubuntu 10.04, but I was able to fix it tweaking the lts.conf file. IĀ“ve been trying to find a way to fix that for a couple of hours, but IĀ“m ready to give up. IĀ“ll just go back to Ubuntu Mate 14.04, since that worked perfectly.

IĀ“ll try to explain how I installed it, in case you want to try it. Perhaps your clients will show the correct resolution.

  1. Do a clean install of Ubuntu Mate 16.04.

  2. Set up your static IP. I suggest you use this: 192.168.67.1, since the dhcpd.conf file in Ubuntu Mate 16.04 already has that ip in it. Also, when setting up your static address, find out first how Ubuntu calls your secondary Ethernet card. In my case, it had always been eth0, but I found out that in Ubuntu 16.04, it was called enp8s0. ItĀ“s weird, but once I made that change, the Ethernet card went from ā€œmanagedā€ in Network Manager, to ā€œnot managedā€, which is how it should be. Read this: https://michael.mckinnon.id.au/2016/05/05/configuring-ubuntu-16-04-static-ip-address/

  3. Install ltsp:
    sudo apt-get install ltsp-server-standalone

  4. Build client:
    sudo ltsp-build-client

  5. Create the lts.conf file:
    sudo gedit /var/lib/tftpboot/ltsp/i386/lts.conf

Copy and paste the following to your lts.conf file:
[default]
LDM_DIRECTX=True
LOCAL_APPS=True
XRANDR_DISABLE = true

  1. Create a user.

  2. Reboot server.

  3. Boot client.

ThatĀ“s all I did, and it works, with the exception that clients donĀ“t seem to recognize the video card.

As for me, after seeing that Ubuntu Mate 14.04 works perfectly, IĀ“m going to install it again and work with that instead of Edubuntu 14.04. Until I see updated documentation for 16.04.

I wrote the above instructions with the assumption that you can do those things. You seem much more knowledgeable than me on the subject.

I hope it helps you.

Thanks very much for that. Iā€™ll let you know how it goes. Youā€™d be surprised about how much I donā€™t know. I am a blunderer who works on the principle that if I blunder around for long enough, eventually I will accidentally land on a solution. This approach ā€œworksā€, but is horribly inefficient.

1 Like

Last week, I found this tutorial: http://blog.bobbyallen.me/tag/ltsp/

ItĀ“s supposed to work like LTSP-PNP. I actually got it to work last week on Ubuntu Mate 16.04, but when I rebooted the server, clients no longer were able to boot. They gave me some TFTP open timeout error. I think it was caused by Network Manager, because I had not figured out how set up the static ip.

Before I reinstall 14.04, IĀ“m going to give it one last try, now that I seem to have the static ip set up correctly. IĀ“ll let you know what I find.

Iā€™ve tried that tutorial before and, though I could usually get it to work on early 14.04, on later ā€œupdatedā€ 14.04 and, subsequently, 16.04 it has never worked for me

I guess we better stick to old fashion LTSP!

Dear all!
I got working LTSP-dnsmasq (NBD, dnsmasq as DHCP, DNS and TFTP server) setup on Ubuntu 16.04 LTS after these four steps:

sudo sed -i 's/#net.ipv4.ip_forward/net.ipv4.ip_forward/g' /etc/sysctl.conf
sudo sed -i 's/bind-interfaces/bind-dynamic/g' /etc/dnsmasq.d/network-manager
sudo sed -i 's/dns=dnsmasq/#dns=dnsmasq/g' /etc/NetworkManager/NetworkManager.conf
sudo sed -i 's/port=0/#port=0/g' /etc/dnsmasq.d/ltsp.conf

My dnsmasq config is below (based on Ubuntu 12.04 tutorial):

cat <<EOF | sudo tee /etc/dnsmasq.d/ltsp.conf
#
# Dnsmasq running as a proxy DHCP and TFTP server
#
# See: http://www.thekelleys.org.uk/dnsmasq/docs/dnsmasq-man.html
#

# Don't function as a DNS server:
#port=0

#
# TFTP
#

enable-tftp
tftp-root=/var/lib/tftpboot

#
# DHCP
#

# DHCP proxy on this network
#dhcp-range=192.168.3.1,proxy # non-stable
dhcp-range=192.168.3.1,192.168.3.150,12h

# rootpath option, for NFS
dhcp-option=17,/opt/ltsp/i386

# Tell PXE clients not to use multicast discovery
# See section 3.2.3.1 in http://tools.ietf.org/html/draft-henry-remote-boot-protocol-00
dhcp-option=vendor:PXEClient,6,2b

# Better support for old or broken DHCP clients
dhcp-no-override

# Enable this for better debugging
#log-dhcp

#
# PXE
#

# Note the file paths are relative to our "tftp-root" and that ".0" will be appended

pxe-prompt="Press F8 for boot menu", 3
pxe-service=x86PC, "Boot from network", /ltsp/i386/pxelinux
pxe-service=x86PC, "Boot from local hard disk"

EOF