Thin Client Case Study

Adams State College Nielsen Library October 2005
By Cameron Miller. Edited by Mike Eriksen.

Background

The Adams State College Nielsen Library has provided public access computer technology for decades. In the past text mode vt220 terminals were used to access local and remote networked library catalogs. Recently Microsoft Windows workstations with web browsers were used to access local catalogs and Internet resources. In Summer of 2005 ASC's computer lab administrator was looking for alternatives to the current Microsoft Windows based public access stations.

A view into the Adams State College
Nielsen Library

Why move from the Microsoft Windows status quo?

Our campus lab manager stated it was becoming too much work to constantly re-image and lock down the public access computers using Windows 2000 and XP.

Why thin clients?

When I agreed to take on the project and supply a tested and live system by the Fall semester I had a preconceived notion to use thin clients. Past experience taught me a thin client approach can minimize life cycle costs for many computing environments. This was an opportunity to evaluate the state of linux thin client technology, and showcase linux desktop capabilities.

Requirements

The library staff supplied a list of features based on experience with public access kiosks. Library staff are the front line for customer support, and wanted limited functionality and easy maintenance. They needed two configurations, one with a browser restricted to viewing only specific websites, the other with full Internet access, removable media, and network printing. They also needed to eliminate any type of login for use of the public kiosks.

Kiosk requirements:

  • Reduced maintenance
  • Restricted browsing
  • No login
  • Web browser
  • Java
  • Flash
  • PDF
  • Removable media
  • Printing

Constraints:

  • No money
  • No new hardware
  • Limited server resources
  • No new management resources
  • Campus network security
  • Two month time frame

Solving problems

There was a time when the above constraints would kill this project. Today Free/Libre and Open Source Software, (FLOSS), developers with shared needs and high morals, and the Internet, combine to accomplish the formerly impossible.

What thin client technology to use?

We had linux servers, all tasked for other primary functions. Our network is firewalled and the library stations would have limited access to central campus servers. Two types of thin client solutions exist. The traditional X Terminal type, and stand alone remote booting type. The traditional X Terminal type does all processing and storage on networked servers. The stand alone remote booting model relies on servers for booting, and can use local disk storage. Given the constraints and requirements I wanted a remote boot diskless configuration.

Why Thinstation?

There are a lot of linux products capable of running a stand alone thin client. The list becomes shorter when doing a remote boot and running diskless. With a network card remote boot I could avoid losing CD's or walling in a floppy drive and replacing floppy disks with a screwdriver. Upon surveying products designed for the task, Thinstation stood out. It has a project history going back to 2003 and a lot of developer activity. A look at the mailing list archive reveals a world wide community running many kiosk and terminal setups. Thinstation is a Swiss army knife of thin clients, capable of remote terminal and stand alone use, inter operable with any environment one can think of. I dug in, using Thinstation 2.2beta2.

Hardware

The existing workstations lacked network cards with boot ROMS. Our desktop support tech showed me a pile of 5+ year old Dell Optiplex GX 110's slated for disposal. Using the formerly obsolete computers I put together a Cadillac setup as far as kiosk stations go.

Tweaking Thinstation

To save precious RAM the default Thinstation packages are slim on printing support. The pdf viewer, (Xpdf 1.0), was not capable of printing. The excellent Thinstation build system and FLOSS came to the rescue. With some research and a bit of time I made an updated Xpdf Thinstation package, with printing support. I compiled a newer Firefox package with printing support turned on. The available LPRng package provided the final printing piece I needed. The most time consuming job was tinkering with Firefox browser.xul and other settings to produce the restricted browsing experience.

Server Support

On the server side I leveraged existing linux capabilities, adjusting dhcp, installing tftp-hpa, LPRng, and Xfs. Due to our firewall the kiosks cannot access the printer directly and spool to a central server. Xfs was needed to provide better font support for Firefox.

Outcomes

The ASC Nielsen Library has eight low maintenance public access kiosks, with zero expenditures for hardware or software. The support procedure for library staff is first reboot, second call me. I still get calls, but not about our library kiosks.

Thinstation Library Kiosk Specs: Dell Optiplex GX110 Pentium III 900 256MB RAM Intel i810 graphics 3com 3C59X with PXE 1.44MB floppy drive Thinstation 2.2beta3 IceWM Mozilla Firefox 1.0.6 SUN Java 1.5_04 Flash 7.0 XPDF 3.0 Ghostscript Fonts MSTT Fonts LPRng

About Cameron Miller

Cameron Miller is a UNIX and Linux systems administrator with 15 years of experience. He has worked in Biotechnology, Electronics Manufacturing, Medical Billing, Freelance Consulting, Web Hosting, for two Universities ( University of Arizona and University of Northern Iowa) and Adams State College. Along the way he has supported Netware, Windows NT, Irix, AIX, OSF/1, Solaris, BSDi, OpenServer, and GNU/Linux. He holds degrees in Mathematics with a Computer Science Emphasis and Physics from Adams State College.


To the right: A relaxed Cameron Miller off-duty thanks to thin clients...