ThinClientHowto

Revision 12 as of 2005-09-21 04:03:57

Clear message

Thin Client How-To

NOTE: This software is currently in a pre-alpha state. This means that you probably won't be happy with it unless you enjoy helping to track down bugs. If you're looking for something production-ready, head over to the [http://www.ltsp.org/ LTSP] site. There is a manual on this wiki - see ["LTSPHowTo"].

Requirements

You will need:

  • An Ubuntu "breezy" system to be the server (the current development branch, to be released in October 2005)
  • At least one PXE-bootable system to be a client
  • A bunch of disk space
  • A fast network connection, or a local Breezy mirror, or some patience
  • A DHCP server which is capable of supporting PXE clients, or a separate network segment where you can run a dedicated DHCP server
  • Command-line familiarity
  • A sense of adventure
  • A burning desire to send feedback to [mailto:ubuntu-devel@lists.debian.org ubuntu-devel]

Getting Started

NOTE: If you plan to use the server as gateway/nat/firewall machine, it is strongly suggested to configure all the network interfaces before proceeding with the following steps.

  1. Set up the DHCP server
    • If you have an existing DHCP server which can support PXE clients:
      • Configure it to pass a boot filename of /ltsp/pxelinux.0 and a root path of /opt/ltsp/i386

      • For ISC DHCPD, use the following options:

        filename "/ltsp/pxelinux.0";
        option root-path "/opt/ltsp/i386";
      • Install ltsp-server on the server: {{{sudo apt-get install ltsp-server

}}}

  • If you want to run a dedicated DHCP server on the thin client server:
    1. Install ltsp-server-standalone on the server: {{{sudo apt-get install ltsp-server-standalone

}}}

  1. If necessary, customize /etc/ltsp/dhcpd.conf (by default it's configured for a server at 192.168.0.1 serving PXE clients)

  2. Edit `/etc/hosts.allow' and enable access for portmap, rpc.mountd, rpc.statd, and in.tftpd: {{{portmap: 192.168.0.0/24

rpc.mountd: 192.168.0.0/24 rpc.statd: 192.168.0.0/24 in.tftpd: 192.168.0.0/24}}}

  1. Restart the nfs subsystem: {{{sudo invoke-rc.d nfs-kernel-server restart

sudo invoke-rc.d nfs-common restart sudo invoke-rc.d portmap restart}}}

  1. Build the thin client runtime environment: {{{sudo ltsp-build-client

}}}

  • This script is hardcoded to use a particular Ubuntu mirror, so you may wish to edit it if you have a nearby mirror
  1. Check /opt/ltsp/i386/etc/ssh/ssh_known_hosts and ensure that your host key is associated with your host's IP address. Depending on your /etc/hosts configuration, this may not always be correct automatically (yet). If it looks like this:

    servername ssh-rsa AAAAB3NzaC1yc2EAAAABI...

    then add the IP address like this:

    servername,192.168.0.1 ssh-rsa AAAAB3NzaC1yc2EAAAABI...
  2. Optionally, create /opt/ltsp/i386/etc/lts.conf. If you don't create one, reasonable defaults and auto-detected values will be used.

  3. PXE boot the client and see what happens. If all goes well, you should see a graphical login dialog.
  4. Log in, with any user authorized to login remotely via ssh, and see what happens. If all goes well, you should get a working desktop session on the server.
  5. Send mail to [mailto:ubuntu-devel@lists.ubuntu.com ubuntu-devel] with your findings

Extras

  1. ThinClientHowtoNAT