How to configure, update and auto login Ubuntu 12.04 LTSP Fat Clients

This guide is based on the comprehensive LTSP documentation done by the Ubuntu Community - Ubuntu Community Documentation - UbuntuLTSP

This guide is intended as a relatively easy step by step guide to:

  • Configure Ubuntu 11.04, 11.10 and 12.04 fat clients.
  • Update and Upgrade fat clients
  • Install software on fat clients
  • Auto login fat client users.
  • Configure fat client user experience.
  • Last updated : 14-09-2012

Requirements:


1. Disable root login on fat clients.

  • To disable root login from thin clients edit the ssh_config file .
  • Open the Terminal Window and enter :
sudo gedit /opt/ltsp/i386/etc/ssh/ssh_config
  • Change the following if set or add to the bottom of the config file :
PermitRootLogin no

2. Copy DNS and Repository information from server to fat client to sync updates.

  • To update the DNS information on the fat client image simply copy your LTSP server DNS details to the client image.
  • Open the Terminal Window and enter :
sudo cp /etc/resolv.conf /opt/ltsp/i386/etc/resolv.conf
  • An easy way to install software sources for fat clients is to install the repositories on the LTSP server and then copy the software sources to the fat client image.
  • Open the Terminal Window and enter :
sudo cp /etc/apt/sources.list /opt/ltsp/i386/etc/apt/sources.list
sudo cp /etc/apt/sources.list.d/* /opt/ltsp/i386/etc/apt/sources.list.d/

3. Update & Upgrade fat client installation.

  • For normal updates open the Terminal Window and enter :
sudo chroot /opt/ltsp/i386 apt-get update 
sudo chroot /opt/ltsp/i386 apt-get upgrade 
  • When done, update the client image
sudo ltsp-update-image --arch i386
  • For Kernel updates do the following from the Terminal :
export LTSP_HANDLE_DAEMONS=false
sudo mount --bind /dev /opt/ltsp/i386/dev
sudo chroot /opt/ltsp/i386
mount -t proc proc /proc
apt-get update && apt-get dist-upgrade
exit
sudo ltsp-update-kernels
sudo umount /opt/ltsp/i386/proc
sudo umount /opt/ltsp/i386/dev
  • When done, update the client image
sudo ltsp-update-image --arch i386

4. Install additional fat client software.

  • If you have added the Google Chrome PPA's details to your software sources, and copied these sources in step 2. you will be able to install Google-Chrome, open the Terminal Window and enter :
sudo chroot /opt/ltsp/i386 apt-get install google-chrome-stable 
  • To install the Flash Plugin for your thin/fat clients, open the Terminal Window and enter :
sudo chroot /opt/ltsp/i386 apt-get install flashplugin-installer
  • To replace Gnome-Screensaver (Black screen only) with XScreensaver, open the Terminal Window and enter :
sudo chroot /opt/ltsp/i386 apt-get remove --purge gnome-screensaver 
sudo chroot /opt/ltsp/i386 apt-get install xscreensaver xscreensaver-gl
  • When done, update the client image
sudo ltsp-update-image --arch i386

5. Autostart software on all fat clients.

  • To autostart a program for all fat client users is fairly easy, simply copy the .desktop shortcut of the application to the /etc/xdg/autostart folder.
  • If you want to start google-chrome and xscreensaver for all fat client users open the Terminal Window and enter :
sudo cp /opt/ltsp/i386/usr/share/applications/google-chrome.desktop /opt/ltsp/i386/etc/xdg/autostart/
sudo cp /opt/ltsp/i386/usr/share/applications/xscreensaver-properties.desktop /opt/ltsp/i386/etc/xdg/autostart/xscreensaver.desktop
  • Tip: To autostart Google Chrome in full screen mode on a specific webpage, edit the new autostart google-chrome.desktop file and add --kiosk and you site URL as shown below :
[Desktop Entry]
X-AppInstall-Package=google chrome
X-AppInstall-Popcon=39584
X-AppInstall-Section=universe
Version=1.0
Name=Google Chrome
GenericName=Web Browser
Comment=Access the Internet
Exec=/opt/google/chrome/google-chrome --incognito --kiosk http://www.google.com
Terminal=false
X-MultipleArgs=false
Icon=google-chrome
Type=Application
Categories=Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml_xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;
X-Ayatana-Desktop-Shortcuts=NewWindow;NewIncognito

[NewWindow Shortcut Group]
Name=New Window
Exec=/opt/google/chrome/google-chrome
TargetEnvironment=Unity

[NewIncognito Shortcut Group]
Name=New Incognito Window
Exec=/opt/google/chrome/google-chrome --incognito
TargetEnvironment=Unity
  • Now edit the new autostart xscreensaver file and replace "-demo" with "-nosplash" :
sudo gedit /opt/ltsp/i386/etc/xdg/autostart/xscreensaver.desktop

6. Auto login fat clients based on IP address.

  • To auto login clients you need to supply the usernames and passwords for each user based on the IP address of the client machine.
  • For the Terminal Window and enter :
sudo gedit /var/lib/tftpboot/ltsp/i386/lts.conf 
  • Replace the usernameX and passwordX with the username and password for each user  :
[Default] 
# Local Apps 
LOCAL_APPS = True 
LOCAL_APPS_MENU = True 
LOCAL_APPS_MENU_ITEMS = firefox, google-chrome 

# Network settings 
DNS_SERVER = 192.168.1.1 
LDM_DIRECTX = True 

# Theme Settings 
LDM_THEME = ubuntu 

# Restrictions 
LOCALDEV_DENY_CD = True 
LOCALDEV_DENY_USB = True 
LOCALDEV_DENY_INTERNAL_DISKS = True 

# Auto Login 
LDM_AUTOLOGIN = True 

[192.168.1.21] 
LDM_USERNAME = username1 
LDM_PASSWORD = password1

[192.168.1.22] 
LDM_USERNAME = username2 
LDM_PASSWORD = password2 

[192.168.1.23] 
LDM_USERNAME = username3 
LDM_PASSWORD = password3
 
[192.168.1.24] 
LDM_USERNAME = username4 
LDM_PASSWORD = password4 

[192.168.1.25] 
LDM_USERNAME = username5 
LDM_PASSWORD = password5 

Tags: