This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
wiki:components:tce [2011/10/17 19:05] h1 Page moved from installing_x2go_thin_client_environment_debian to wiki:installing_x2go_thin_client_environment_debian |
— (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Installation of the X2go TCE based on Debian ====== | ||
- | |||
- | In the following article we will explain how to set up an X2go Thin Client environment. In the following we will use three technical terms that we want to define/ | ||
- | |||
- | * X2go Server: a GNU/Linux application server that users can connect to with the '' | ||
- | * X2go Thin Client: a user workstation in your office that boots from the network with minimal software. Only purpose is to start the '' | ||
- | * X2go PXE Server: the server that serves chroot images to X2go Thin Clients via PXE, TFTP and NFS to thin client boxes. The X2go PXE Server has to be situated in your LAN. X2go PXE Server and X2go Server can be one machine, in production setups we recommend to separate these two functionalities onto two separate (virtual) servers. | ||
- | |||
- | < | ||
- | |||
- | ===== Network setup ===== | ||
- | |||
- | X2go TCE requires a local area network (LAN) that is at least switched at 100MB/s. The X2go Thin Client chroot distribution is not designed to work over the internet or on low bandwidth connections, | ||
- | |||
- | You can combine X2go Server and X2go PXE Server functionality on one system. However, for production setups we highly recommend that you dedicate a separate server as the PXE boot server for the X2go TCE. If you have the chance of splitting these two functionalities up into two, this is a recommended way of setting up your X2go Thin Client Environment. | ||
- | |||
- | <note important> | ||
- | </ | ||
- | |||
- | A normal/ | ||
- | |||
- | * X2go server (Debian, Ubuntu, etc.) | ||
- | * optional: a separate X2go PXE server (Debian or Ubuntu) | ||
- | * X2go Thin Client hardware (can be everything from e.g. Pentium III, AMD Athlon upwards), main requirement is that the thin client hardware box contains a network card that is PXE/ | ||
- | |||
- | ===== X2go TCE / Debian squeeze ===== | ||
- | |||
- | < | ||
- | |||
- | In the following description we will describe a simple X2go TCE installation, | ||
- | |||
- | The resulting X2go Thin Client chroot will be a Debian GNU/Linux (squeeze) system by default. | ||
- | |||
- | :!: **Before you continue!** | ||
- | > Please make sure that you have added the X2go repository to your package management system (on X2go server and on X2go PXE server). The required steps are described here: [[adding the X2go repository (Debian)]] | ||
- | |||
- | ==== Installing X2go server ==== | ||
- | |||
- | The X2go Server installation is described in detail on [[installing_x2goserver_debian_ubuntu|this wiki page]]. Please follow instructions there first, then proceed below. | ||
- | |||
- | |||
- | ==== Installing X2go PXE server ==== | ||
- | |||
- | === Summary === | ||
- | |||
- | In a nutshell, you have to run the following commands from a terminal on the X2go PXE Server (or X2go Server if combining both systems in one): | ||
- | |||
- | < | ||
- | $ sudo aptitude install x2gothinclientmanagement | ||
- | # take a look at the X2go TCE config and modify to your needs | ||
- | $ sudo editor / | ||
- | $ sudo x2gothinclient_create | ||
- | # now you have to wait for some time, a lot of text will pass through your terminal window | ||
- | $ sudo x2gothinclient_preptftpboot | ||
- | # follow the instructions being shown at the end of the x2gothinclient_preptftpboot script run... | ||
- | </ | ||
- | |||
- | === Basic installation of the X2go PXE server === | ||
- | |||
- | Now a bit more in detail... | ||
- | |||
- | - Install a minimal Debian GNU/Linux (squeeze) or Ubuntu GNU/Linux Server (lucid, maverick) system from CD/DVD. | ||
- | - Then add the X2go repository to your freshly installed X2go PXE server: [[adding the X2go repository (Debian)]], [[adding the X2go repository (Ubuntu)]]. On Debian GNU/Linux make sure that you install the '' | ||
- | - The only X2go related package needed on the X2go PXE server is the '' | ||
- | $ sudo aptitude install x2gothinclientmanagement | ||
- | </ | ||
- | |||
- | === Building the X2go Thin Client system (the so-called chroot environment) === | ||
- | |||
- | - After installation of the '' | ||
- | $ sudo editor / | ||
- | </ | ||
- | - When done, start the creation of a fresh X2go Thin Client chroot environment:< | ||
- | $ sudo x2gothinclient_create | ||
- | </ | ||
- | - Now you will be able to observe a medium long installation process on your system. This installation process takes place in a chroot jail environment, | ||
- | - During installation you will be asked to configure your thin client' | ||
- | - After the X2go TCE installation of your X2go Thin Client (default location: ''/ | ||
- | - Next, you may take a look at the config files in the folder ''/ | ||
- | - '' | ||
- | - '' | ||
- | - '' | ||
- | $ scp ~/ | ||
- | </ | ||
- | - When done with all your customizations execute the '' | ||
- | $ sudo x2gothinclient_update | ||
- | </ | ||
- | |||
- | With this last step your X2go Thin Client' | ||
- | |||
- | === Boot environment for your X2go Thin Client system (PXE, TFTP) === | ||
- | |||
- | With the '' | ||
- | |||
- | < | ||
- | $ x2gothinclient_preptftpboot | ||
- | </ | ||
- | |||
- | If there already is a PXE boot environment installed at the configured location, the script will abort with a warning. If you want to combine X2go PXE with other boot environments (e.g. LTSP), please customize your system manually. Templates for X2go PXE can be found at ''/ | ||
- | |||
- | Note: At the end of the '' | ||
- | |||
- | === Testing X2go TCE === | ||
- | |||
- | You should now be able to start your office PCs as X2go Thin Clients. To do this, configure the computer' | ||
- | |||
- | === Purging X2go TCE === | ||
- | |||
- | To get rid of all files related to X2go TCE, please run this script: | ||
- | |||
- | < | ||
- | $ x2gothinclient_cleanup | ||
- | </ | ||
- | |||
- | ===== Tweaking your X2go TCE ===== | ||
- | |||
- | ==== Configuration of DHCPD ==== | ||
- | |||
- | If you already have an DHCP server in your network, please make sure that you are able to setup an own range of IP addresses for the boot environment. Because of the conflict between devices that should access the boot environment and normal network nodes (MAC address binding), it is much easier to setup a separate network sub-LAN (in the example below: 192.168.0.0/ | ||
- | |||
- | < | ||
- | $ sudo editor / | ||
- | </ | ||
- | |||
- | < | ||
- | option domain-name "< | ||
- | option domain-name-servers < | ||
- | |||
- | # x2go thin client range/group | ||
- | subnet 192.168.0.0 netmask 255.255.255.0 { | ||
- | range 192.168.0.100 192.168.0.199; | ||
- | filename "/ | ||
- | next-server 192.168.0.250; | ||
- | } | ||
- | </ | ||
- | |||
- | Restart the DHCPD server to apply the new configuration: | ||
- | |||
- | < | ||
- | # / | ||
- | </ | ||
- | |||
- | ==== Configuration of the NFS share ==== | ||
- | |||
- | The root file system of the boot environment is mounted using NFSv3 (so it can be accessed over the network). You'll need to export the needed directory by editing the NFS configuration file: | ||
- | |||
- | < | ||
- | $ sudo editor / | ||
- | </ | ||
- | |||
- | < | ||
- | / | ||
- | </ | ||
- | |||
- | Finally restart the NFS daemon: | ||
- | |||
- | < | ||
- | $ sudo / | ||
- | </ | ||
- | |||
- | |||
- | ==== Configuration of x2goclient (display manager mode) ==== | ||
- | |||
- | === x2goclient in LDAP-mode === | ||
- | |||
- | Please feel free to customize the command line options used by the '' | ||
- | |||
- | < | ||
- | $ editor / | ||
- | </ | ||
- | |||
- | The below example uses LDAP-mode for '' | ||
- | |||
- | < | ||
- | x2goclient --pgp-card \ | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | </ | ||
- | |||
- | After modifying the '' | ||
- | |||
- | < | ||
- | $ x2gothinclient_update | ||
- | </ | ||
- | |||
- | === x2goclient in non-LDAP mode === | ||
- | |||
- | The Debian GNU/Linux (squeeze) X2go TCE uses non-LDAP mode as default. Edit the default sessions file in ''/ | ||
- | |||
- | There are two extra commandline arguments that you should be aware in the below configuration. | ||
- | |||
- | * '' | ||
- | * '' | ||
- | |||
- | < | ||
- | x2goclient --no-session-edit \ | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | </ | ||
- | |||
- | After modifying the '' | ||
- | |||
- | < | ||
- | $ x2gothinclient_update | ||
- | </ | ||
- | |||
- | |||