K12LTSP: Kid-proof Computers For Schools

One of the more innovative and ingenious projects to come down the pike in
recent times is K12LTSP, the K-12 Linux Terminal Server Project. K12LTSP is
designed for the classroom, running diskless terminals (thin clients)
connected to an applications server. The advantages are legion:

  • easy installation and maintenance
  • isolated from the school’s main network
  • kid-proof
  • minimal cost
  • no licensing worries

K12LTSP is a user-friendly integration of Red Hat Linux 7.2 and the Linux
Terminal Server Project. The Linux Terminal Server Project is most worthy
in its own right, the great value of K12LTSP is incorporating it into Red
Hat as an installation option, and the quality documentation. Easy as pie
and saves many extra steps.

This is almost a magic solution for overworked, underappreciated teachers
commanded to “teach computer stuff.” The creators of the K12LTSP, Paul
Nelson and Eric Harrison, provide abundant and excellent documentation for
Linux system administration as well. (see Resources) It is best to have an
experienced guru do the installation and administration. But because of the
good documentation, a person with moderate knowledge of networking and
basic PC skills can do the job. Or make it a class project and let the kids
acquire some truly useful skills.

All the installation and configuration takes place on the server. Nothing
to do to the client machines except turn them on. IP addresses are assigned
via DHCP. Once it is up and running, maintenance is minimal, assuming
healthy hardware. It just works. Kids, of course, have no trouble adapting
to new computing environments, and love the endlessly customizable Linux

The server needs to be your best machine. For a classroom with up to 10
terminals, these are the minimum requirements:

  • CPU: One PIII- 1 gig or faster
  • RAM: base 128mb, plus 50mb for each client
  • HD: ATA/100 10+gig IDE (just try to find that small a drive anymore!)
  • Network: (2) 100/base cards and a 100base hub (8 or 16 port)

For serving up to 30 clients, a box with two 1 gig+ CPUs and dual SCSI hard
drives is nice. Use one drive for /home, the other one for everything else.
Even on a lower-end box I like two hard drives, it simplifies backups and

RAM is the most crucial component, the more the better. KDE and GNOME
consume a fair amount of RAM; when you add OpenOffice, or a graphics
application like the Gimp, more memory is even more better. It’s still
inexpensive, no need to stint.

For larger networks, spread the load over several lighter-weight servers,
rather than one heavy-duty box. 30 students all hitting the server at the
same time will tax any single machine. (Challenge your students with
putting together a Mosix or Beowulf cluster. This is a most practical
assignment, one example of the power of clustering is Google, which runs in
memory on a heavily customized Linux cluster. )

The terminals, or client machines, can be just about any old PC you have
lying around. A diskless client needs only a motherboard, RAM, CPU, video
card, and NIC. Many motherboards incorporate video, sound, and the NIC. For
bootup, use either an NIC with programmable boot ROM, or create a boot
floppy disk.

Linux is often touted as “the savior of elderly hardware.” Many schools
depend on old and donated machines, and it is nice to put old machines to
work, rather than dumping them in landfills. The most important component
is the monitor- don’t ruin your charge’s little eyeballs on bad monitors.
The second most important component is the NICs. Don’t skimp on the network
cards, life is too short to nurse a flaky NIC.

Many school networks are not well-constructed or administered. The default
K12LTSP configuration creates a private network that routes only necessary
traffic to the rest of the network. This prevents traffic jams, and
possibly other problems, such as adventurous students poking into forbidden
places. There have been reports of well-meaning teachers setting up Samba
and accidentally hijacking Windows NT domains- this won’t happen with
K12LTSP. Another option is to construct a completely self-contained
network, not connected to anything outside the classroom.

My favorite feature is a nice little script that Eric Harrison wrote. If a
student messes up their desktop beyond repair, run the script to reset it
to the default. The script gives the option of either restoring specific
users, or wipe the whole batch clean for a new class. All this does is
clean up the desktop, it does not affect system or data files, which are on
the server.

By now you’re probably wondering, OK, this sounds fine, but what do you do
with it? I’m so glad you asked. Scanners, Web cams, printers, word
processing, desktop publishing, graphics, programming, spreadsheets and
financial tools, scientific calculators, CAD, star charts- you name it.

Another popular item is squidGuard. If you do a “Server” install rather
than a “LTSP” install, K12LTSP can be used as a web filter. Because of the
Children’s Internet Protection Act, this has been a popular piece of
software. Commercial web filters are very expensive and not only is
squidGuard free (GPL), it performs very well, and gives the user complete
control. This is also a nice option for the home network, in fact K12LTSP
makes a dandy DSL/cable gateway for the home network. Be warned, the
“Server” installation includes no nice graphical desktop environments, it
runs only from the command line. It is best, for security and ease of
administration, to run servers as leanly as possible. However, for the
Linux newbie, selecting either a “Custom” or “Workstation” installation
lets you choose a graphical environment for your server, which may make it
easier to learn. When guru status is attained, 86 the fluff.

Linux, being a UNIX clone, has client/server functionality built into
everything. As a true multi-user operating system, any number of users can
share a single machine securely. Each user will retain their own custom
desktop settings, and their data files by default are not shared.

Windows and Mac connectivity are available, via Samba and Netatalk, which
are available when K12LTSP is installed as a server, rather than as a
terminal server. This provides native Windows and Apple file and print
sharing. Work is underway to develop a true thin-client for Macs.


Latest Articles

Follow Us On Social Media

Explore More