Knoppix has taken the Linux world by storm.
Barely known outside its borders only a few months ago, it has suddenly become the focus
of Linux media as a great way of introducing anyone to Linux. Unlike other distributions,
Knoppix does not need to be installed on a computer's hard disk - it runs directly from the CD.
All you need to do is to place it into your CD-ROM drive and restart the computer.
A few minutes later you will have a fully working Linux workstation with all major desktop
environments, server software, multimedia, office and productivity applications
you can think of.
This amazing product is a brainchild of Klaus Knopper. Klaus was kind enough to take time off
his schedule and agreed to answer a few questions for the benefit of DistroWatch readers.
|Klaus, thank you very much for your time.
Let me start with a few personal questions: who is Klaus Knopper?
All I know is that you are an electronics engineer living in Kaiserslautern, Germany, but that's about it.
How old are you?
|Married? Children? Any pets?
|No and no. No pets either because I travel too much to be able to take care of pets.
If I was at home more often, I would probably get a cat.
|What do you do for living?
|Consulting, commercial support for migration towards Free Software solutions,
customising of software, and teaching.
|The idea of a complete OS running from a bootable CD is not a new one.
Apple used to supply such a disk with its OS prior to MacOS X and Linux has had DemoLinux, SuSE Live-Eval
and CoolLinux, just to name a few. What made you create another one and what differentiates Knoppix
from other similar products?
I wanted to learn how bootable CDs work and once a base system was
running, I added stuff that I needed for my personal use, like hardware
auto-detection and automatic start-up of a pre-configured desktop. When you are
teaching computer classes, the PCs for students are not always installed
in the way you need it. So, having a bootable CD with me with a complete
installation, made a lot of things easier. Also, considering the fact
that notebooks can get stolen or broken easily, carrying a bootable CD
around is way less of an effort.
Knoppix was not planned to be released as another Linux distribution,
and I still consider it being more a personal collection of tools that
fit my needs rather than a "product", though it can be (and is being)
used as base for many other projects now. Hence the name
"Knopper's *nix". My friends from LinuxTag e.V. convinced me to make the
project open to the public, and provided mailing lists, a forum and an upstream
The other bootable CD projects you mentioned are all fine work and
perfectly fit the purpose they are designed for. I have good contacts
with DemoLinux, and occasionally the two projects may benefit from each
So being asked about the differences to other products, I don't really
know how to answer this. Each one has its specialities. Knoppix may have
a good hardware detection (resulting from a lot of email with reports and
workarounds for difficult hardware from many people), but (yet) lacks
features like hooks to partly-harddisk-installed directories (which
DemoLinux has) or extended configuration options or non-free
software-components (and proprietary kernel modules) that may be present
on other vendors' CDs. The downloadable version of Knoppix should be
"freely re-distributable for non-commercial and commercial purpose".
That's why some software is not included on Knoppix, which may be
present on other CDs.
|Probably the most amazing thing about Knoppix, at least judging from users'
reactions on public forums, is its hardware auto-detection ability. Being
based on Debian, does Knoppix use Progeny's discover or some other tool?
|The algorithm used for the hardware detection results from writing down
the steps that you normally have to do manually (or with the help of an
interactive GUI), and then writing programs and scripts that try to do
hwsetup is a small C program I wrote, it uses RedHat's GPL-ed libkudzu
and some manually generated hardware/module tables to identify
peripherals, load the necessary modules for them, create symlinks in
/dev for different devices and write some description files in
/etc/sysconfig for later use by scripts. This is the program that draws
the green progress bar during the initial booting stage, after the CD-ROM
has been found and mounted. I could probably have used discover as well,
but kudzu was more stable and reliable at the time.
After this low-level hardware configuration, all devices supported by the
current Linux Kernel should be working. Then some shell scripts generate
configuration files for XFree86, KDE and Gnome. Also, locales are set
according to the chosen language, so Gnome and KDE programs have the
language-specific messages and look&feel.
|Did you do any specific work on these tools?
|I try to leave the low-level hardware stuff to the kernel developers and
therefore don't do a lot of kernel patches myself. hwsetup and the
Knoppix-specific hwdata table are things I frequently work on.
|Does Knoppix include any non-free (speech) software?
|Yes, as long as the license qualifies it as "freely re-distributable for
non-commercial and commercial use". I'm not a hard-core GPL evangelist.
If a program is useful and there is no free equivalent available yet,
I see no reason not to include it, if its license does not restrict the
distribution of the CD. That's why you won't find some programs (or
plugins) on the CD that are "free of charge to download for end-users",
but its license creates unacceptable conditions for redistribution, or
does not allow redistribution at all.
I would say that about 99% of all packages on the CD fall under
an OSS-style license. If in doubt, please check
|One disadvantage of Knoppix is that while it's running, it ties up your
|This disadvantage is not Knoppix-specific.
|Let's say I am happily running it on my PC and decide
to watch a movie. Technically it should be possible to load xine into memory,
remove the Knoppix CD from the drive and insert a DVD. Of course, I tried it
and it doesn't seem to work. Why?
|Well, let's assume for a moment that it would be possible to load xine
into memory, change CDs, and you hit the play button. Now xine accesses
the DVD, recognises a menu, and tries to load the libdvd-menu plugin.
Where has /usr/lib gone? What to do now? It can't even display an error
message because libc and the message catalogues have gone bye-bye.
Imagine ripping out your hard disk from your computer while programs are running
off it. You will probably experience similar results.
Therefore, the Linux kernel (like all Unix-like kernels I know) locks
all drives while they are accessed. This keeps programs (and the
operating system) from crashing because files cannot be physically removed
while being read.
There may be some workarounds. I was thinking of putting all system
files (configs/locales/libraries/...) on a really HUGE ramdisk and
mounting the rest via NFS from CD. When the NFS daemon is being
suspended, and the CD is removed, all programs that need to access files
on the CD will simply freeze until the CD is put back in and nfsd is
being revived. Just an idea, I did not try it yet. Maybe an "OGG Player
Edition" where xmms and all libraries are present only on a ramdisk with
no dependency files on the CD, would be an option.
Another possibility is using the PXE boot option, where you boot Knoppix
over the network and have your CD/DVD drive free.
|How many people work on Knoppix?
|Difficult to say. I can only tell that _I_ work on it for sure.
Many people are contributing bug fixes, hardware-specific workarounds and
ideas. Some of my friends from LinuxTag e.V. are working on special editions
with me (like an "Installer" for other Distributions, or Internet Cafe
But there are a lot of project forks. Some user groups and institutions
have created language-specific editions (Japanese, Spanish) or are
simply using the hardware detection as a platform for their own
projects. They may appear under a different name than "Knoppix", but you
will probably find references to Knoppix in the Changelogs or
descriptions, as is required by the GPL and the Copyright.
|Can you explain the release philosophy of Knoppix? A new ISO seems to
appear just about every week or two and they are all called Knoppix 3.1 with
a date behind the version number. They are all labelled as beta versions. What
is the reason for the high release frequency and what will the product be
known as, once it reaches a "stable" state?
|Last question first: The "final" release will appear when there is a
"final" release of GNU/Linux (which will probably mean the end of the
In the open source world, development is incredibly fast, and there are
new and significant features, changes or bug fixes every day in almost
every program that is actively maintained either by a single author or
a group of developers. To keep track of this, I do frequent updates of
the installed Debian packages (apt-get update ; apt-get upgrade) and, on
request or if bugs are reported, also working on the additional programs
that are written by me (the "Terminalserver" feature, the hardware
detection scripts, updates to supporting scripts etc). Also, parts of
some add-ons that I'm developing commercially are used for improving the
downloadable version of Knoppix in each release. This may explain why there
are sometimes new releases in daily sequence (especially when a critical bug
is found, which luckily were not many so far).
So, since most of the software is in active development, I feel that it
would be wrong to promise anything, or suggest that the CD is perfect and
error-free. It is "experimental software, use at your own risk.". And I
would like to keep it that way, because I like experimenting with new
things. If you want a guarantee and commercial support, you can still get
that for Knoppix too, choosing a vendor of your choice that sells you a
support contract or a customised version.
As for the static version number: personal laziness. I have not written a
script yet that exchanges version numbers in all READMEs and HTML files
on the CD, so the only thing I change is the build date on the boot screen.
A new major version may be released when something changes significantly
(KDE 3.1, or maybe a new release at the upcoming LinuxTag 2003).
|There are many uses for Knoppix. It can be used as a demonstration tool, as
an emergency rescue tool for your regular Linux or Windows system and even as
a GUI substitute for the standard Debian installer. Personally, I never leave
home without it, because the odds of coming across a computer with Linux on it are still heavily against me. Have you heard of any more unusual
ways of using Knoppix?
|I would not go as far as using it as a replacement for a regular Debian
installation. Christian Perle, the author of knx-hdinstall, has done a
terrific job writing a script that turns Knoppix running from CD back
into a "normal" Debian installation. But the script is still in an early
state: There is no software selection list, it can only install on a
single ext2 partition, and the desktop icons are not automatically
created for users. knx-hdinstall is already good for quick installations for
I have heard of some unusual ways of using Knoppix, apart from the
usual "coaster" thing, if someone has no success in booting a computer
with exotic chip sets with Linux. The CD is used as a certified running
Linux system for commercial proprietary products (which is perfectly
legal in the sense of the GPL), and some are working on a version with a
Mosix kernel or other clustering stuff to boot an array of PCs without
hard disk installation.
Some people (including me) are using Knoppix when shopping for a new
computer. If the hardware is working fine and is all detected by Knoppix,
the computer should be ready to run any brand of Linux.
|What does future hold for Knoppix? Any new features?
|I'm waiting for a new kernel release, which may fix some problems with
PCMCIA chip sets on some newer notebooks, and KDE 3.1. New features:
whatever comes to mind and seems convenient, and does not require too
much additional space on the CD. I may add overlay-filesystem support in
order to allow installing software on the ramdisk "over" the read-only
CD, but that will probably not happen in the very near future.
|Any plans to port it to other architectures?
|Yes, if I (and all co-developers) get paid for it. I think this is only
fair, because development is time-consuming, and I would not expect
anyone else to work for free on such a thing. If someone would like to
do this for free in his spare time, I would try my best to help, but
other things do have priority.
|What do you do when you are not sitting in front of the computer? How do you relax?
|Going out with friends, sleeping a lot, listening to contemporary music
or visiting concerts, occasionally jogging or biking in the forest nearby
the town where I live.
|Klaus, thank you for the interview and all the best with your project!
|Copyright (C) 2002 Ladislav Bodnar
Verbatim copying and distribution of this article is permitted in any medium, provided this copyright notice is preserved.
|8 November 2002
16MB RAM (text mode)
96MB RAM (graphics mode)
Standard SVGA graphics card
PS2 or USB mouse
Intel: 486DX to Pentium 4
AMD: Duron, Athlon, Athlon XP
Automatic hardware detection
No hard disk required
No installation required
2GB of software on CD
|Pronounced ["k'nop-iks", n], with clear initial "k" (there is no silent "k" in German), Knoppix is a bootable CD with a collection of GNU/Linux software and automatic hardware detection. It is not necessary to install it on a hard disk; thanks to on-the-fly decompression, the CD contains up to 2GB of binary software packages.
|A hardware auto-detection utility developed by Knoppix
|A script to facilitate installation of Knoppix on hard disk
|Short for "Pre-Boot Execution Environment". Pronounced pixie, PXE is one of the components of Intel's WfM specification. It allows a workstation to boot from a server on a network prior to booting the operating system on the local hard drive. A PXE-enabled workstation connects its NIC to the LAN via a jumper, which keeps the workstation connected to the network even when the power is off. Because a network administrator does not have to physically visit the specific workstation and manually boot it, operating systems and other software, such as diagnostic programs, can be loaded onto the device from a server over the network.
|Abbreviation of Network File System, a client/server application designed by Sun Microsystems that allows all network users to access shared files stored on computers of different types. NFS provides access to shared files through an interface called the Virtual File System (VFS) that runs on top of TCP/IP. Users can manipulate shared files as if they were stored locally on the user's own hard disk.