knoppix-logo.png

Instant-Linux

Knoppix 2.1

01.01.2002 Eine relativ neue Distribution namens Knoppix kommt aus deutschen Landen und eignet sich besonders gut, um neue Programmversionen auszuprobieren, ohne eine bestehende Linux-Installation zu verändern.

Stellen Sie sich vor, Sie kommen an Ihren Windows-Rechner, und statt des Windows-Desktops blinkt Ihnen KDE entgegen. Dem ersten Schreck folgt ein Blick auf den grinsenden Kollegen, und Sie wissen: Alles wird gut. Niemand hat Ihre Festplatte übergebügelt, denn das, was hier läuft, ist eine Distribution, die überhaupt keine Festplatte benötigt, sondern komplett von CD läuft.

Alles, was drin ist

Knoppix, vom Namen des Autors Klaus Knopper abgeleitet, ist eine Distribution der besonderen Art. Ob zu Demonstrationszwecken, als Rettungs- oder Netzwerkdiagnosesystem eingesetzt, besteht ihr großer Vorteil gegenüber Ein-Disketten-Linuxen oder "Live Evaluation"-CDs kommerzieller Distributoren darin, soviel aktuelle Software wie möglich mitzubringen. Außerdem verfügt Knoppix über eine automatische Hardwareerkennung, die unter Zuhilfenahme der von Red Hat entwickelten Kudzu-Library eine Menge Konfigurationsarbeit erspart. Sehr nützlich erweist sich Knoppix auch beim Kauf eines neuen Rechners. Wer kann schon im Laden ohne langwierige Installation Hardwarekomponenten auf ihre Linux-Verträglichkeit testen? Knoppix kann es.

Das ISO-Image der Knoppix-CD können Sie von ftp://ftp.uni-kl.de/pub/linux/knoppix/ bzw. http://download.linuxtag.org/knoppix/ herunterladen oder direkt beim Autor bestellen. Ein entsprechendes Kontaktformular befindet sich auf der Knoppix-Homepage http://www.knopper.net/knoppix/. Für diesen Artikel haben wir die Version 2.1 beta 17 getestet.

Dank eines komprimierten Dateisystems befinden sich knapp 1.7 GB Software auf der CD, darunter der Linux-Kernel 2.4.14, die Desktop-Umgebungen KDE 2.2.1 und GNOME 1.4.1 mit Windowmanager sawfish 0.99, die Fenstersysteme XFree86 3.3.6 und 4.1.0, das Bildbearbeitungsprogramm Gimp 1.2.2, die Web-Browser Konqueror 2.2.1, Netscape Communicator 4.77 und Mozilla 0.9.5, die GPL-Version von StarOffice, OpenOffice 6.38, und KOffice 1.1.0 als Office-Pakete, das Textsatzsystem teTeX 1.0.2, der MP3-Player XMMS 1.2.5, der "Lemmings"-Klon Pingus 0.5 und viele andere. Auch Entwickler-Tools wie der C-Compiler gcc 2.95.4 und die Entwicklungsumgebungen kdevelop 2.0.1 und kdestudio 2.0.0 sind mit von der Partie. Rettungs- und Systemwartungstools wie der Partitionseditor parted 1.4.20, der Netzwerkmonitor ethereal 0.8.20 sowie der Portscanner nmap 2.54.30 bringt Knoppix ebenfalls mit. All diese Pakete selbst zu pflegen, wäre sehr aufwändig, und so verwundert es nicht, dass Knoppix auf der gut gepflegten Debian-Distribution basiert.

Out of the box

Obwohl meine angestammte Rubrik out of the box in diesem Monat pausiert, passt deren Motto auch recht gut auf Knoppix. Denn wenn der Rechner nicht allzu exotische (sprich: von Linux nicht unterstützte) Hardware enthält und mindestens 16 MB Arbeitsspeicher sowie ein CD-ROM-Laufwerk sein Eigen nennt, bootet die Distribution (Abbildung 1) direkt von CD in ein laufendes X-Window-System. Ab 82 MB Speicher startet die KDE-Desktop-Umgebung, sonst der ressourcenschonende Window Manager twm. Durch entsprechende Boot-Optionen (Tabelle 1) sind außerdem der GNOME-Desktop und der experimentelle Window Manager larswm wählbar.

Abbildung 1

Abbildung 1: Der Knoppix-Bootprompt

Dank der guten Hardwareerkennung (Abbildung 2) werden gängige SCSI-Controller, Netzwerkkarten, Sound-Karten, PCMCIA-Komponenten und auch USB-Geräte erkannt. Der sehr aktuelle Kernel trägt ebenfalls seinen Part dazu bei. Falls eine Komponente, für die ein Kernel-Modul vorhanden ist, wider Erwarten unerkannt blieb, kann per Boot-Option eine manuelle Modulauswahl benutzt werden – allerdings sollten Sie dafür ein wenig Linux-Erfahrung mitbringen.

Starthilfe

Da es bei einigen BIOS-Versionen Probleme mit dem direkten Booten von CD gibt (älteren Rechnern fehlt diese Eigenschaft oft völlig), sieht der Autor alternativ die Erstellung einer Boot-Diskette vor. Egal, ob Knoppix von CD oder Diskette gebootet wird, der nächste Schritt beim Systemstart ist das Erkennen des CD-ROM-Laufwerks und das Einbinden des komprimierten Dateisystems aus der Datei KNOPPIX, die im gleichnamigen Verzeichnis auf der CD steht. Abhängig vom freien Arbeitsspeicher richtet das System eine Ramdisk ein, die die zwingend schreibbaren Verzeichnisse /home und /var aufnimmt.

Abbildung 2

Abbildung 2: Automatische Hardwareerkennung

Nach der bereits erwähnten automatischen Erkennung der kernelseitig unterstützten Hardware geht es an die (ebenfalls automatische) Konfiguration des X-Window-Systems. Dazu bedient sich Knoppix der in XFree86 4.1.0 eingebauten Funktion, die Grafikkarte über den PCI-Bus zu identifizieren. Zusätzlich wird das kleine Tool read-edid eingespannt, das die Monitordaten von der Grafikkarte über das Data-Display-Channel-Protokoll (DDC) abfragt.

Ältere Grafikkarten werden unter Umständen nicht mehr von XFree86 4.1.0 unterstützt. Für diesen Fall ist parallel die ältere Version 3.3.6 installiert. Wenn alle Stricke reißen, bleibt noch der Betrieb im VESA-Framebuffer-Modus, von dem man allerdings keine Geschwindigkeitswunder erwarten darf.

Die Gesamtperformance des Systems hängt natürlich stark vom Speicherausbau, von der Geschwindigkeit des CD-ROM-Laufwerks und nicht zuletzt vom Prozessor ab. Auf einem Rechner mit Pentium III Prozessor und 128 MB Arbeitsspeicher lief der in Abbildung 3 gezeigte Desktop recht flüssig. Ein Pentium I mit 166 Mhz, 96 MB Arbeitsspeicher und einem 24x-CD-ROM-Laufwerk arbeitete schon etwas zähflüssig; hier sollte man besser auf die Alternativen zu KDE zurückgreifen.

Abbildung 3

Abbildung 3: KDE direkt von CD

Ausflug auf die Konsole

Auch ohne grafische Oberfläche hat Knoppix Einiges zu bieten. Alles, was auf der Textkonsole Rang und Namen hat, ist vertreten: der Datei-Manager Midnight Commander, die textbasierten Web-Browser w3m, lynx und links, der Mail-Client mutt, der Newsreader slrn. Den Beweis, dass auch die Textkonsole für Multimedia-Effekte zu gebrauchen ist, liefert das Sound- und "Grafik"-Demo bb.

Ebenfalls konsolenbasiert ist ein Tool, mit dem Sie Knoppix zu etwas mehr (virtuellem) Speicher verhelfen können. Das Skript mkdosswap erkennt automatisch DOS/FAT-Partitionen, ermittelt den freien Platz darauf und bietet Ihnen an, dort eine Swap-Datei anzulegen, die als virtueller Speicher mitbenutzt wird (Abbildung 4). Den Rest der Partition lässt das Skript unverändert. Bestehende Linux-Swap-Partitionen werden von Knoppix übrigens automatisch benutzt.

Abbildung 4

Abbildung 4: Virtuelle Speichererweiterung

Dran drehen

Sie haben beim Starten von Knoppix auch Kontrolle über bestimmte Systemparameter. Anstatt einfach [Return] zu drücken, geben Sie am Bootprompt eine der in Tabelle 1 aufgelisteten Optionen an. Auf Rechnern mit wenig Arbeitsspeicher bietet sich beispielsweise die Boot-Option knoppix desktop=twm an. Besitzen Sie eine bisher nicht direkt von XFree86 unterstützte Grafikkarte, so ist die Option knoppix xmodule=vesa sinnvoll. Der erste, am LILO-Bootprompt einzugebende Wert legt die zu benutzende LILO-Sektion fest. Normalerweise geben Sie hier knoppix an. Möchten Sie jedoch, dass die automatische Hardwareerkennung nach jedem erkannten Gerät stoppt und Ihnen die Möglichkeit gibt, weitere Treibermodule zu laden oder die Konfiguration zu ändern, sollten Sie stattdessen expert sagen. Anschließend können Sie beliebige Parameter aus Tabelle 1 eingeben.

Tabelle 1: Boot-Optionen von Knoppix

Option Bedeutung
lang=L Tastaturbelegung auf L setzen. Mögliche Werte sind de und us. Default ist de.
desktop=D Eine Desktop-Umgebung bzw. einen Window-Manager vorgeben. Mögliche Werte für D sind kde, gnome, larswm und twm. Default ist kde.
screen=S Vorgabe für die Bildschirmauflösung beim X-Window-System. Mögliche Werte sind zum Beispiel 800x600, 1280x1024 oder 640x480. Standardmäßig ist S=1024x768 eingestellt.
xserver=X Auswahl des zu startenden X-Servers. Mögliche Werte sind XFree86 (für XFree86 4.1.0) und XF86_SVGA, XF86_3DLabs, XF86_8514, XF86_AGX, XF86_FBDev, XF86_I128, XF86_Mach8, XF86_Mach32, XF86_Mach64, XF86_Mono, XF86_P9000, XF86_S3, XF86_S3V, XF86_W32 (für XFree86 3.3.6), wobei XFree86 voreingestellt ist.
xmodule=M Auswahl des Treibermoduls für XFree86 4.1.0. Mögliche Werte sind ark, ati, chips, cirrus, cyrix, fbdev, glide, i128, i740, i810, mga, neomagic, nv, r128, radeon, rendition, s3virge, savage, siliconmotion, sis, tdfx, trident, tseng, vesa.
N Vorgabe des Default-Runlevels. Mögliche Werte sind 5 (normaler Systemstart mit Desktop und vier Textkonsolen) und 2 (Systemstart mit vier Textkonsolen). Diese Option muss als letzte in der Reihe der Boot-Parameter stehen und hat den Default-Wert 5.
floppyconfig Beim Systemstart wird das (selbst erstellte) Skript knoppix.sh von einer separaten Diskette ausgeführt. Darüber lässt sich eine dauerhafte Konfiguration realisieren.

Sicher ist sicher

Damit der von CD gebootete Rechner nach Einrichtung der Netzwerkkarte mit netcardconfig oder Einwahl über PPP oder DSL nicht sofort zur Sicherheitslücke wird, sind bei Knoppix als Voreinstellung alle Netzwerkdienste abgeschaltet. Dadurch fehlt etwa die Möglichkeit, sich von außen einzuloggen. Selbst, wenn sie Dienste wie den Secure-Shell-Server sshd über das Skript /etc/init.d/sshd starten, ist ein ssh-Login darüber nicht möglich, weil sämtliche Passwörter in der Datei /etc/shadow als ungültig markiert wurden. Die grafische Oberfläche läuft unter den Rechten des unprivilegierten Benutzers knoppix. Nur die vier Textkonsolen (erreichbar über [Strg-Alt-F1] bis [Strg-Alt-F4]) haben die Rechte des Systemverwalters root. Sowohl die Textkonsolen als auch das X-Window-System werden direkt durch den init-Prozess gestartet. Eventuell vorhandene Linux- oder Windows-Partitionen auf der Festplatte lassen sich über die KDE-Laufwerksicons ohne Schreiberlaubnis (read-only) ansprechen. Damit wird ein versehentliches Löschen von Dateien durch Fehlbedienung effektiv verhindert.

Fazit

Da eine Distribution wie Knoppix bisher wohl einzigartig ist, fällt es schwer, Vergleiche mit Red Hat, Mandrake, SuSE & Co. anzustellen. Knoppix macht einen sehr guten, durchdachten Eindruck. Bei Tests auf verschiedenen Computern lief der Boot-Vorgang bis zum laufenden KDE-Desktop sauber durch, einzig auf einem Rechner mit Aureal-Soundkarte wurde selbige nicht erkannt. Auch eine Maschine, der sowohl Diskettenlaufwerk als auch Festplatte fehlten, bereitete keine Probleme. Die vorhandenen Programme sind gut vorkonfiguriert und geben dank des großen Softwareangebots den Eindruck einer "richtig" installierten Distribution. Kleinere Macken wie der Absturz des eher überflüssigen Tools kdiskfree durch deutsche Spracheinstellungen sind durchaus zu verschmerzen.

Was bis jetzt fehlt, ist eine einfache Möglichkeit, die Systemkonfiguration permanent zu speichern. Zwar existiert die Boot-Option floppyconfig, aber ohne Shellscripting-Kenntnisse kann sie nicht sinnvoll genutzt werden. Denkbar wäre auch eine Möglichkeit zur Installation des gesamten Systems auf Festplatte. Mit ein wenig Handarbeit lässt sich das bereits realisieren, aber der Autor plant schon eine automatisierte Festplatteninstallation für kommende Versionen. Das Ergebnis wäre eine komplett vorinstallierte Debian-Distribution mit sehr aktuellen Paketen, die mit dem Debian-Paketmanager dpkg und seinem genialen Frontend apt leicht zu verwalten und zu aktualisieren ist.

Kurzinterview mit Klaus Knopper

Dipl.-Ing. Klaus Knopper hat an der Universität Kaiserslautern Elektrotechnik studiert und sich nach seinem Studium im Bereich IT-Consulting selbstständig gemacht. Nebenbei ist er sehr aktiv im LinuxTag e. V. und daher seit den Anfangstagen des gleichnamigen Events an der Planung beteiligt. Per E-Mail haben wir ihm ein paar Fragen zu seiner Distribution gestellt.

Wann und warum haben Sie mit Linux begonnen?

Ich hatte während meines Studiums den allerersten Kontakt zu Rechnern überhaupt, die zum Glück alle unter Unix liefen. Durch verschiedene Administrationstätigkeiten bin ich stärker in die Materie eingestiegen, bis ich bei einem Fachpraktikum das erste Mal Linux (Kernel-Version 0.95) angefasst habe. Aus reinem Spieltrieb habe ich damals die Slackware-Distribution von 30 Disketten installiert. Seitdem möchte ich Linux nicht mehr missen.

Wann haben Sie mit der Entwicklung von Knoppix begonnen?

Im August 1999. Zum damaligen Zeitpunkt war es unter Linux-Dienstleistern ziemlich "hip", ein Mini-Linux auf einer bootfähigen CD auf Messen zu verteilen. Anfangs war Knoppix noch auf Red Hat aufgebaut, doch inzwischen bin ich zum leichter zu aktualisierenden Debian übergegangen.

Was war die Hauptmotivation für Knoppix?

Es waren mehrere Faktoren, in dieser Reihenfolge: Neugier, technisches Interesse, ein portables Linux-System mit der von mir gewohnten Software, das ich anstelle eines Notebooks überall hin mitnehmen kann, und die Herausforderung, eine Hardwareerkennung und automatische Konfiguration durchführen zu können (was man bei einer Installation normalerweise manuell tun muss).

Was planen Sie für zukünftige Versionen?

Neben der ständigen Aktualisierung einzelner Komponenten die "Entrümpelung" von selten verwendeten Dokumentationen, um Platz für Neues zu schaffen. Außerdem leichere Anpassung auf spezielle Einsatzgebiete, etwa als reiner MP3- oder Video-Player. Vielleicht noch eine Mini-Version für Businesscard-Rohlinge oder eine Maxi-Version für DVD. Und nicht zuletzt die dauerhafte Installation auf Festplatte.

Glossar

ISO-Image

Abbild einer kompletten Daten-CD als Datei. Aus dieser Datei kann mit CD-Brennprogrammen wie cdrecord die entsprechende CD erzeugt werden.

Portscanner

Ein Werkzeug, das anzeigt, welche Netzwerkdienste auf einem (übers Netz erreichbaren) Computer laufen. Es entscheidet dies anhand von offenen Ports.

Port

Eine Anlegestelle für Netzwerkverbindungen. Die Ports tragen Nummern, und viele sind über diese Zahl einem Dienst zugeordnet. Beispielsweise benutzt FTP den Port 21, SSH den Port 22, TALK den Port 517 usw. Offen ist ein Port dann, wenn dahinter ein entsprechender Server lauscht.

Ramdisk

Bei einer Ramdisk wird ein Teil des Arbeitsspeichers als Dateisystem benutzt. Viele Erstinstallationssysteme, die keine Linux-Partitionen auf Festplatte voraussetzen können, arbeiten mit Ramdisks.

Tip a friend    Druckansicht beenden Bookmark and Share
Kommentare