LTSP How To
Upstream documentation with official, detailed information about installing LTSP is at http://sourceforge.net/apps/mediawiki/ltsp/index.php?title=Ltsp_LtspDocumentationUpstream.
Installing LTSP on Lenny
If you want a complete LTSP server with all the bells and whistles:
apt-get install ltsp-server-standalone
If you want more fine-grained control, splitting some services off to separate servers, you can install ltsp-server instead, and manually install each of the other services.
(you can also get backported packages for lenny: LTSP/Howto/Lenny-With-Backports)
Build the LTSP client environment:
ltsp-build-client uses the Internet to fetch packages. In case you have a slow Internet connection or want to use Local DVDs of Debian. please use the following command:
ltsp-build-client --mirror file://mnt/Debian_Lenny_Bluray_Image.img --security-mirror none --accept-unsigned-packages
Since the ltsp-build-client uses more than one Debian DVD you would need to build a ?BluRay Image using the jigdo template of ?BluRay Disc. This Image location can be passed as the argument. The security-mirror-none option prevents updates from being downloaded. The accept-unsigned-packages allows the building to go on even using unsigned packages.
If you're installing a different Debian distribution than what's on the server, you will need to specify the --dist xxx commandline option. where xxx is your Debian distribution (e.g. lenny, squeeze). See /usr/share/debootstrap/scripts/ and the Debootstrap page.
ltsp-build-client will download a complete Debian filesystem into /opt/ltsp/i386 (or specify an alternate location with --base) and install the ltsp-client and ldm packages (the LTSP Display Manager). Typically, you will need a desktop environment like Gnome or Xfce, or a window manager such as icewm installed on the server (NOT in the chroot).
If you change the IP data after you have done the initial setup, run ltsp-update-sshkeys on the server. The files the client will boot are installed on the server into /var/lib/tftpboot.
- Configure /etc/dhcp3/dhcpd.conf and /etc/ltsp/dhcpd.conf: Edit /etc/ltsp/dhcpd.conf to adapt to your network. See examples in /usr/share/doc/ltsp-server/examples/dhcpd.conf as a reference.
Include the LTSP dhcpd.conf at the bottom of /etc/dhcp3/dhcpd.conf:
invoke-rc.d dhcp3-server restartAlternately, configure /etc/dnsmasq.conf. See the example in /usr/share/doc/ltsp-server/examples/dhcpd-dnsmasq and adapt to your network.
invoke-rc.d dnsmasq restart
invoke-rc.d nfs-kernel-server restart
Now make sure that portmap is not started on the loopback interface only. Look into /etc/default/portmap and verify that there is no line saying
If there is such a line, comment it out by prepending a # character and restart portmap by:
invoke-rc.d portmap restart
Start tftpd. By default, tftpd-hpa is started from inetd. you may need to restart inetd after installing tftpd-hpa:
invoke-rc.d openbsd-inetd restart
Alternately, edit /etc/default/tftpd-hpa to have tftpd-hpa start on its own:
Then, comment the tftpd entry in /etc/inetd.conf:
#tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot
invoke-rc.d openbsd-inetd restart
and restart tftpd-hpa:
invoke-rc.d tftpd-hpa restart
- Boot a PXE or Etherboot capable machine and enjoy. Note that some older versions of etherboot do not support ELF images, and may not work without additional configuration.
Customizations in the chroot
Two important configuration files inside the client are /var/lib/tftpboot/ltsp/i386/lts.conf (or /opt/ltsp/i386/etc/lts.conf for NFS) and /opt/ltsp/i386/etc/default/ltsp-client-setup. See the examples in /opt/ltsp/i386/usr/share/doc/ltsp-client*.
See also see the Edubuntu wiki http://doc.ubuntu.com/edubuntu/edubuntu/handbook/C/customizing-thin-client.html (note: Debian LTSP still uses NFS by default).