Size: 519
Comment: basics of configuring ltsp
|
Size: 5679
Comment: explicitly install ltsp-server and note version
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
if you have a DHCP server already: | = On a Debian 4.0 (Etch) or newer system: = |
Line 3: | Line 3: |
apt-get install ltsp-server openssh-server | 1. If you have a DHCP server already up and running on your network: |
Line 5: | Line 5: |
if you want your LTSP server to function as an DHCP server: | |
Line 7: | Line 6: |
apt-get install ltsp-server-standalone openssh-server | {{{ apt-get install ltsp-server openssh-server }}} |
Line 9: | Line 10: |
build the LTSP client environment: | Otherwise, if you want your LTSP server to function as the DHCP server: |
Line 11: | Line 12: |
ltsp-build-client | {{{ apt-get install ltsp-server-standalone openssh-server }}} |
Line 13: | Line 16: |
configure dhcpd.conf: | 2. Build the LTSP client environment: |
Line 15: | Line 18: |
see example /usr/share/doc/ltsp-server/examples/dhcpd.conf or /etc/ltsp/dhcpd.conf and adapt to your network. | {{{ ltsp-build-client }}} |
Line 17: | Line 22: |
configure /etc/exports: | 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/. |
Line 19: | Line 24: |
/opt/ltsp *(ro,no_root_squash) | 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 21: | Line 26: |
boot a PXE or etherboot capable machine and enjoy. | 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). If you change the IP data after you have done the initial setup and run `ltsp-update-sshkeys` on the server. 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: deb http://pkg-ltsp.alioth.debian.org/debian etch-ltsp-backports main 3. Update: apt-get update 4. Install new packages: apt-get install ltsp-server-standalone ltsp-server make sure the version ltsp-server is 5.0.40~ or greater: {{{ dpkg -l ltsp-server | awk '/^ii/{print $2" "$3}' }}} 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 etch ltsp backports === 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}}} 4. ldm: support for mostly insecure logins (LDM_DIRECTX) requires getting /root to be writeable: {{{echo 'copy_dirs="$copy_dirs /root"' >>/opt/ltsp/i386/etc/default/ltsp-client-setup}}} 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 |
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).
If you change the IP data after you have done the initial setup and run ltsp-update-sshkeys on the server.
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):
wget http://pkg-ltsp.alioth.debian.org/debian/pkg-ltsp-keyring
- apt-key add pkg-ltsp-keyring
2. Add to /etc/apt/sources.list:
deb http://pkg-ltsp.alioth.debian.org/debian etch-ltsp-backports main
3. Update:
- apt-get update
4. Install new packages:
- apt-get install ltsp-server-standalone ltsp-server
make sure the version ltsp-server is 5.0.40~ or greater:
dpkg -l ltsp-server | awk '/^ii/{print $2" "$3}'
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 etch ltsp backports
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
4. ldm: support for mostly insecure logins (LDM_DIRECTX) requires getting /root to be writeable:
echo 'copy_dirs="$copy_dirs /root"' >>/opt/ltsp/i386/etc/default/ltsp-client-setup
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