1.5 Linux
1.5.1 Historie
Das Jahr 1991 war die Geburtsstunde von Linux. Ein junger finnischer Informatikstudent namens Linus Benedict Torvalds entwickelte einen eigenen Betriebssystemkern, weil er mit dem von ihm eingesetzten MINIX nicht zufrieden war. Er wollte vor allem die Leistung der damals weit verbreiteten 80386-Prozessoren ausnutzen und dies konnte seiner Meinung nach MINIX nicht leisten.
Zu diesem Zweck benutzte er freie Software, die im Rahmen des GNU-Projekts zur Verfügung stand, z. B. den GNU-C-Compiler (gcc). Des Weiteren legte er von Anfang an Wert darauf, dass auch Linux den POSIX- und X/Open-Standards entsprach.
Richard Stallman und die Free Software Foundation legten den Grundstock, die Philosophie und die Community, aus der heraus Projekte wie Linux entstanden. Torvalds bezeichnete Stallman als den »großen Philosophen«, während er sich selbst als den Ingenieur sah.
Das ist ein Auszug aus dem Posting von Linus Torvalds vom 1. August 1991 in der Newsgroup comp.os.minix:
From: torvalds@klaava.Helsinki.FI Newsgroups: comp.os.minix Subject: What would you like to see most in minix? Summary: small poll for my new operating system Date: 25 Aug 91 20:57:08 GMT Hello everybody out there using minix - I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things). I've currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I'll get something practical within a few months, and I'd like to know what features most people would want. Any suggestions are welcome, but I won't promise I'll implement them :-) Linus (torvalds@kruuna.helsinki.fi) PS. Yes – it's free of any minix code, and it has a multi-threaded fs. It is NOT portable (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that's all I have :-(.
Linux ist im Prinzip nur ein modifiziertes UNIX, daher gelten die beschriebenen Eigenschaften (Vorteile, Struktur usw.) ebenso für dieses Betriebssystem. Es ist modular aufgebaut, d. h. es besteht aus mehreren Komponenten, die sich theoretisch nach Belieben auswechseln lassen. Ich möchte im Folgenden eine kurze Übersicht über die größten »Komponenten« von Linux geben.
Abbildung 1.4 Linus Torvalds – Der »Erfinder« von Linux
1.5.2 Die graphische Oberfläche
Linux »umfasst« grundsätzlich erst einmal nur den Textmodus, d. h. die direkte Kommunikation mit dem System über die Konsole. Wenn Sie unter Linux eine graphische Benutzeroberfläche haben möchten, muss ein so genanntes X-Window-System installiert und gestartet werden. Keine Angst, in der Regel ist ein solcher X-Server in allen Distributionen (auch in Ubuntu) integriert und wird generell mitinstalliert und automatisch gestartet. In diesem Zusammenhang sind Ihnen vielleicht schon einmal Begriffe wie Xfree86, Xorg oder neuerdings auch XGL oder AIGLX begegnet, die alle jeweils einen X-Server darstellen.
Xfree86 und Xorg unterscheiden sich in ihrem Funktionsumfang. In der aktuellen Version von Ubuntu haben Sie es mit Xorg zu tun. Ein Wechsel auf neuere X-Server wie XGL oder AIGLX ist allerdings fest geplant und ein solcher wird eventuell schon 2007 Einzug in Ubuntu halten.
Auf diese neuesten Errungenschaften wie dreidimensionale Desktops, die durch XGL, AIGLX und dessen fantastische Fähigkeiten im Zusammenhang mit modernen Graphikkarten möglich werden, gehe ich in Abschnitt 11.4 genauer ein. Sie können diese X-Server und die dazugehörigen Composite-Manager bereits heute (dank des modularen Aufbaus von Linux) installieren.
Grundsätzlich ist ein solcher X-Server nur eine Sammlung von Funktionen zur graphischen Darstellung von Informationen. Graphische Benutzeroberflächen wie GNOME oder KDE bauen hierauf auf und sind somit einzeln installier- und austauschbar. Eines der wichtigsten Elemente einer graphischen Benutzeroberfläche ist und bleibt die Shell. Über die Shell haben Sie mit Hilfe von Kommandos direkten Zugriff auf Ihr Betriebssystem, ohne Umwege über die dazwischenliegende graphische Benutzeroberfläche.
1.5.3 Moderne Arbeitsumgebungen
Auf dem X-Server bauen zwei große moderne Arbeitsumgebungen auf, KDE und GNOME. Es handelt sich bei diesen beiden Projekten nicht einfach nur um verschiedene Oberflächen, die Unterschiede sind vielfältiger. In beiden Arbeitsumgebungen sind eine Vielzahl von verschiedenen Programmen integriert. Dies bedeutet aber nicht, dass Sie diese nicht austauschen können. Der Vorteil dieser Art von Bündelungen liegt eher darin, dass diese Programme sehr gut aufeinander abgestimmt sind.
In der Praxis wird es höchstwahrscheinlich so aussehen, dass Sie nicht daran vorbeikommen, Programme z. B. unter GNOME einzusetzen, die eigentlich aus der KDE-Welt stammen. Lassen Sie sich aber nicht durch diese Zuordnungen in Lager verwirren, Sie werden feststellen, dass die Unterschiede nicht besonders groß sind.
Ich möchte an dieser Stelle auch auf Compiz/Beryl hinweisen, das ich ebenfalls in Abschnitt 11.4 behandeln werde.
GNOME
Ubuntu hat das Licht der Welt mit der Arbeitsumgebung GNOME als Standard erblickt. Dies hatte mehrere Gründe:
- GNOME hat im Gegensatz zu allen anderen Arbeitsumgebungen einen regelmäßigen halbjährlichen Veröffentlichungszyklus, der dem Bestreben eines regelmäßig aktualisierten Ubuntus entgegenkommt.
- GNOME hat durch seine lange Entwicklungszeit und die frühe Unterstützung durch Firmen wie RedHat eine große Stabilität erreicht. Dies soll aber keineswegs bedeuten, dass KDE instabiler wäre.
-
- Auch KDE wurde z. B. durch SUSE sehr stark unterstützt. GNOME legt aber weniger Wert auf so genannte »Features«, sondern mehr auf Einfachheit. Dadurch können natürlich auch weniger Fehler auftreten.
- GNOME ist um einiges »kompakter« und ressourcenschonender als KDE und die Hardwareanforderungen können bei GNOME wesentlich geringer sein. Dieser Punkt ist für Ubuntu ein wesentlicher, wie wir später noch besprechen werden. Im Übrigen sind andere Window-Manager wie XFCE oder Fluxbox noch einmal deutlich ressourcenschonender als GNOME.
- Einige Ubuntu-Entwickler kamen anfangs aus der GNOME-Gemeinschaft. Diese Tatsache legte den Schritt nahe, sich zu Beginn auf die Arbeitsumgebung GNOME als Standard zu einigen. Nebenbei bemerkt orientiert sich der Zeitplan der Ubuntu-Veröffentlichungen an dem von GNOME. Ein neues Release von Ubuntu erscheint also etwa ein bis zwei Monate nachdem GNOME eine neue Version seiner Arbeitsumgebung veröffentlicht hat.
Inzwischen ist Ubuntu nicht alleine geblieben, die Zahl der offiziell unterstützten Derivate hat sich auf drei erhöht. So sind neben Ubuntu nun auch Kubuntu und Xubuntu auf den offiziellen Servern zu finden. Dies sind aber längst nicht alle Projekte, die rund um Ubuntu entstanden sind.
Linus und GNOME |
Gerade die »Einfachheit« wird GNOME oftmals zum Vorwurf gemacht. Der Streit über fehlende Features mündete im Jahr 2005 sogar in einer Aussage von Linus Torvalds, in der er die User aufforderte KDE statt GNOME zu benutzen. GNOME hat sich der Kritik angenommen und in der Version 2.16 den von Torvalds kritisierten Druckdialog überarbeitet. In seiner jetzigen Form bleiben kaum Wünsche offen. |
Abbildung 1.5 Die Homepage von GNOME im Oktober 2006 bei der Ankündigung der neuen Version GNOME 2.16. Das Motto »Simply Powerful« beschreibt den Charakter von GNOME – einfach (und) leistungsstark.
In Kapitel 7 erfahren Sie mehr über GNOME. Eine Übersicht über die verschiedenen Ubuntu-Versionen finden Sie im Abschnitt 2.4 ff.
KDE
Gerade in Deutschland erklang schnell der Ruf nach einem Ubuntu mit KDE als Standardarbeitsumgebung. Und obwohl es von Anfang an kein Problem war, KDE über die offiziellen Downloadquellen nachzurüsten, entstand relativ schnell das Kubuntu-Projekt. Schon mit der zweiten Ubuntu-Version, dem »Hoary Hedgehog«, entstand parallel ein eigenständiges Kubuntu.
Auch wenn ich im gesamten Buch immer versuchen werde, parallel einen Blick auf Kubuntu zu werfen, so habe ich Kubuntu zusätzlich ein eigenes Kapitel gewidmet (siehe Kapitel 8).
Inzwischen ist Kubuntu recht beliebt geworden, es rangierte im Dezember 2006 in der Liste der beliebtesten Distributionen auf Rang 12, noch weit vor anderen Linux-Distributionen wie RedHat, aber auch weit hinter Ubuntu (Rang 1).
Die deutsche Kubuntu-Gemeinschaft trifft sich auf http://www.kubuntu.de oder in den zahlreichen anderen Foren rund um Ubuntu (siehe Kapitel 23).
Abbildung 1.6 Die offizielle Homepage des KDE-Projektes im Oktober 2006.
Einige der oben genannten Vorteile von GNOME bedeuten nicht automatisch, dass KDE die schlechtere Wahl wäre:
- KDE ist von Natur aus wesentlich verwandlungsfreudiger und »verspielter« als GNOME. Es lässt sich mit Hilfe von Bordmitteln und eingebauten Features einfacher dem persönlichen Geschmack anpassen. Ich werde darauf im späteren Kubuntu-Kapitel 8 ff. noch genauer eingehen.
- Man kann seit dem Erscheinen von KDE eine wesentlich größere Dynamik in diesem Projekt erkennen als bei den Konkurrenten. Neue Programme und Features finden sehr schnell ihren Einzug in diese Oberfläche. GNOME wirkt hierbei weitaus träger und fast schon stiefmütterlich behandelt, ist dadurch aber auch wesentlich berechenbarer.
XFCE
Der jüngste Spross der Ubuntu-Familie ist Xubuntu, ein Ubuntu mit der Arbeitsumgebung Xfce als Standard. Xfce hat den Ruf besonders schonend mit der Hardware umzugehen und sehr bescheiden zu sein. Zudem ist es relativ spartanisch und kann dadurch mit einer gewissen Eleganz punkten. Xfce findet nun mit Xubuntu erstmals offizielle Unterstützung durch Canonical, die Firma hinter Ubuntu. Zeitgleich mit den LTS-Versionen von Ubuntu und Kubuntu erscheint auch Xubuntu auf den offiziellen Servern.
Auf http://www.distrowatch.com befindet sich Xubuntu mittlerweile bereits auf Platz 19 (Stand Dezember 2006).
Window-Manager oder Desktop Environment? |
Schon lange schwelt die Diskussion darüber, ob Xfce nur ein Window-Manager oder eine komplette Arbeitsumgebung ist. Fakt ist, dass Xfce zu einer Arbeitsumgebung eigene Programme besitzen muss. Diese waren in der Vergangenheit nur rudimentär vorhanden. |
In letzter Zeit ist hier aber sehr viel Bewegung zu beobachten und so hat Xfce inzwischen z. B. einen eigenen mächtigen Dateimanager namens Thunar. Man kann also sagen, dass sich Xfce langsam, aber sicher zu einer richtigen Arbeitsumgebung wie GNOME und KDE entwickelt. |
Abbildung 1.7 Die offizielle Homepage von XFCE.
Mehrere Arbeitsumgebungen parallel
Für welche Arbeitsumgebung Sie sich letztendlich entscheiden, hängt einzig und allein von Ihrem persönlichen Geschmack ab. Alle Arbeitsumgebungen haben ihre Vor- und Nachteile. Nutzen Sie doch einen der vielen Vorteile von Linux: probieren Sie einfach die Ihnen gegebenen Möglichkeiten aus! Das Beste ist: Im Notfall brauchen Sie sich gar nicht zu entscheiden.
Sie können mehrere Arbeitsumgebungen oder verschiedene Versionen von Ubuntu (so genannte Derivate) auch parallel installieren. Wie Sie diese Konfiguration erreichen, erfahren Sie
- in Abschnitt 8.1.7 für Kubuntu mit KDE,
- in Abschnitt 9.1.6 für Xubuntu mit Xfce und
- in Abschnitt 5.3.3 für Edubuntu mit zusätzlichen Anwendungen für den Lernbereich. Sie erfahren mehr über Edubuntu in Abschnitt 2.4.1.
1.5.4 Kernel-Versionen
Wie gesagt bezeichnet man als Linux eigentlich nur den Kern (engl. Kernel) des Betriebssystems. Wenn jemand davon spricht, dass er Linux 2.6 benutzt, dann meint er, dass er ein Betriebssystem mit dem (Linux-)Kernel 2.6 verwendet.[Man findet auch oft Aussagen wie »Ich benutze Linux 10.1«. Hier verwechselt der Betreffende die Versionsnummer von Linux mit der von SUSE und outet sich somit als SUSE-Nutzer. Solche Aussagen begegnen einem oft im deutschsprachigen Raum, da hier SUSE die meistverbreitete Distribution ist.] Aufbauend auf diesem Kernel gruppieren sich sämtliche Programme als optionale Komponenten, die für den Betrieb eines Computers nützlich erscheinen. Hierzu gehört unter anderem auch eine graphische Benutzeroberfläche. Linux-Betriebssysteme gibt es in allen möglichen Kombinationen von Kernel und optionalen Komponenten.
- 1991
-
- Als erster genauer Termin steht der 3. Juli 1991 fest. Linus implementiert einige Gerätetreiber sowie den Festplattentreiber und einige User-Level-Funktionen.
-
- Linus veröffentlicht am 17. September 1991 die Version 0.01 des Kernels für einige Interessenten aus dem Usenet. Dieses Datum wird oftmals als die Geburtsstunde von Linux angesehen. 2006 wurde Linux somit 15 Jahre alt. Herzlichen Glückwunsch!
-
- Die erste »offizielle« Version des Linux-Kernels (0.02) erscheint am 05. Oktober 1991. Mit dieser Version laufen bereits die bash, gcc, gnu-make, gnu-sed und compress.
-
- Am 19. Dezember 1991 läuft die erste Version (0.11), die ohne die Hilfe eines anderen Betriebssystems lauffähig ist. Es gibt keinen SCSISupport, so dass eine AT-Bus-Festplatte Voraussetzung ist. Es gibt weder init noch login, nach dem Systemstart landet man direkt in einer bash. Es gibt Ansätze für die Implementierung von Virtual Memory, es sind aber mindestens 4 MB RAM notwendig um GNU-Programme, insbesondere den gcc, benutzen zu können. Ein einfacher Systemstart ist aber auch schon mit 2 MB möglich.
-
- Deshalb folgt zu Weihnachten 1991 eine Version mit virtueller Speicherverwaltung, um den Kernel auch mit 2 MB RAM übersetzen lassen zu können.
- 1992
-
- Bereits am 5. Januar kommt die erste Version (0.12) heraus, die mehr Funktionen hat als unbedingt benötigt werden. Mit dieser Version wird der Kernel unter die GPL gestellt. Die ältere Lizenz, unter welcher der Kernel steht, ist in vielen Punkten deutlich strenger.
-
- Linus verteilt diese per Anonymous-FTP im Internet, was zu einem sprunghaften Anstieg der Testerzahl führt. Da dieser Anstieg so groß wird, dass die nötige Kommunikation nicht mehr per E-Mail zu bewältigen ist, wird im Usenet die Gruppe alt.os.linux geschaffen. Das Interesse an Linux wächst stetig und wird von Linus koordiniert.
-
- Um die Entwicklung voranzutreiben, erhöht Linus im März die Entwicklungsnummer auf Version 0.95. Die im April folgende Version 0.96 ist die erste Version, mit der es möglich ist, das X-Window-System zu betreiben. Man schätzt die Zahl der Anwender auf circa 1000.
- 1993
-
- Die Zahl aller Programmierer steigt auf circa 100. Fünf von ihnen arbeiten mit Linus zusammen. Die Anwenderzahl beläuft sich auf etwa 20.000. Durch Anpassung des Linux-Kernels an die GNU-Umgebung der Free Software Foundation (FSF) wachsen die Möglichkeiten von Linux erneut stark an, da man nun auf eine große Sammlung an vorhandener Software und Tools zurückgreifen kann.
- 1994
-
- Mit der ersten stabilen Linux-Version (1.00) im März wird der Kernel netzwerkfähig und die Userzahl steigt auf 100.000 an.
-
- Linus stellt nun den Quelltext des Linux-Kernels offiziell unter die GPL. Ein weiterer wichtiger Schritt ist die Adaption eines Graphical User Interfaces (GUI), des X-Window-Systems. Dieses wird ab diesem Zeitpunkt von dem Xfree86- Projekt beigesteuert.
- 1995
-
- Linux läuft nun auch auf DEC- und Sun Sparc-Prozessoren. Schätzungen belaufen sich auf rund eine halbe Million Anwender.
- 1996
-
- Mit der neuen Version 2.0 des Linux-Kernels können mehrere Prozessoren gleichzeitig angesteuert werden. Linux verliert langsam seinen Bastlerstatus und wird zu einer ernstzunehmenden Alternative für Firmen. Das K Desktop Environment (kurz: KDE) wird gestartet. Die Anwenderzahl erhöht sich auf rund 1,5 Millionen Benutzer.
- 1997
-
- Neue Linux-Versionen erscheinen fast wöchentlich. In verschiedenen Ländern existieren bereits Linux-Magazine. Die Anwenderzahl ist auf 3,5 Millionen Anwender gestiegen. Verschiedene namhafte Firmen beginnen ihre Software auf Linux zu portieren: Netscape ihren Webbrowser, Applixware ihre Office-Anwendung und die Software AG ihre Datenbank Adabas D. Damit gibt es auch professionelle Software für Linux. GNOME wird als Antwort auf KDE initiiert.
- 1998
-
- Man schätzt die Anzahl der Programmierer von Linux auf 10.000 und die Anzahl der Anwender auf 7,5 Millionen.
- 1999
-
- Man tippt auf ungefähr 10 Millionen Anwender. Linus Torvalds kündigt den Angriff auf Windows an.
- 2001
-
- Im Januar wird der Kernel 2.4 veröffentlicht.
- 2003
-
- Im Dezember erscheint der Kernel 2.6.
1.5.5 Linux heute
Linus Torvalds koordiniert nach wie vor die Arbeit am Linux-Kernel und inzwischen ist Linux 15 Jahre alt. Aus dem anfangs sehr rudimentären System, das nur von eingefleischten UNIX-Anhängern verstanden und geschätzt wurde, hat sich eine ganze Kultur rund um Linux entwickelt. So listet die Internetseite distrowatch.com zurzeit mehr als 350 Linux-Distributionen auf. Manche dieser Distributionen entstanden schon Anfang der 90er Jahre und blicken somit auf eine lange Geschichte zurück. Ubuntu gehört, wie bereits erwähnt, zu den jüngsten Distributionen. Umso erstaunlicher ist der wahnsinnige Erfolg von Ubuntu. Auf der Liste der beliebtesten Linux-Distributionen wird Ubuntu seit knapp zwei Jahren, also seit dem erstmaligen Erscheinen, auf dem ersten Platz geführt.
Es gibt heute circa 29 Millionen Linux-Benutzer weltweit. Die Zahlen schwanken sehr, eine Vorstellung von der Größenordnung gewinnt man aber anhand der Webseite{LinuxCounter} LinuxCounter (http://counter.li.org/). Dort können Sie sich ebenfalls als Linux-Benutzer registrieren.