Differences between revisions 31 and 33 (spanning 2 versions)
Revision 31 as of 2008-02-24 19:25:34
Size: 4971
Comment:
Revision 33 as of 2008-02-26 00:32:49
Size: 5566
Comment:
Deletions are marked like this. Additions are marked like this.
Line 24: Line 24:
Build client will download a complete Debian filesystem into /opt/ltsp/i386 or specify a location with '--base'.
Chroot into the client tree and perform setup tasks such as adding users and installing a graphical environment. Build-client installed into the the client tree the ltsp-client package which provides the ldm display manager, so for your graphical environment you'll also need to install a desktop environment like xfce and a window manager like metacity.
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).
Line 27: Line 26:
The 2 ltsp configuration files inside the client are /etc/lts.conf and /etc/default//ltsp-client-setup. See the examples in /usr/share/doc/ltsp-client-core. Also see the Edubuntu wiki http://doc.ubuntu.com/edubuntu/edubuntu/handbook/C/customizing-thin-client.html The 2 ltsp configuration files inside the client are /etc/lts.conf and /etc/default/ltsp-client-setup. See the examples in /usr/share/doc/ltsp-client*. 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).

Configure ldm by copying ldm-init from /usr/share/doc/ldm/examples/ to to /etc/ and update it according to the comments in the file.

If you change the IP data after you have done the initial setup, update the LDM_SERVER variable in ldm-init and run the command sudo ltsp-update-sshkeys to make the ssh server aware of the change.
Line 33: Line 36:
See examples in /usr/share/doc/ltsp-server/examples/dhcpd.conf and /etc/ltsp/dhcpd.conf and adapt to your network. See examples in /usr/share/doc/ltsp-server/examples/dhcpd.conf or /etc/ltsp/dhcpd.conf and adapt to your network.
Line 35: Line 38:
etch and lenny (as of Feb. 08) are still affected by: http://bugs.debian.org/416868 so you need to add this line if the dhcp server and tftp server are the same: etch is still affected by: http://bugs.debian.org/416868 so you need to add this line if the dhcp server and tftp server are the same:
Line 41: Line 44:
lenny also requires the next-server option, but is included in the example dhcpd.conf file.

Restart dhcp3-server:

{{{
invoke-rc.d dhcp3-server restart
}}}
Line 43: Line 54:
See examples in /usr/share/doc/ltsp-server/examples/dhcpd-dnsmasq and /etc/ltsp/dhcpd-dnsmasq and adapt to your network. See example in /usr/share/doc/ltsp-server/examples/dhcpd-dnsmasq and adapt to your network.
Line 45: Line 56:
Restart dnsmasq:

{{{
invoke-rc.d dnsmasq restart
}}}
Line 51: Line 68:
5. Edit /etc/default/default/tftpd-hpa to allow the Daemon to start 5. 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 it's own.
Line 57: Line 80:
6. Restart dhcp3-server and tftpd-hpa from the scripts in /etc/init.d and restart tftpd-hpa
Line 59: Line 82:
{{{
invoke-rc.d tftpd-hpa restart
}}}
Line 60: Line 86:
7. 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. 6. 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.

On a Debian 4.0 (Etch) or newer system:

1. If you have a DHCP server already up and running on your network:

apt-get install ltsp-server openssh-server  

Otherwise, if you want your LTSP server to function as the DHCP server:

apt-get install ltsp-server-standalone openssh-server 

2. Build the LTSP client environment:

ltsp-build-client

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, etch). See /usr/share/debootstrap/scripts/.

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).

The 2 ltsp configuration files inside the client are /etc/lts.conf and /etc/default/ltsp-client-setup. See the examples in /usr/share/doc/ltsp-client*. 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).

Configure ldm by copying ldm-init from /usr/share/doc/ldm/examples/ to to /etc/ and update it according to the comments in the file.

If you change the IP data after you have done the initial setup, update the LDM_SERVER variable in ldm-init and run the command sudo ltsp-update-sshkeys to make the ssh server aware of the change.

The files the client will boot are installed on the server into/var/lib/tftpboot.

3. Configure /etc/dhcp3/dhcpd.conf:

See examples in /usr/share/doc/ltsp-server/examples/dhcpd.conf or /etc/ltsp/dhcpd.conf and adapt to your network.

etch is still affected by: http://bugs.debian.org/416868 so you need to add this line if the dhcp server and tftp server are the same:

next-server ip.address.of.server;

lenny also requires the next-server option, but is included in the example dhcpd.conf file.

Restart dhcp3-server:

invoke-rc.d dhcp3-server restart

Alternately, configure /etc/dnsmasq.conf:

See example in /usr/share/doc/ltsp-server/examples/dhcpd-dnsmasq and adapt to your network.

Restart dnsmasq:

invoke-rc.d dnsmasq restart

4. Configure /etc/exports:

/opt/ltsp *(ro,no_root_squash,no_subtree_check)

5. 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 it's own.

RUN_DAEMON="yes"

and restart tftpd-hpa

invoke-rc.d tftpd-hpa restart

6. 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.

Backported packages for etch

If you want to use newer LTSP related packages (with ltspfs and pulseaudio sound):

1. Add the key(s) for the repository to your keyring(after verifying that you trust them):

  1. wget http://pkg-ltsp.alioth.debian.org/debian/pkg-ltsp-keyring

  2. apt-key add pkg-ltsp-keyring

2. Add to /etc/apt/sources.list:

3. Update:

  • apt-get update

4. Install new packages:

  • apt-get install ltsp-server-standalone

5. When building a chroot, you'll need to tell it to use the backport sources:

 ltsp-build-client \   --extra-mirror "http://pkg-ltsp.alioth.debian.org/debian etch-ltsp-backports main" \   --apt-key /etc/apt/trusted.gpg

to get sound working with pulseaudio+alsa:

  • /usr/share/doc/ltsp-server/README.Debian.sound

to get local devices working with ltspfs (usb sticks, cdrom, floppy):

1. echo fuse >> /etc/modules

2. modprobe fuse (or reboot your server)

3. adduser fuse USER

for some additional troubleshooting, try: http://wiki.ubuntu.com/DebugLocalDev

Known issues with backports(that do not appear in sid):

1. ldm: login screen shows white background (background image is hidden). no known workaround at this time.

2. ltspfs: mounts appear strange when running df. util-linux 2.13 fixed this bug, however it is still present in etch. workaround is to make /etc/mtab a symlink to /proc/mounts: mv /etc/mtab /etc/mtab.old ; ln -s /proc/mounts /etc/mtab

3. ltsp-client: hostname displays as (none). workaround set up dns on the thin-client network, or: echo ltsp > /opt/ltsp/i386/etc/hostname

if X doesn't automatically configure properly (it uses X.org's built-in configuration, which doesn't work as well on the version on X.org in etch), you may want to switch back to the slower but more reliable X configuration using xdebconfigurator:

1. chroot /opt/ltsp/i386 apt-get install xdebconfigurator

2. cp /opt/ltsp/i386/usr/share/doc/ltsp-client-core/examples/configure-x-xdebconfigurator.gz /opt/ltsp/i386/etc/

3. gunzip /opt/ltsp/i386/etc/configure-x-xdebconfigurator.gz

4. chmod +x /opt/ltsp/i386/etc/configure-x-xdebconfigurator

5. echo CONFIGURE_X_COMMAND=/etc/configure-x-xdebconfigurator >> /opt/ltsp/i386/etc/lts.conf

6. echo 'copy_dirs="$copy_dirs /var/cache/debconf"' >> /opt/ltsp/i386/etc/default/ltsp-client-setup

7. echo 'temp_copy_dirs=" "' >> /opt/ltsp/i386/etc/default/ltsp-client-setup