A Review of Knoppix

When Knoppix was first released it was heralded as revolutionary in the Linux world. Its autodetection and configuration capabilities were unsurpassed. Many of my colleagues remarked that if ‘KNOPPIX can’t do it, Linux can’t do it’. Theoretically, one would be able to get a Knoppix CD, pop it into an arbitrary system, run it, save one’s data to a partition, USB stick, etc….), reboot and the existing system would be left completely as it was before the CD was placed in the system.

In terms of Linux time, many a eon has passed since its inception and yet there are few other distributions that are able to claim the same level of usability (even with the inclusion of commercial distributions such as Redhat, Suse and Mandrake Linux).

Even so, many attempts have been made to emulate the success of this Debian based distribution and the instant gratification that can seem to be rare at times in the Linux world. For example, of the major distributions Suse, Lindows and Mandrake have already made forays into this difficult area. Given the fact that we are in the midst of multi-gigabyte operating systems that we there would be such a competant one that could be run entirely from a CDROM is stupendous. Not only that, but that the minimum system requirements (see http://www.knopper.net/knoppix/index-en.html#requirements) would be so miniscule (82 MB RAM, CDROM drive, SVGA card, Intel compatible CPU (i486 or better)).

For this reason, I have decided to put these specifications to the test and see how it would perform. The base/reference/test system is an NEC Versa SX laptop with the following hardware configuration

– Intel Celeron 233 MHz
– 256 MB RAM
– IBM-DKLA-24320 4GB HDD
– Trident 2MB Cyber 9388/9388-1
– Toshiba CD-ROM XM-1702B
– Linksys WPC11 Instant Wireless Network PC Card
– Ricoh R/RL/RB/5C478(2), R5C522 or Compatible CardBus Controller
– ESS Maestro2E PCI Audiodrive (WDM)
– Intel(r) 82371AB/EB PCI to USB Universal Host Controller
– Intel(r) 82371AB/EB PCI Bus Master IDE Controller

More detailed specifications can be found at http://support.necsam.com/download/VersaSXug.pdf

The version of KNOPPIX being reviewed is

KNOPPIX version V3.3-2003-11-14-EN.iso
File version 11/14/2003 3:20AM Purdue University Mirror
RELEASE: 2003-11-14-BETA

Please note that this version is a BETA release. Consideration of this fact must be taken into account and some latitude given.

For those who aren’t in the know the official Knoppix website is http://www.knopper.net/knoppix/index-en.html. You have the choice of downloading the ISO image file from the website (or any of its mirrors) and burning to CD or obtaining it via local Linux user groups and/or computer shops. Its quite possible that it will appear as cover CDs of some Linux magazines.

Once you have obtained you Knoppix CD you simply place it in your CD drive, enable CD booting in the BIOS and reboot. For those of us who have slightly more antiquated systems (and hence BIOSes) there is also the option of building a boot floppy which would then automatically boot the Knoppix CD.

First impressions have a lasting effect and this is also the case here.

The average load time experienced was approximately five minutes.

The results obtained are tabulated below and are calculated from the time the boot prompt is displayed to the point at which the default KDE desktop environment has been completely loaded into memory.

Load time, 11:08:02 Start, 11:13:20 End
5:51:20 Start, 5:57:00 End
8:17:00 Start, 8:22:30 End

For a normal operating system such a lacksidasical load time would be unacceptable. However, we must place things into perspective and take into account the ‘live’ nature of this distribution.

Even so, I still believe that this is somewhat of a large period of time for a person to wait.

Bootup is like any other hard disk based distribution. We are greeted with something that resembles the lilo/grub boot prompt with a Knoppix splashscreen. Hit F2 to display a series of ‘cheatcodes’ which will allow someone to change the window manager to be loaded, keyboard locale, screen resolution, toggle blind support and toggle whether hardware autodetection, etc…. Alterntively, press Enter to proceed normally or wait for the boot prompt to time out.

Knoppix will then go through a period of hardware autodetection with PCMCIA card configuration commencing first, then USB, mouse, soundcard, video, monitor, networking and finally mounting of removable storage devices such as hard disk partitions, USB sticks, Zip disks, etc….

From what I could see all hardware detection and configuration ended with success with the exception of the soundcard. This was to be expected though seeing as the device is classified as a WDM device (see http://www.webopedia.com/TERM/W/WDM.html). The NTFS formatted hard drive (normally running Windows 2003 Server, Enterprise Edition) was automounted and an icon was waiting for me on the desktop to read its contents. The choice and naming of the mounting points was rather interesting though being at /KNOPPIX/cdrom and /KNOPPIX/floppy. This could pose a problem to new users to KNOPPIX. Nonetheless, this is offset by the ease of use of the KDE desktop environment. Further to this, I must wonder about the purpose of the /KNOPPIX/none directory. Could someone please advise me of the reasoning behind this directory within the KNOPPIX filesystem hierarchy and whether there could have been a more logical name for it?

To my surprise the Linksys card was correctly found. Not only that, but it was also configured correctly for Internet access, with all details about name servers and DHCP being correctly determined.

As with most other operating systems though a failure during this autodetection and configuration phase can pose a bit of a problem with device conflicts and inexplicable, intermittent freezing. However, such problems can be overcome by bypassing this autodetection scheme via command line switches at the boot prompt.

Even so, should autodetection and configuration fail then there are tools that are provided through which one can manually setup devices. For instance, the multitude of options for printer daemons including CUPS, LPD, LPR and RLPR.

I suppose that’s another one of the reasons why the makers of Knoppix have decided not to utilise a more modern device filesystem management mechanism such as “devfs” or its replacement in the 2.6 kernel series “udev”, which would provide only device nodes for only those pieces of hardware that are present.

On bootup we are greeted by a default KDE (3.1.4) desktop with the now familiar Keramik theme. Even though it is rather mature and slick I think that someone could have spent some more time on this and created a proper theme for Knoppix to help to fur differentiate it and give it a more Knoppix ‘feel’. This is a rather superficial point though and can be overlooked. Also,
I don’t doubt that loading a theme from another location would be all that difficult.

The choice of four virtual desktops and four virtual consoles is rather optimistic in my opinion. A better choice would have been two. After all, the memory overheads associated with running multiple virtual desktops can have a dramatic impact upon overall system performance and responsiveness.

For example, by running ‘free’ one sees that there is a total of 256320KB RAM, 248032KB RAM used, 8288KB RAM free and 0KB swapfile usage. The makers of Knoppix should have probably taken this into account and published more realistic minimum specifications.

The impact of this memory suffocation is no more evident than at the desktop where memory leaks caused some strange graphical effects. When I loaded Mozilla virtually every widget was black!

As with all other previous versions there are no other users apart from root and ‘knoppix’. This is perfectly understandable given the target audience of this piece of software but perhaps more consideration could have been given to security and safety (the default ‘knoppix’ user has many of the priviliges that root has). After all, Knoppix is often used as a demonstration of Linux. What’s to stop some novice destroying or corrupting the contents of their entire hard drive when the demonstrator’s attention has been captured by some other matter.

We are offered an abundance of applications at the desktop and basically every type of user is catered for. Not only are there productivity applications such as OpenOffice (1.1.0), Mozilla (1.5) but also emulators (Bochs, Wine), mathematics programs (bc, dc, Xcalc and Gnumeric (a fairly comprehensive spreadsheet program that is intended to be a drop in replacement for proprietary spreadsheets), development (KDevelop, Kompare, Python and tcl interpreters for createing both command line and X based programs, CVS/RCS capabilities, C/C++/Java compilers as well as the ubiqitous vim and emacs/xemacs combination), text editing (Emacs, Joe, KWrite, Kate, Nedit, Vim, Xedit, gvim, zile (a lossy emacs clone) and Lyx (an X based LaTex editor)).

Upon starting Lyx further memory leaks and performance issues became apparent. Once again, widgets were completely black and it took an inordinate amount of time to convert a sample document from LaTex to PDF format. Opening the converted document in Adobe Acrobat (4.0) once again produced strange on screen effects. The system became rather difficult to use. Nonetheless, the situation was not dire. Hence, I started up KGeo (1.0.2), a geometry program designed for KDE and for educational environments. Multimedia options are no less varied with not only the standard KDE applications such as KGhostview, KFax, KView but also QCad (a CAD program), Scribus (a desktop publishing program that is supposedly capable of being a drop in replacement for MS Publisher), Sodipodi (a vector based program) and Kooka (Scan and OCR program). What I find to be particularly peculiar though is the fact that given the undoubted success and promiscuity of the OpenOffice suite the presence of KDE Office and AbiWord. Although a compentant product in itself when compared to OpenOffice, KDE Office pales in comparison. Furthermore, the only reason I can possibly find for the presence of AbiWord is its relatively small footprint (in both memory and speed).

Knoppix is in no ways restricted in terms of connectivity. Every single mode of connection is catered for including ADSL/PPPoE, PPP, ISDN, Cable internet as well as the now defunct serial port connection (such as via BBS and connecting to a serial port device). I found this capability to be completely unnecesarry though since ethernet and internet configuration were correctly implemented as was stated previously.

CD/DVD burning options are included but I was unable to test these due to the lack of a CDR/CDRW drive on the test system.

The comprehensiveniss of this operating system means that tools are provided for network/security analysis, traffic monitoring (Ethereal, IPTraf, Airsnort, Nessus (Security Tool and Network Scanner) as well as backing up and restoration of data via Partimage, Mondo and Amanda. It is therefore quite possible to use Knoppix as a ‘rescue disk’.

Possibly the most surprising aspect of this release were the options to allow it to serve as a server for thin clients. Of course it may also act as an SSH, Samba, NFS as well as Syslog server. This makes me wonder whether specialised derivatives of Knoppix such as Cluster Knoppix and Quanta are redundant.

My overall impression of this version of Knoppix is like that of any other Linux user probably. The fact that they have managed to cram so much on to a single CD is quite simply beyond fathom (see http://csociety-ftp.ecn.purdue.edu/pub/knoppix/packages.txt). However, like most other things in life, speed is a key issue (at least in my opinion). Is it possible that they went a little overboard? Its quite obvious (at least to me) that some applications are just plain superfluous (how many text editors do you really need?). Perhaps these applications could have been eliminated to help decrease seek times and hence loading times. Nonetheless, I can’t deny their achievement. Hence, I must bow my hat to Klaus Knopper and congratulate him and the developers of Knoppix for creating something that has made such a wonderful impact upon the Linux and the general computing world.

For further details about the author please see here.


  1. 2004-01-07 6:42 pm
  2. 2004-01-07 6:44 pm
  3. 2004-01-07 6:46 pm
  4. 2004-01-07 6:51 pm
  5. 2004-01-07 7:14 pm
  6. 2004-01-07 7:19 pm
  7. 2004-01-07 7:19 pm
  8. 2004-01-07 7:30 pm
  9. 2004-01-07 7:30 pm
  10. 2004-01-07 7:40 pm
  11. 2004-01-07 7:44 pm
  12. 2004-01-07 7:45 pm
  13. 2004-01-07 8:04 pm
  14. 2004-01-07 8:10 pm
  15. 2004-01-07 8:17 pm
  16. 2004-01-07 8:25 pm
  17. 2004-01-07 8:36 pm
  18. 2004-01-07 8:43 pm
  19. 2004-01-07 8:44 pm
  20. 2004-01-07 8:53 pm
  21. 2004-01-07 8:53 pm
  22. 2004-01-07 9:09 pm
  23. 2004-01-07 9:13 pm
  24. 2004-01-07 9:14 pm
  25. 2004-01-07 9:16 pm
  26. 2004-01-07 9:19 pm
  27. 2004-01-07 9:46 pm
  28. 2004-01-07 9:59 pm
  29. 2004-01-07 10:00 pm
  30. 2004-01-07 10:19 pm
  31. 2004-01-07 11:06 pm
  32. 2004-01-07 11:12 pm
  33. 2004-01-07 11:13 pm
  34. 2004-01-07 11:32 pm
  35. 2004-01-07 11:34 pm
  36. 2004-01-07 11:53 pm
  37. 2004-01-08 12:07 am
  38. 2004-01-08 12:12 am
  39. 2004-01-08 12:20 am
  40. 2004-01-08 1:26 am
  41. 2004-01-08 2:49 am
  42. 2004-01-08 3:02 am
  43. 2004-01-08 4:45 am
  44. 2004-01-08 5:27 am
  45. 2004-01-08 10:39 am
  46. 2004-01-08 11:32 am
  47. 2004-01-08 1:19 pm
  48. 2004-01-08 2:38 pm
  49. 2004-01-08 3:40 pm
  50. 2004-01-08 7:12 pm
  51. 2004-01-08 7:57 pm
  52. 2004-01-08 11:46 pm
  53. 2004-01-09 5:13 am
  54. 2004-01-09 7:01 am
  55. 2004-01-09 9:10 am
  56. 2004-01-09 2:23 pm
  57. 2004-01-10 5:22 am
  58. 2004-01-15 3:40 pm