claim.gif
Linux Magazin Linux User Easy Linux Ubuntu User International Linux Community
Erschienen in EasyLinux 01/2007   »   Ausgabe bestellen

Was Linux-Kernel- und Programmversionen bedeuten

Linux 10.1 oder 2.6.16?

Hans-Georg Eßer


Versionsnummern sollen für Übersicht sorgen: Ist die aktuellste Version installiert oder ist es Zeit für ein Update? Leider sind Programmierer auch hier sehr kreativ, so dass es zahlreiche Varianten gibt, die Software-Releases durchzuzählen.

Die Linux-Pappschachtel im Laden versprach aktuellste Software: Auf der Packung standen viele durch Punkte unterteilte Zahlen, darunter 10.1, 2.6.16, 6.9.0 und 3.5.1. Doch der Linux-Experte in der Firma sagte am nächsten Tag: Das ist doch schon ein halbes Jahr alt.

In Internetforen und auch auf der EasyLinux-Mailingliste liest man oft Aussagen wie "Ich arbeite mit Linux 10.0" -- in diesem Fall meint der Autor vermutlich Suse Linux 10.0, aber es könnte auch Mandrake Linux 10.0 gemeint sein. Auch von Slackware Linux (einer weiteren Distribution) gibt es eine Version 10.0. Zusammen mit der Versionsnummer sollte man also immer angeben, um welche Distribution es sich handelt:

Jeder Linux-Anbieter verwendet sein eigenes Rechensystem, um die Neuerscheinungen durchzuzählen, und gelegentlich gibt es sogar Umstellungen: So hatte etwa Mandriva Linux (als es noch Mandrake hieß) klassische Versionsnummern x.y; seit Mitte 2005 dienen stattdessen Jahreszahlen als Versionsbezeichner. Ebenfalls nach dem Datum zählt das Ubuntu-Team: Version 6.10 heißt so, weil sie im Jahr 6 (2006) und im Monat 10 erschienen ist.

Etwas ganz anderes ist die Kernel-Version -- sie ist einer der wichtigsten Anhaltspunkte dafür, wie aktuell eine Distribution ist: Der verwendete Linux-Kernel entscheidet darüber, welche Hardware das System unterstützt (und wie gut es dies tut). Leider ist die Kernel-Version noch nicht ausreichend aussagekräftig: Die meisten Linux-Distributoren liefern nicht den Standard-Kernel aus, wie er auf dem Linux-FTP-Server kernel.org erhältlich ist, sondern übersetzen eine eigene, stark angepasste (gepatchte) Version für ihr Produkt. Trotz gleicher Versionsnummer kann der Kernel dann ganz andere Eigenschaften als das Original haben.

Kernel-Versionen

Traditionell folgten Linux-Kernel-Versionen einem komplexen Nummerierungsschema, das so aussah: Kernel-Versionen hatten stets die Form a.x.y (z. B. 2.6.12), und die Stellen hatten diese Bedeutungen:

So weit die Geschichte. Die (Weiter-) Entwicklung der stabilen und instabilen Linien erfolgte bis Kernel 2.6 immer parallel, aber seit der Veröffentlichung von Kernel 2.6.0 ist damit Schluss: Statt mit Versionsnummern 2.7.x einen neuen instabilen Zweig zu eröffnen, fließen Neuentwicklungen nun in die aktuellen stabilen Versionen ein.

Mit Kernel 2.6.8 wurden sogar vierstellige Versionsnummern eingeführt: So enthielt Version 2.6.8.1 eine kleine Fehlerkorrektur für Kernel 2.6.8. In den letzten Monaten sind solche Mini-Updates sehr häufig geworden: Ein Blick auf kernel.org (Abbildung 1) zeigt, dass teilweise nur wenige Tage zwischen Versionen mit geänderter vierter Stelle lagen.

Abb. 1: Um einen Eindruck von der Häufigkeit zu gewinnen, mit der neue Kernel-Versionen erscheinen, ist ein Blick auf die Sammlung der Kernel-Changelogs hilfreich.

KDE und Gnome

Auch die beliebten Desktop-Umgebungen zählen ihre Versionsnummern mehrstellig nach oben, aktuell sind zum Beispiel derzeit KDE 3.5.5 und Gnome 2.16. Bei den Nummern orientieren sich die Desktops (nur sehr grob) an den Versionsnummern der verwendeten GUI-Toolkits Qt und Gtk. So wird beispielsweise die neue KDE-Version 4.0 auf Qt 4.0 basieren, während KDE 3.5.x eine Qt-Version 3.3.x verwendet. Auch hier ist ein Vergleich der Versionsnummern von KDE und Gnome wie das beliebte Addieren von Äpfeln und Birnen: Er ergibt keinen Sinn.

Abb. 2: Welche KDE-Version läuft? Das verrät Ihnen jedes KDE-Programm über den Menüpunkt "Hilfe / Über KDE".


Toolkit: Sammlung von grundlegenden Funktionen, auf die sich Entwicklerbeim Programmieren von Anwendungen stützen können. Beispiele für verbreitete Toolkits sind Qt (KDE-Programme) und Gtk (Gnome-Programme). Sie stellen die Grundlage für die Anzeige einer grafischen Oberfläche (Symbolleisten, Buttons, Dialogfelder etc.) bereit. Qt und Gtk sind Bibliotheken: Das heißt, sie liegen als eigenständige Dateien vor. Unterschiedliche Programme können sie so nutzen; sie müssen dabei nur einmal in den Arbeitsspeicher geladen werden.

Alphas, Betas und RCs

Viele Anwendungen, die unter Linux populär sind, haben Versionsnummern, die mit "0." beginnen -- das sieht unfertig aus, ist aber oft einfach Bescheidenheit der Entwickler. Einen Anhaltspunkt für die Frage, ob es sich um eine eher stabile oder eine hochgradig experimentelle Programmversion handelt, gibt die Versionsnummer nicht.

Auch die Kennzeichnung eines Programms als Alpha- oder Betaversion bedeutet wenig: In einigen Fällen steckt dahinter komplett unbrauchbare Software, die nach wenigen Sekunden Laufzeit abstürzt, während andere Programmierer ihrem Werk eine Alpha- oder Betanummer geben, weil sie es noch nicht für ausgereift halten, auch wenn es das schon ist.

Nach den Alpha- und Betaversionen kommen heute oft noch die "RCs": Release Candidates (also Veröffentlichungskandidaten) sind Programmversionen, von denen die Entwickler schon hoffen, dass sie weitgehend fehlerfrei sind. Anstatt das Programm direkt unter die Anwendermassen zu bringen, betiteln sie es zunächst als Release Candidate und stoßen damit einen späten Betatest an. Gibt es dann keine Fehlermeldungen, wird der Release Candidate zur finalen Version erhoben. Gab es doch Probleme, beheben die Programmierer diese und geben einen neuen Release Candidate heraus. (hge)

Welche Version habe ich?

Verwenden Sie ein Programm, das keinen Über-Dialog hat, der die Versionsnummer verwendet? Dann gibt es verschiedene Möglichkeiten, trotzdem herauszufinden, welche Version der Software Sie einsetzen.

Das Programm fragen

Handelt es sich um ein Kommandozeilenprogramm, können Sie versuchen, es mit einem der Parameter -V, --version und -version aufzurufen. In einigen Fällen funktioniert diese Methode auch mit grafischen Anwendungen, etwa beim Texteditor nedit:

$ nedit -V
NEdit 5.5
Sep 30, 2004

     Built on: Linux, 486, GNU C
     Built at: Apr 17 2005, 17:38:00
   With Motif: 2.1.0 [@(#)GNU/LessTif Version 2.1 Release 0.93.94] (UNTESTED)
Running Motif: 2.1 [unknown]
       Server: The XFree86 Project, Inc 40300001
       Visual: 16-bit TrueColor (ID 0xa3, Default)
       Locale: de_DE@euro

Neben der Versionsnummer (5.5) gibt das Programm noch weitere Informationen aus, hier zum Beispiel, wann es übersetzt wurde (im April 2005). Auch KDE-Programme reagieren auf die Option --version:

$ kwrite --version
Qt: 3.3.6
KDE: 3.5.4
KWrite: 4.5.4

RPM- oder Debian-Paketdatenbank

Kennen Sie den Paketnamen des Programms, verwenden Sie rpm oder dpkg-query, um die Version herauszufinden -- beispielsweise für das Downloadtool wget:

$ rpm -q wget
wget-1.9.1-57

oder auf einem Debian-basierten System wie Ubuntu:

$ dpkg-query -W wget
wget    1.9.1-12

Ist der Paketname nicht bekannt, bieten beide Paketdatenbank eine Art Volltextsuche an; Sie müssen dafür nur den vollen (Pfad- und) Dateinamen einer einzigen Datei aus dem Paket kennen. Im Fall eines ausführbaren Programms reicht sogar der einfache Befehlsname.

Auf einem RPM-basierten System fragen Sie mit rpm -qf nach dem Paket zu einer Datei:

$ rpm -qf /etc/X11/xinit/xinitrc
netcfg-9.3-2

oder nach einem Programm, dessen Pfad Sie mit Hilfe von which ermitteln:

$ rpm -qf `which kwrite`
kdebase3-3.4.0-28

Debian-Distributionen verwenden dafür zwei Befehle; zunächst gibt dpkg -S den Paketnamen zu einer Datei zurück, anschließend erfolgt wieder mit dpkg-query die Versionsabfrage:

$ dpkg -S /etc/X11/xinit/xinitrc
xbase-clients: /etc/X11/xinit/xinitrc
$ dpkg-query -W xbase-clients
xbase-clients   4.3.0.dfsg.1-14sarge2

$ dpkg -S `which kwrite`
kate: /usr/bin/kwrite
$ dpkg-query -W kate
kate    4:3.3.2-1sarge3

Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links" nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedruckten Fassung entsprechen.

Druckerfreundliche Version | Feedback zu dieser Seite | Datenschutz | © 2017 COMPUTEC MEDIA GmbH | Last modified: 2008-11-05 17:26

Nutzungsbasierte Onlinewerbung

[Linux-Magazin] [LinuxUser] [Linux-Community] [Admin-Magazin] [Ubuntu User] [Smart Developer] [Linux Events] [Linux Magazine] [Ubuntu User] [Admin Magazine] [Smart Developer] [Linux Magazine Poland] [Linux Community Poland] [Linux Magazine Brasil] [Linux Magazine Spain] [Linux Technical Review]