Table of Contents

OpenThinClient

http://openthinclient.org

OpenThinClient is a GPL PXE-boot thin client and management tool.

Using OTC

http://otc:8080

Run with /usr/bin/javaws.

:!: On first use, connect to the realm openthinclient using password secret.

Supported Hardware

http://openthinclient.org/supported_hardware

Monitors/Displays

See also Monitors / Displays

Virtual Machine

Use the pre-configured VM if at all possible.

Install OTC Server

:?: Doesn't seem to work properly on Centos

Verify Open Ports

Protocol Ports
TCP 1098, 1099, 2069, 3873, 4444, 4445, 8009, 8080 (internal webserver), 8083, 10389 (LDAP server)
UDP 67 (DHCP proxy), 69 (TFTP server), 514 (SYSLOG server), 2069, 4011 (DHCP proxy)

Check for conflicts:

netstat -tapn|grep -E ":1098|:1099|:2069|:3873|:4444|:4445|:8009|:8080|:8083|:10389|:67|:69|:514|:2069|:4011" | grep LISTEN

If there are 'hits' with this command, investigate.

Install Java 6

http://www.java.com/getjava

wget java.sun.com/downloads/jre-latest.bin

sh ./jre<tab>

java -version

Install Java 6 (JRE)

yum localinstall jre-6u30-linux-i586.rpm

java -version

Install Server Component

mkdir /opt/openthinclient
cd /opt/openthinclient
wget http://downloads.openthinclient.org/openthinclient-1.0.0.jar

SME Server Only - X11 Forwarding

http://wiki.contribs.org/X11_Forwarding_on_SME

mkdir -p /etc/e-smith/templates-custom/etc/ssh/sshd_config/
cd /etc/e-smith/templates-custom/etc/ssh/sshd_config/
echo X11Forwarding yes > 50X11Forwarding
echo X11UseLocalhost yes > 50X11UseLocalhost
expand-template /etc/ssh/sshd_config

yum install xauth libXrender libXtst libXi

signal-event post-upgrade; signal-event reboot

Start the OpenThinClient Server

ssh -X -l root hostname

java -jar openthinclient-1.0.0.jar

OpenThinClient Manager

From a workstation with Java 6:

http://hostname:8080/ (Start Manager)

Connect to Existing Realm

LDAP password 0pen%TC was 'secret'

Select the openthinclient realm and click finish.

Install Packages

Open Package Management

Right-click “Installable packages” and choose “Edit”

Printer

Terminal-connected USB or Parallel printer:

Configure static IP address for thin client - DHCP reservation

Add Device “Printserver: USB” or “Printserver: Parallel” to the thin client and reboot it.

In Windows (rdesktop session), add local printer - Add a new port using the IP static address

Printer is effectively shared on the network

Flash 9

From an OTC client terminal:

wget http://download.macromedia.com/pub/flashplayer/installers/current/9/install_flash_player_9.tar.gz
tar xzvf install_flash_player_9.tar.gz
mkdir ~/.mozilla/plugins
mv libflashplayer.so ~/.mozilla/plugins

Restart Firefox and check with about:plugins

This is not system-wide. It is just for the logged-in user.

Backup and Restore

http://openthinclient.org/tiki-index.php?page_ref_id=84

All configuration information is located in the apacheds-store under server\default\data.

Linux

To save the configuration on the filesystem level create a backup of the following directory:

/opt/openthinclient/server/default/data/apacheds-store
Windows

To save the configuration on the filesystem level create a backup of the following directory:

C:\Programme(x86)\openthinclient\server\default\data\apacheds-store

High Availability

Warm Spare

Setup

  1. Install both servers
  2. During normal operation, activate the OTC service on the primary and deactivate on the secondary
  3. During normal operation, regularly sync 'apacheds-store' from primary to secondary

In Case of Disaster

  1. Activate OTC service on backup server
  2. Run OTC updates (if needed)
  3. Boot clients…

If the primary does come up again, either sync back (if config changes make that seem a good idea) or just let it run and shut down the backup service when the clients are down.

Troubleshooting

Java

Run “javaws -viewer” and activate the java console in the control panels rightmost tab. Restart the manager session to get the console window, too.

Logs to Check on the Server

In the Manager, right-click the thin client and choose 'log' openthinclient/server/default/data/nfs/root/var/log/*.log openthinclient/wrapper/logs/wrapper.log

Open a Command Prompt (Shell) on the Client

<CTRL><ALT><SHIFT><x>

Notes

http://www.nabble.com/Lame-Openchrome-driver-td18905980.html#a19357701

http://www.nabble.com/Series-of-Questions-td19357388.html#a19357388

according to the openchrome wiki:

http://wiki.openchrome.org/tikiwiki/tiki-index.php?page=HardwareCaveats

the hardware mpeg2 decoder is supported (up to 1024×1024 → hardware limitation?) for your CN700 chipset.

On a related topic, is there any way to disable the animations of the
thinclient desktops? you know the minimize, maximize,
show-contents-while-dragging disabling.

open a xterm (<CTRL><ALT><SHIFT><x>) and use gconf-editor to set /apps/metacity/general/reduced_resources.

I am using 1280×1024 on thinclients so I guess the built-in mpeg decoder
won't be a big help with VLC and Flash plug-ins (there is hardware
accelaration option under setting of flash player, which i assume relies on
that too?)…

the video player has to support XvMC acceleration (see http://en.wikipedia.org/wiki/X-Video_Motion_Compensation). as vlc player seems to support it i doubt the flash player does know anything about XvMc. anyhow new flash versions try to support hardware scaling via OpenGL facilities but SWF content has to be authored specifically to take advantage of this. the linux flash player is known to be quite slow in fullscreen even with decent hardware. maybe v10 (http://labs.adobe.com/downloads/flashplayer10.html) has some speed improvements.

On a related topic, is there any way to disable the animations of the
thinclient desktops? you know the minimize, maximize,
show-contents-while-dragging disabling.

open a xterm (<CTRL><ALT><SHIFT><x>) and use gconf-editor to set
/apps/metacity/general/reduced_resources.


That works, thank you. How can we achieve this as the “default” while
deploying mass thinclients, as logging on to each user and configuring
manually would not be practical?

I am looking for ways to gain more CPU and memory on the thinclient as I
can, and this seems to be first thing that comes to mind.

It would be great if this can be set to default for the thinclients without
configuring each and every one of them individually.

… [show rest of quote] from version 0.3.0 on there is a special home directory called “_USER_OVERWRITE_”. anything put in there will be copied over to any thin client home dir. so you just have to create this directory on server side:

<INSTALLPATH>\server\default\data\nfs\home\_USER_OVERWRITE_

and put any default settings files (like gconf created files or firefox settings files) into this directory.

On a separate note, how can we change the “Welcome to openthinclient”
message in the login screen as well as the logo next to the date/time at the
bottom-right corner?
I would like to be able to mimic our Intranet login screen that users
accustomed to.

have a look at the artwork package: http://archive.openthinclient.org/openthinclient/os/artwork-tcos_0.1-2.tar.gz

Is it also possible to change the splash-screen image upon logging-in (where
i can replace with an image that tells user Intranet is launching.. for
instance) ?

Being able change the splash will also be useful for kiosk applications; we
have few screens that are public-facing with firefox loading webpages, which
are rebooted daily.

this is possible but not trivial. you have to build a new initrd including your new usplash file. have a look at the usplash package: http://archive.openthinclient.org/openthinclient/os/usplash_0.2-5tcos3.tar.gz

Related on this note, i read on the package description of SSO that it keeps
the username:password pair in environment variable which can be passed to
launching applications.

that's right the SSO package holds an encrypted user password in the TCOS_TOKEN variable. have a look at the rdesktop package on how to work with it.

What are the chances of passing this username:password pair to a URL, say
https://intranet/login.aspx?uname=$USER&pass=$PASSWORD

that shouldn't be to hard to implement.

That would be great to auto-login users to the company Intranet within the
LAN. As dirty as it can be, it would be very practical to do so in closed
circuit LAN environment.

i would at least use some kind of hash in your intranet application to not have the password shown in plain text.

What username / password combination can be used to log in to the local console of the openthinclient OS (after switching via CTRL+F1)?

right now there are two hardcoded user/passwords:

- root/foobar - tcos/tcos

(the password for connecting to the thin client via VNC is foobar as well.)

furthermore you might find the hidden shortcut: <CTRL><SHIFT><ALT>x useful. it opens a xterm in a running gnome session.

but you ought to consider that the hardcoded user/passwords will vanish in future releases. in these releases you will be able to set them via the openthinclient manager.

Question; do you want your openthinclient computers to boot straight into your XP VM via rdesktop?

If so, I would modify the “Desktop” application to hide the taskbar and then modify the “rdesktop RDP client” application to autostart=on, fullscreen-yes That way when the client computer boots it will just jump straight into rdesktop and will be fullscreen without the linux desktop peeking out with the taskbar.

Is there a way to hide the taskbar during an rdp session?

yes you can configure the taskbar with the “Desktop” application:

right-click on “Applications” → “New” and select “Desktop” as type. configure it as desired and assign it to a thin client, user or a group.

you can even disable the windowmanager, taskbar, desktop manager, etc. and autostart your rdp session to have a so called kiosk mode (http://openthinclient.org/tiki-index.php?page_ref_id=82).