Version 6 of Debian
GNU/Linux, the popular open-source project that bills itself as “the universal
operating system,” hit the Internet on Superbowl Sunday, packing a trove of
updated applications and a pair of new editions to burnish its universal
billing.
The distribution,
which already stands out for its broad processor architecture support—spanning
12 architectures—branches out in version 6 with 32- and 64-bit editions based
on the FreeBSD kernel. These new editions, while rough around the edges, open
new opportunity for technology sharing among separate open-source operating
systems and indicate that the project that gave birth to Ubuntu Linux continues
to drive open source in new directions.
This latest
release, which is also known by the Toy Story-inspired name “Squeeze,” will
play well in server deployments that draw on open-source components, which the
Debian project has a knack for packaging up for easy installation over one of
the project's repository mirror sites.
Debian 6.0 can also
work well in a desktop role, particularly for users who wish to closely control
the versions and configuration of the software on their machines. Debian is
known, in its stable branch, for lagging behind the cutting edge in the
versions of the software it ships, but once you become familiar with the
distribution, it’s possible to mix in applications from the project’s testing,
unstable and experimental branches to tune one’s environment.
GNU/kFreeBSD
The Debian 6
feature that I was most interested in checking out was the operating system’s
new 32- and 64-bit FreeBSD kernel variants, both of which carry a “technology
preview” label. While most Linux-based operating systems are simply called
“Linux,” the Linux open-source project only produces the kernel of these
operating systems—the code wrapped around the kernel is the product of many
different projects, the most central of which is the GNU project, which
produces the C library and the constellation of applications (known as “userland”)
that makes Linux into a Unix-style operating system.
GNU/Linux and most
Unix-style operating systems, including those distributed under an open-source
license, tend to be licensed incompatibly with each other, which has kept
nifty, open-source software advances, such as Sun’s DTrace instrumentation
framework and ZFS storage system, from making their way into Linux-based
operating systems, even as these features have spread into more compatibly
licensed Unixes, such as FreeBSD.
Debian’s kFreeBSD
flavor works around these licensing issues by marrying the GNU C library and
userland with the kernel from FreeBSD 8. As a result, this version of Debian
inherits the kernel features and hardware support of FreeBSD, while maintaining
compatibility with most of the Debian software package catalog.
By sticking to the
GNU C library, the kFreeBSB branch avoids many of the issues that troubled an
earlier Debian project to port the NetBSD kernel to Debian along with the BSD C
library. However, this key library difference carries its own complexity—for
instance, DTrace is practically unusable in kFreeBSD for now due to missing
userland components. For a Debian-style distribution with better feature
compatibility with Solaris (albeit with fewer available packages) check out
Nexenta at nexenta.org.
When I spun up my
first Debian kFreeBSD virtual instance, I noticed that FreeBSD lacks the
enhanced “virtio” drivers that boost I/O performance with Linux or Windows
operating systems running under KVM—a difference that was noticeable in the
time it took my Linux and FreeBSD-based instances to install.
Given my interest
in kFreeBSD’s potential for bringing previously inaccessible features into
Debian, I was pleased to find ZFS as a partition option in the Debian installer
application. However, over the course of several installations, I was unable to
create an instance with a working ZFS partition from the installer—it appeared
that the system wasn’t installing the needed packages to get ZFS working. I
was, however, able to create ZFS volumes once I’d finished installing and
booting into a standard install with UFS-formatted partitions.
Installation and Updates
I tested the amd64
version of Debian GNU/Linux 6.0 on a dual-core Dell notebook with 3GB of RAM, as well as on a handful of VMs (virtual
machines) hosted under the KVM hypervisor on that test notebook. I created VMs
for the 64- and 32-bit versions of the distribution in both its GNU/Linux and
GNU/kFreeBSD configurations.
For most of my
installs, I opted for Debian’s network-based install media—relatively small
(around 140MB) disc images that reach over the network to Debian mirror servers
to fetch the files needed for an installation. One of the benefits of this
install route is that the system grabs all the pending updates during the
install process, so there aren’t dozens of packages to fetch after first boot.
Debian 6 is also
available in a LiveCD version, similar to what other Linux distributions offer,
which enables users first to try out the operating system before installing it
on their hard drives.
Unlike most other
Linux distributions, installing Debian 6 comes with the additional wrinkle,
depending on one’s hardware, of separately installing any device firmware that
fails to meet Debian’s free licensing requirements. With version 6, the Debian
project has managed to excise all non-free firmware from its default install
sources—a long-time goal of the project.
My test machine
required such a firmware file to drive its Intel 4965AGN wireless network adapter. The Debian
installer prompted me to provide the needed file, which I attempted to do using
a USB stick, but the installer couldn’t detect
the the firmware. I tried with FAT and ext3-formatted USB media, but to no avail. I forged ahead with
my wired NIC, which did not require additional firmware, and fetched the
missing firmware from Debian’s optional non-free repository after installation.
Once my system was
up and running, I was pleased to note that some of the software management
tools I’m accustomed to using in Ubuntu (which is a Debian derivative) have
made it back upstream. In particular, Ubuntu’s App Store-like Software Center, and its easy-to-use Update
Manager tools, are available in Debian 6, both of which put a friendly face on
the distribution’s massive collection of ready-to-install software packages.