Creating an LXDE based Thin Client on very limited hardware

 

Summary

I needed to make some Dell FX160 thin clients work with Windows 2008 Terminal Server. Dell supply either Windows XP or SuSE SLED but neither are suitable; XP keeps expecting a US keyboard and SLED won't talk to Windows 2008 because the supplied rdesktop package is too old.

The hardware for installation is reasonable except for the (flash) hard disk being only 1GB. Trying to get a graphical os into 1GB is quite a challenge, this is the method I used.

 

Prepare the USB stick for installation

Download the following. You may find it easier to copy the second file to the stick from a Windows machine but you'll need to use Linux or Mac for the first one.

http://ftp.nl.debian.org/debian/dists/lenny/main/installer-i386/current/images/hd-media/boot.img.gz
http://cdimage.debian.org/debian-cd/5.0.4/i386/iso-cd/debian-504-i386-netinst.iso

Put the blank USB stick into a Linux computer (I actually used a Mac but the principle is the same) and make sure it isn't mounted - you'll probably need to use mount and umount to get this sorted.

Use dmesg to see what disk was just inserted - a line near the end will mention something like /dev/sdX. You're writing to the device (sdX) not a partition on the device (for example sdX1) and this operation will destroy all of the data on the stick.

$ zcat boot.img.gz > /dev/sdX

You have now created a FAT partition on the stick so unplug the drive and re-insert so that the os can see the drive properly. Then copy debian-504-i386-netinst.iso to it.

Plug into the thin client and boot. On Dell F12 selects boot device

When you create the user Use full name = "RDC User" and username = "rdcuser"

On a Dell FX160 the disk is only 1GB so we can't afford to include a swap space. In any case the machine will not be running anything except for the RDC client so we should be able to manage without swap.

Select expert install and mostly just accept the default by pressing enter.

Except:

  • Suitable country
  • Suitable keyboard
  • Don't start PC card services
  • Use guided partitioning and let it choose two partitions then before committing to disk delete both partitions and create one primary partition of 1GB - no swap is needed
  • Select default kernel (i686)
  • Select targeted initrd
  • Deselect all software tasks (Standard system is the only one selected by default)

You will end up with a bootable Debian in 371MB.

 

Add the RDC client and a graphical desktop

After the reboot login as root and do the following (during the lxde install just accept the warnings about swap space - you won't be suspending to disk anyway):

# apt-get clean
# apt-get update
# apt-get install lxde
# apt-get clean
# apt-get install tsclient rdesktop
# apt-get clean
# reboot

 

Create the client settings

After the reboot login as rdcuser

Open a terminal using the icon in the lower left of the screen
$ xdg-desktop-icon install --novendor \ /usr/share/applications/tsclient.desktop

Double-click the icon that appears at the top right of the desktop.

Do the settings and save as tserver - Don't forget to set full-screen on the display tab
The TSClient window will go away.
(I had to reboot after this. Alt-F1 to get to command window followed by ctrl-alt-del should do it)
You can check the connection using the quick connect button.

 

Configure autostart of RDC client (optional)

$ cd .config
$ mkdir autostart
$ nano -w autostart/tsclient.desktop


[Desktop Entry]
Type=Application
Exec=tsclient -x /home/peers/.tsclient/tserver.rdp

 

Configure auto login (optional)

Autologin and autorun didn't work in combination for me. I'd suggest not using autologin

but if you want to try it do this:

  • LOGOUT
  • On the login screen choose Actions (bottom of screen)
  • Configure the login manager
  • Authenticate with root password
  • Click OK a few times
  • On security tab enable automatic login and set the user
  • Close and reboot (from the Actions button)

Have fun. You'll probably need to have several cups of tea during install. Installing lxde takes about
20 minutes on the FX160, for example.

contact us
  • Name
  • Email
  • Message

Note: This information will only be used to reply to your feedback. We respect your privacy and will never abuse your email address or other personal information.

bottom corner