January 10, 2007
This article was contributed by Donnie Berkholz
The
Linux Terminal Server Project (LTSP)
makes it easy to set up Linux-based thin clients. It packages up all the
necessary software and adds custom-written scripts and packages to make the
whole process incredibly easy. But the world of LTSP is changing.
Project MueKow
(pronounced "Moo-Cow") is a complete rethink on how to handle the creation and
distribution of LTSP. In the current 4.x series, the project builds and
packages essentially form an entire Linux distribution. Developers Jim McQuillan
and Scott Balneaves realized this doesn't make sense because they only add
value to a small proportion of packages—5% would be
optimistic. Everything else is simply an additional burden that detracts from
the time they can spend on the project's real focus. And from a user and
distribution perspective, all those packages outside of the distribution's
package management create more opportunities for outdated packages, security
holes, and other fun problems. MueKow will become LTSP-5.
Four months ago, LWN briefly
referred to a story about the future of LTSP, which inspired your author
to start a native Gentoo port. What makes Gentoo a solid platform for LTSP?
Its source-based nature gives it a number of benefits. Not only can one
infamously customize the optimization flags with which packages are compiled,
but one can also decide which features to include and which to exclude. For
example, one can choose to leave out Kerberos support in Gentoo. In a binary
distribution, packages may link against and depend upon Kerberos
unconditionally. With diskless clients, including unnecessary features raises
the number and size of files that must be transported across the network. This
problem gets increasingly severe as one scales up to more clients. Once the
Gentoo port is done, the automated client builder will take care of removing
unneeded cruft.
Many people use Gentoo not because it is source-based but because of the power
and flexibility of the package manager, portage. One feature that makes
portage powerful for embedded setups and diskless clients is its
ability to install packages into an arbitrary chroot without requiring that
the package manager itself be installed there. A simple command such as
`ROOT="/opt/ltsp" emerge packagename` will install that package, all of its
run-time (not build-time) dependencies, and package metadata to
/opt/ltsp. Software installed in a chroot can later be easily updated or
uninstalled using similar commands. This integration of the client chroot with
the server installation may be unique to Gentoo.
For a distribution to qualify as LTSP-compliant, the LTSP project
defined a set of
requirements:
- Netboot thin clients with PXE and Etherboot
- Local devices with a FUSE filesystem called LTSPFS
- Network-transparent sound and video
- Screen scripts, including XDMCP, ldm/sdm, rdesktop, telnet, shell
- Boot thin clients with 32MB memory or more
- Use LTSP tools such as getltscfg
- Pass VCI (Vendor Class Identifier) string from the client to the server (in initramfs)
- Transparent pass-through printing
- Network swap using methods such as NBD, iSCSI or NFS
- Configurable location of the LTSP chroot tree
- Control per-client options with a single file, lts.conf
A native LTSP port fulfills the LTSP-5 requirements by adding LTSP-specific
packages, porting the automated client builder's distribution-specific
plugins, and writing the needed init scripts. Those three steps pretty well
take care of the distribution's role in fulfilling the LTSP-5
requirements. The rest is a matter of server configuration. As the packaging
and init script porting are fairly trivial once you understand an individual
distribution's quirks, we will spend most of our time discussing the client
builder. Adding LTSP-specific packages amounts to making a map of the packages
installed on an LTSP-4 system, determining which are installed by default, and
adding a metapackage to pull in the rest. Many distributions will not have
much to port in the init scripts, but Gentoo has a BSD-style, dependency-based
initialization process for which the LTSP init scripts will require
significant rewriting.
To build a client environment, one runs a script called ltsp-build-client. It
creates the chroot, installs the client packages and sets up reasonable
defaults. The LTSP client-root builder is a fine piece of work. It's entirely
written in shell, and its core is beautifully created so one can simply drop
in a new shell-script
plugin and have it instantly start working. Each distribution has its own
directory for plugins in /usr/share/ltsp/plugins/ltsp-build-client, as a
number of tasks are expected to be distribution-specific, but there is a
common directory for those few distribution-neutral tasks. Files in the
distribution directories can override common files with the same name, and
they can use files from another distribution. This is particularly useful in
the case of related distributions such as Ubuntu and Debian, both of which
already have mostly working LTSP-5 ports. In addition to distribution-level
overrides, system administrators can install their own overrides of
distribution plugins in /etc/ltsp/plugins/ltsp-build-client.
LTSP has no shortage of interesting projects, such as enhancing support for
local devices and selectively running applications on the client rather than
the server. To get involved or learn more, join the #ltsp channel on
irc.freenode.net or visit the home page.
Comments (8 posted)
New Releases
Release 2.1 of Endian Firewall
is available.
"
Endian Firewall is a "turn-key" linux security distribution that turns every system into a full-featured security appliance. The software has been designed with "usability in mind" and is very easy to install, use and manage, without losing its flexibility.
This new release contains many improvements, bugfixes and upgrades."
Comments (none posted)
Distribution News
The Debian Project has announced that Debian 3.0 ("woody") has been put out
to pasture, and is no longer carried by the project's mirror network. "
After four and a half years this marks the final end of life for
GNU/Linux 3.0. This distribution has been superseded by Debian
GNU/Linux 3.1 (codename 'sarge') which the Debian project has released
on June 6th, 2005. Security support for woody has therefore ended
already in June 2006, one year after the release of sarge."
Full Story (comments: none)
XaraLX, a
general purpose graphics program, has been removed from all
releases of Fedora Extras.
"
We have taken this drastic step as we have been made aware that
it is in violation of Fedora Policies. While the application has been
released as GPL, it contains a Static Library that is still proprietary and available in binary form only.
There is a note in the source tarball stating that at some future time the
library will also be released under the GPL. When that happens we will
welcome XaraLX back as a package."
Full Story (comments: none)
Mike McGrath has been appointed as the new Fedora Infrastructure Leader.
"
Mike has been a contributor to the Fedora Project for quite a
while now, especially the Fedora Infrastructure group, and I'm personally very glad
that we were able to hire from within for this job. There are never as
many job openings as I wish there were, but when we do have openings in
Fedora it is my intention that we will look to fill them from within our
community first.
Mike won't be starting 100% until February, but in the sense that he is
already involved deeply in Fedora Infrastructure, and it's just a matter
of him ramping up his time over the next few weeks."
Full Story (comments: none)
Distribution Newsletters
The
January 8
Fedora Weekly News is out. Topics include a claim of one million
unique Fedora Core 6 installations, FUDCon, and the proposed
Fedora 7 schedule.
Comments (none posted)
The
Gentoo
Weekly Newsletter for December 25, 2006 is out. This is a short holiday
edition.
Comments (none posted)
The January 1, 2007 edition of the Gentoo Weekly Newsletter is online
with the latest Gentoo distribution news.
Full Story (comments: none)
Linux Wizard presents
Cooker : The Inside Man IV, featuring the latest Mandriva news.
Comments (none posted)
The January 7 issue of the Ubuntu Weekly News is out. Topics covered this
week include the latest Kubuntu developer meeting, secure use of the Ubuntu
IRC channels, and the most recent changes to the upcoming "Feisty"
distribution.
Full Story (comments: 7)
Package updates
Updates for
Fedora Core 6:
pygtk (packaging error fix),
pam (bug fixes),
tar (new man page),
apr-util (bug fixes),
fonts-indic (various improvements),
fonts-sinhala (bug fixes),
fonts-arabic (bug fixes),
selinux-policy (bug fixes),
system-config-printer (bug fixes),
binutils (bug fixes),
cyrus-sasl (bug fixes),
agg (sync with final 2.4 release),
dovecot (reenabled GSSAPI),
evolution (bug fixes),
gnome-python2 (bug fixes),
gawk (bug fixes),
vnc (bug fix),
dbus (bug fix),
setup (bug fixes).
Updates for Fedora Core 5:
pygtk (packaging error fix),
seamonkey (release bump),
yelp (rebuild),
epiphany (rebuild),
devhelp (rebuild),
eclipse (rebuild),
avahi (security and bug fixes),
xterm (bug fixes).
Comments (none posted)
Updates for
Mandriva Linux 2007.0:
samba (bug fixes),
kdeutils (ark fix),
mesa (bug fix),
postfix and cyrus-sasl (bug fixes).
Comments (none posted)
Updates for
rPath:
conary (maintenance release).
Comments (none posted)
Updates for
Trustix Secure Linux 2.2 & 3.0:
bind, logwatch, perl-dbd-pg (bug fixes).
Comments (none posted)
Updates for
Ubuntu 6.10:
glibc (bug fix),
ubiquity (bug fixes).
Updates for Ubuntu 6.06-LTS:
glibc (bug fix).
Comments (none posted)
Newsletters and articles of interest
Howtoforge has published
a tutorial on creating a Debian/Ubuntu mirror site.
"
This tutorial shows how to create a Debian/Ubuntu mirror for your local
network with the tool apt-mirror. Having a local Debian/Ubuntu mirror is
good if you have to install multiple systems in your local network because
then all needed packages can be downloaded over the fast LAN connection,
thus saving your internet bandwidth."
Comments (1 posted)
Page editor: Forrest Cook
Next page: Development>>