Es soll hier zunächst einmal geklärt werden, was man unter dem Begriff "Linux" eigentlich versteht.
Prinzipiell ist mit dem Begriff "Linux" nur der Kernel (allg. Betriebssystemkern) gemeint,
also der Teil des Systems, der z.B. die Ressourcen für die laufenden Programme und die Anwender
verwaltet. Obwohl der Kernel ein essentieller Teil des Systems ist, wäre er ohne zusätzliche
Software nutzlos. Um diesen Kernel zu nutzen, ist weitere (teilweise sehr systemnahe) Software
notwendig, also das eigentliche Betriebssystem. Beide Teile zusammen bilden ein vollwertiges
Betriebssystem. Derzeit wird in den meisten Fällen die Software des GNU-Projektes in Verbindung
mit dem Linux-Kernel verwendet. Heute sind beide Komponenten (der Linux-Kernel und
die GNU-Betriebssoftware) kaum noch voneinander zu trennen. Korrekterweise müsste man also
eigentlich, wenn man das Betriebssystem meint, von "GNU/Linux" sprechen, da hier immer der
Kernel (Linux) und die Systemwerkzeuge (GNU) gemeinsam gemeint sind. Es hat sich allerdings
heute eingebürgert, dass umgangssprachlich unter dem Begriff "Linux" die Kombination aus Kernel
und Systemwerkzeugen gemeint ist, und wird in diesem Sinne auch in diesem Kurs verwendet.
Der wichtigste Unterschied gegenüber herkömmlichen Unix-Systemen besteht darin, dass Linux
zusammen mit dem vollständigen Quellcode frei kopiert werden darf (Details dazu finden Sie im
Abschnitt 2.1.2 GPL & Co). Einschränkungen in der Funktionalität gibt es dagegen kaum; Linux
ist in vielerlei Beziehung besser als so manches teure Unix-System. Es unterstützt eine größere
Palette von Hardware-Komponenten und enthält in vielen Bereichen effizienteren Code.
Wichtig für das Verständnis von Linux ist auch, dass es nicht das "eine Linux" gibt. Grund dafür
sind eine Vielzahl sogenannter Distributoren (Details dazu in Kapitel 2.1.3 Distributionen). Dabei
handelt es sich um unabhängige Organisationen, die zu den oben bereits genannten Komponenten
von Linux zusätzliche Software sammeln, dies aufeinander abstimmen und dann vertreiben.
2.1.1. Die Geschichte von Linux
Nachdem Sie jetzt einen kleinen Einblick bekommen haben, was sich hinter dem Begriff "Linux"
verbirgt, soll in diesem Abschnitt der Ursprung von Linux beleuchtet werden. Die Geschichte von
Linux beginnt eigentlich im Jahre 1991. Um aber die Entstehungsgeschichte von Linux ganz zu
verstehen, muss man sich in das Jahr 1969 begeben. Dieses Jahr war der Startschuss für das
Betriebssystem Unix, dem Linux, wie bereits angedeutet, ziemlich ähnlich ist.
"Das Betriebsystem UNIX"
Unix entsprang ironischerweise einem gescheiterten Projekt: Zu Beginn des Jahres 1969 gab es
ein Gemeinschaftsprojekt des Massachusetts Institute of Technology (MIT), General Electric und
den Bell Labs von AT&T, dass Ideen für eine neue Generation von Betriebssystemen gesammelt
hatte und daran ging diese Ideen unter dem Namen Multics umzusetzen. Da weder Zeitplan noch
Budget eingehalten werden konnten, zog sich Bell Labs sehr schnell aus dem Projekt zurück.
Ken Thompson und Denis Ritchie, zwei Mitarbeiter von Bell Labs, die an Multics mitgearbeitet
hatten, waren von den Einfällen und Erfahrungen, die sie mit Multics gesammelt hatten, so beeindruckt,
dass sie kurzerhand eine abgespeckte Version des ursprünglichen Multics selbst schrieben
und unter dem Namen Unics, später UNIX, in die Welt setzten. Witzigerweise war eine Hauptmotivationen
für UNIX jedoch ein Spiel, das Thompson in seiner Freizeit geschrieben hatte. UNIX
gewann sehr schnell eine große Verbreitung innerhalb der Bell Labs. AT&T war es aufgrund einer
kartellgerichtlichen Entscheidung verwehrt beliebig im kommerziellen Feld tätig zu werden,
so auch im Falle von UNIX. Stattdessen lizensierte AT&T UNIX gegen nominelle Gebühren an
Universitäten, an denen UNIX seinen ersten Siegeszug antrat.
Eine besondere Rolle kam dabei der University of California in Berkeley zu, die einen eigenen Zweig
des UNIX - Systems hervorgebracht hat, die Berkeley Software Distribution (BSD). Sie war eng
mit dem Quellcode von AT&T verwoben, zur Verwendung benötigte man also ebenfalls eine Lizenz
von AT&T.
UNIX zeichnete sich durch Eigenschaften aus, die heute selbstverständlich sind, aber zu dieser
Zeit recht neu waren:
- Ein hierarchisches Dateisystem: Die ersten DOS-Versionen von Mircosoft aus den 80er Jahren
halten dies noch nicht.
- Multitasking: Bei den Betriebssystemen Microsoft Windows und Apple MacOS war man erst in
der zweiten Hälfte der 90er Jahre auf dem Weg dorthin.
- Multi-User-Fähigkeit: Selbst die aktuelle Version von Mircosoft Windows (XP) kann zwar mehrere
Benutzer verwalten (wie auch der Vorgänger Windows 2000), aber es kann zu jedem
Zeitpunkt maximal ein Benutzer am System angemeldet sein und mit dem Betriebssystem
arbeiten.
- Netzwerkfähigkeit: Schon sehr früh wurden die UNIX-Kernel mit einem TCP/IP-Stack ausgestattet
und bildeten schnell das Rückgrat des damals noch jungen Internets.
- Plattformunabhängigkeit: Die meisten Betriebssysteme damals (und auch noch heute) waren
auf einen bestimmten Prozessortyp zugeschnitten, und diese Abhängigkeit setzte sich in den
Programmen fort.
- Automatisierung: Zahlreiche Aufgaben lassen sich unter UNIX sehr einfach automatisieren.
1984 trennte sich AT&T von etlichen Tochterfirmen, womit auch ihr gestattet wurde, sich als gewöhnlicher
Wettbewerber auf dem Computermarkt zu betätigen. Damit wurden auch Lizenzgebühren
für UNIX drastisch angehoben und der Zugang zum Quellcode mehr und mehr eingeschränkt.
Die Folge war, dass die Kooperation zwischen den Firmen, die UNIX kommerziell vermarkteten,
immer mehr zurückging und jeder in "seiner" UNIX-Version seine eigenen Erweiterungen und Verbesserungen
einbaute, bis UNIX heillos in unterschiedliche Versionen aufgesplittert war. SunOS
von Sun, HP-UX von Hewlett-Packard; AIX von IBM, Ultrix von Digital, Sinix von Siemens,
auch Mircosoft versuchte sich auf dem UNIX-Markt mit Xenix. Ein großer Vorteil, die leichte
Portierbarkeit der UNIX-Programme, drohte mit dieser Zersplitterung zu verschwinden und viele
Stimmen prophezeiten auch ein mittelfristiges Ende von UNIX.
Um dieser Entwicklung entgegenzuwirken, wurden von verschiedenen Seiten Standards für UNIX
spezifiziert. AT&T versuchte 1984, nach der Wandlung zu einem gewöhnlichen Wettbewerber,
einen Standard zu schaffen: System V (V entspricht römisch 5, also "System Five" gesprochen).
1985 brachte AT&T die "System V Interface Definition" heraus. Dieses Dokument stellte ein
Standard für die UNIX-Schnittstellen dar. Zusätzlich enthielt es auch eine Menge Werkzeuge, die
ein System auf die Konformität mit dem Standard V überprüfte. Diese von AT&T im Jahre 1983
freigegebene Version "UNIX System V" war zu dieser Zeit die dominierende Version. Sie stellte den
Versuch seitens AT&T dar, die Hersteller auf einen Standard zu einen. Wegen des Widerstandes,
der unter anderem dadurch entstand, dass man sich nicht von einer einzigen Firma abhängig machen
wollte, entstanden im Laufe der Zeit andere Standards, so z.B. POSIX (Portable Operating
System based on UNIX). Weil AT&T alle Rechte an dem Namen UNIX hatte, wurde vom Institute
of Electrical and Electronic Engineers (IEEE) dieser Name für diesen Standard gewählt. Ein anderes
Beispiel hierfür ist X/Open: Das X/Open Konsortium ist ein Zusammenschluss verschiedener
Computerhersteller, die einen De-Facto-Standard schaffen wollten. 1988 wurde der X/Open Portability
Guide veröffentlicht. All diesen Standardisierungsversuchen blieb der Durchbruch verwehrt.
Erfolg hatte dagegen das GNU-Projekt, welches am Anfang der 80er Jahre am MIT begonnen wurde.
Sein Ziel war es, von Grund auf ein neues, UNIX-ähnliches Betriebssystem zu schreiben, das frei
verfügbar sein sollte. Bis Ende der 90er Jahre entstand eine beachtliche und leistungsstarke Sammlung
an UNIX-Werkzeugen. Auch wenn das System bislang nicht vollständig ist, konnten sich die
GNU-Werkzeuge dennoch auf vielen UNIX-Varianten etablieren. So wurden die GNU-Werkzeuge
ein systemübergreifender Quasi-Standard. Die Entwicklungsmethode des GNU-Projektes hatte erreicht,
woran die proprietären Standardisierungsversuche bislang gescheitert waren.
Auch von akademischer Seite wurde der immer zugeknöpfteren Haltung der UNIX-Vertreiber begegnet.
Wie bereits zu Anfang beschrieben, wurde der Quellcode von UNIX durch AT&T gegen
nominelle Gebühren den Universitäten zur Verfügung gestellt. Dieser Code wurde vielerorts in
Tutorials als Beispiel für die Arbeitsweise eines Betriebssystems verwendet. Nachdem AT&T jedoch
den Quellcode unter Verschluss brachte, fiel diese Möglichkeit weg. Andrew S. Tanenbaum,
Informatik-Professor an der Freien Universität Amsterdam, entschloss sich daher, für seine Studenten
eine eigene Version von UNIX zu schreiben, die nichts mit dem urheberrechtlich geschützten
Code von AT&T zu tun hatte. Nach zwei Jahren harter Arbeit brachte er sein System unter
dem Namen Minix heraus. Es war weniger für die praktische Arbeit, sondern in erster Linie als
Lehrobjekt gedacht. Dennoch wurde es von vielen Studenten auch praktisch auf dem heimischen
PC eingesetzt, da es im Gegensatz zu den kommerziellen UNIX - Varianten für einen moderaten
Preis zu haben war. Allerdings stieß Minix in diesem Einsatzgebiet sehr schnell an seine Grenzen.
Viele seiner Anwender machten Tanenbaum Vorschläge und schickten Patches für Erweiterungen
und Verbesserungen. Tanenbaum allerdings war damit sehr zurückhaltend. Da er Minix in erster
Linie als Tutorial sah, kam es ihm mehr auf eine knappe und klare Struktur als auf eine möglichst
umfassende Funktionalität an. Ein Minix-Anwender mit Namen Linus Torvalds gab sich damit
nicht zufrieden. Das GNU-System war bis auf den Kernel vollständig, aber das Release des GNUKernels
mit Namen HURD schien noch auf sich warten zu lassen. Um die zeitliche Lücke bis dahin
zu füllen, begann er selbst einen Kernel zu schreiben, der sehr rasch unter dem Namen Linux
Verbreitung fand und eine große Entwickler- und Benutzergemeinde zusammenbrachte. Da die
meisten Entwickler auf UNIX-Varianten arbeiteten, auf denen die GNU-Werkzeuge liefen, lag es
nahe, den Linux-Kernel so einzurichten, dass er zusammen mit den GNU-Werkzeugen verwendet
werden konnte: GNU/Linux.
Zur gleichen Zeit löste sich BSD aus seiner ursprünglichen Abhängigkeit von AT&T: Eine Gruppe
von BSD-Entwicklern ersetzte alle Anweisungen im Quellcode, die noch AT&T beigesteuert
waren, durch neue und erstritt in einem langwierigen Gerichtsverfahren für BSD die Freiheit. Daraus
gingen die Projekte FreeBSD, NetBSD und OpenBSD hervor, die auch eine beträchtliche
Verbreitung gefunden haben und manchmal als "Linux-Vettern" bezeichnet werden.
Wie die Geschichte zeigt, gibt es nicht das eine Betriebssystem UNIX. Vielmehr handelt es sich
um eine "Familie" von Betriebssystemen.
Linux in Jahreszahlen
Seither hat sich Linux zu einem bedeutenden UNIX entwickelt; Kommerzielle UNIX-Anbieter haben
Marktanteile an Linux verloren und mussten neue Strategien entwickeln. Nicht selten mündeteten
diese überlegungen in offener Unterstützung für Linux, dessen weitere Verbreitung ohnehin nicht
mehr zu stoppen war.
Im Folgenden nun ein Abriss wichtiger Jahreszahlen in der Erfolgsgeschichte von Linux:
- 01.01.1991: Der 21-jährige finnische Student Linus Benedict Torvalds beginnt, aufbauend auf
dem Minix Betriebssystem, ein unixartiges Betriebssystem für AT-386-Computer zu schreiben.
- 01.02.1992: Linus Torvalds verteilt die Version 0.12 seines Kernels per anonymous FTP im
Internet, was zu einem sprunghaften Anstieg der Zahl interessierter Benutzer führt. Da
diese Zahl so groß wird, dass die nötige Kommunikation nicht mehr per Email zu bewältigen
ist, wird in den Usenet News die Gruppe alt.os.linux ins Leben gerufen. Dies hat zur Folge,
dass eine explosionsartige Weiterentwicklung des Systems im ganzen Internet entsteht und
von Linus Torvalds fortan koordiniert wird.
- 01.03.1993: Bereits über 100 Programmierer arbeiten am Linux-Code mit. Durch Anpassung des
Linux-Kernels an die GNU-Umgebung der Free Software Foundation (FSF) im Jahre 1993
wachsen Möglichkeiten von Linux erneut stark an, da man nun auf eine große Sammlung an
vorhandener freier Software und Tools zurückgreifen kann, die unter Linux laufen.
- 01.04.1994: Mit der Linux-Version 1.0 wird der Betriebssystem-Kernel netzwerkfähig und die
Anzahl der Linuxnutzer steigt auf 100.000 an. Ein wichtiger Schritt, der ebenfalls im Jahre
1994 geschieht, ist auch die Anpassung einer grafischen Benutzerschnittstelle (GUI) auf
Linux. Diese wird von einer weiteren "Non-Profit-Gruppe" dem XFree86-Projekt, beigesteuert.
Linus Torvalds stellt auch den Quelltext des Linux-Kernels offiziell unter die GNU General
Public License (mehr dazu im folgenden Abschnitt 2.1.2). Somit ist die freie Existenz von
Linux gesichert.
- 01.05.1995: Linux wird auf die Plattformen Digital (DEC) und Sun Sparc portiert. Damit
kann sich das neue Betriebssystem nun mit vollem Schwung auf den vielen Plattformen
ausbreiten.
- 01.06.1996: Mit der neuen Version 2.0 des Linux-Kernels können nun mehrere Prozesse gleichzeitig
angesteuert werden. Linux verliert langsam seinen Bastlerstatus und wird zu einer ernst
zu nehmenden Alternative für Firmen.
- 01.07.1997: Nun erscheinen wöchentlich neue, aktualisierte Versionen des Linux-Kernels. Verschiedene
namenhafte Firmen beginnen ihre Software auf Linux portieren: Netscape seinen
Webbrowser, Applixware seine Office-Anwendung und die Software AG ihre Datenbank Adabas
D. Damit gibt es immer mehr kommerzielle Software-Pakete für Linux.
- 01.08.1998: Das Desktop-Projekt KDE wird gestartet. Es arbeiten etwa 750 Programmierer am
dieser heute am weitesten verbreiteten Desktopumgebung. Viele namenhafte Hardware- und
Softwarehersteller kündigen die Portierung ihrer Produkte auf Linux an. Darunter
finden sich Firmen wie IBM und Compaq (fusionierte im Jahr 2002 mit Hewlett Packard),
die Linux als Betriebssysteme auf ihren Computern unterstützen. Informix (übernommen
durch IBM im Jahr 2001) und Oracle entwicklen ihre Datenbanken fortan auch unter Linux.
Netscape gibt die Quellen seines Webbrowsers frei und lässt die zukünftige Entwicklung
durch das Mozilla-Projekt vorantreiben.
- 01.09.1999: Die Kernelversion 2.2 erscheint. Sie verfügt über einen verbesserten SMP-Support
und einen überarbeiteten Netzwerkcode. Ein neues Desktop-Projekt mit dem Namen GNOME
wird begonnen. IBM kündigt die Portierung von Lotus Domino Notes an und propagiert
seine Linux-Strategie.
- 01.10.2000: KDE 2.0 erscheint. IBM kündigt für 2001 Investitionen in Linux in der Höhe von
einer Milliarde US-Dollar an. Sun veröffentlicht den Quellcode von StarOffice unter der LGPL
(Lesser GPL) und legt damit den Grundstein für OpenOffice.
- 01.11.2001: Die Kernelversion 2.4 erscheint. Der Kernel unterstützt bis zu 64 Gbyte Arbeitsspeicher
und 64Bit-Dateisysteme. Ebenso werden die USB-Schnittstelle und das
Journaling Filesystem (JFS) unterstützt. Linux ist portiert auf den IBM Großrechner iSeries
(ehemals AS/400).
- 01.12.2002: Das OpenOffice-Projekt bringt OpenOffice in der Version 1.0 auf den Markt. Es ist
ein komplettes Office-Paket mit Textverarbeitung, Tabellenkalkulation, Präsentationsmodul
und läuft nicht nur unter Linux. Der Open Source Browser Mozilla wird nach vier Jahren in
der Version 1.0 veröffentlicht. Auch bei den Desktops wird die nächste Runde eingeläutet:
KDE 3.0 erscheint im Frühling, GNOME 2.0 zur Jahresmitte.
- 13.01.2003: Linus Torvalds wechselt von seinem bisherigen Arbeitgeber Transmeta in das Open
Source Development Lab (OSDL). Dort wird er in Zukunft auch beruflich seine Zeit der Arbeit
am Linux-Kernel widmen. Linux findet zusehends Verbreitung auf Embedded Systemen.
Der Münchener Stadtrat hat sich am 28.5. auf Grund einer Studie für die Umstellung
seiner 14.000 Computer von Microsoft Windows auf Linux entschieden. KDE Desktop
3.1 erscheint. OpenOffice wird in der Version 1.1 veröffentlicht, welches etliche Erweiterungen
gegenüber den Vorgängerversionen bietet. Samba erscheint in der Version 3.0, welche
gerade im Einsatzbereich als Domain-Controller viele Erweiterungen und Verbesserungen erfahren
hat. Auch eine Integration in das von Windows 2000 eingeführte "Active Directory"
ist nun möglich. GNOME Desktop 2.4 erscheint. Die Entwicklerserie 2.5 des Linux-Kernels
wird geschlossen und in die Serie 2.6.0-test übergeführt. Am 17. Dezember wird Version
2.6.0 des Linux-Kernels freigegeben.
- Ende 2004: Kernel-Version 2.6.10
2.1.2. GPL & Co. Ist Linux frei?
Linux ist "frei" - aber was bedeutet das eigentlich? Oft wird frei mit kostenlos verwechselt. Es
stimmt zwar, das Linux auch kostenlos verfügbar ist (zumindest über das Internet); der Begriff
"frei" bezieht sich aber auch und vor allem auf die Verfügbarkeit des gesamten Quellcodes (Open
Source). Damit sind gewisse Komplikationen verbunden: Was passiert, wenn eine Firma den Linux-
Code verwendet, in einigen Punkten erweitert und das System anschließend verkauft? Auch das ist
erlaubt, allerdings mit einer Einschränkung; Der Programmcode des neuen Systems muss abermals
frei verfügbar sein. Diese Regelung stellt sicher, dass Erweiterungen am System allen Anwendern
zugute kommen. Ziel der Entwickler von GNU und Linux war es also, ein System zu schaffen,
dessen Quellen frei verfügbar sind und es auch bleiben. Um einen Missbrauch auszuschließen, ist
Software, die im Sinne von GNU entwickelt wurde und wird, durch die GNU General Public License
(GPL) geschützt. Hinter der GPL steht die Free Software Foundation (FSF). Diese Organisation
wurde gegründet, um qualitativ hochwertige Software frei verfügbar zu machen.
GNU General Public License (GPL)
Die Kernaussage der GPL besteht darin, dass zwar jeder den Code verändern und sogar die resultierenden
Programme verkaufen darf, dass aber gleichzeitig der Anwender beziehungsweise Käufer
das Recht auf den vollständigen Code hat und diesen ebenfalls verändern und wieder kostenlos
weitergeben darf. Jedes GNU-Programm muss zusammen mit der vollständigen GPL weitergegeben
werden. Durch die GPL geschützte Software ist also nicht mit Public-Domain-Software
zu verwechseln, die vollkommen ungeschützt ist. Die GPL schließt damit aus, dass jemand ein
GPL-Programm weiterentwickeln und verkaufen kann, ohne die Veränderungen öffentlich verfügbar
zu machen. Jede Weiterentwicklung ist somit ein Gewinn für alle Anwender. Die deutsche
übersetzung finden Sie hier.
GNU Libary General Public License (LGPL)
Neben der GPL existiert noch die Variante LGPL (Libary GPL). Der wesentliche Unterschied zur
GPL besteht darin, dass eine derart geschützte Bibliothek auch von kommerziellen Produkten genutzt
werden darf, deren Code nicht frei verfügbar ist. Ohne die LGPL könnten GPL-Bibliotheken
nur wieder für GPL-Programme genutzt werden, was in vielen Fällen eine unerwünschte Einschränkung
für kommerzielle Programmierer wäre. Die LGPL wurde durch ihren Nachfolger, der GNU
Lesser General Public License, zu Beginn des Jahres 1999 abgelöst.
Andere Lizenzmodelle im Linux-Umfeld
Durchaus nicht alle Teile einer Linux-Distribution unterliegen den gleichen Copyright-Bedingungen!
Während der Kernel und viele Tools der GPL unterliegen, gelten für manche Komponenten und
Programme andere rechtliche Bedingungen. Im folgenden sind beispielhaft vier Fälle angeführt:
- Beispielsweise gilt für das X Window System eine eigene Lizenz, da dieses ursprünglich vom
MIT entwickelt wurde. Die jetzige Lizenz ist von einer früheren Lizenz des MIT abgeleitet.
- Für manche Netzwerk-Tools gilt die BSD-Lizenz. Dabei handelt es sich um das Lizenzmodell,
welches für die bereits erwähnten Betriebssysteme OpenBSD, NetBSD und FreeBSD
verwendet wird. Dieses Modell ist insofern liberaler als die GPL, als die kommerzielle Nutzung
ohne die Freigabe des Codes zulässig ist. Die Lizenz ist daher vor allem für kommerzielle
Programmierer interessant, die Produkte entwickeln möchten, deren Code sie nicht veröffentlichen
wollen.
- Für einige Programme gelten Doppellizenzen. Beispielsweise können Sie den Datenbank-
Server MySQL für OpenSource-Projekte beziehungsweise für die innerbetriebliche Anwendung
gemäß der GPL kostenlos einsetzen. Wenn Sie hingegen ein kommerzielles Produkt auf
der Basis von MySQL entwickeln und mit MySQL verkaufen möchten (ohne Ihren Quellcode
zur Verfügung zu stellen), kommt die kommerzielle Lizenz zum Einsatz. Das bedeutet, dass
die Weitergabe von MySQL in diesen Fall kostenpflichtig wird.
- Andere Programme sind dediziert kommerziell, obwohl auch in solchen Fällen die kostenlose
Nutzung meist zulässig ist. Ein bekanntes Beispiel ist der Adobe Acrobat Reader zum
Lesen von Dokumenten im PDF Format: Zwar ist das Programm unter Linux kostenlos
erhältlich (und darf auch in Firmen kostenlos eingesetzt werden), aber der Quellcode zu
diesem Programm ist nicht erhältlich.
Manche Distributionen kennzeichnen die Produkte, bei denen die Nutzung oder Weiterentwicklung
eventuell lizenzrechtliche Probleme verursachen könnte. So befinden sich bei SuSE Linux alle derartigen
Programm-Pakete in der Serie pay oder werden nicht mitgeliefer (z.B. Grafikkartentreiber
von NVidia). Bei Debian Linux werden solche Pakete gleich gar nicht mitgeliefert oder sie befinden
sich im Verzeichnis "non-free".
Im Allgemeinen können Sie davon ausgehen dass Sie alle Programme, die Sie mit einer Linux-
Distribution erhalten haben, auch kostenlos nutzen dürfen. Es ist aber nicht immer so, dass Sie
davon abgeleitete eigene Produkte ohne weiteres weiterverkaufen dürfen. Wenn Sie Software-
Entwickler sind, müssen Sie sich in die bisweilen sehr verwirrende Problematik der unterschiedlichen
Software-Lizenzen einarbeiten.
2.1.3. Distributionen
Als Linux-Distribution wird eine Einheit bezeichnet, die aus dem eigentlichen Betriebssystem (Kernel
und systemnahe Software) und seinen Zusatzprogrammen besteht. Eine Distribution ermöglicht
eine einigermaßen rasche und bequeme Installation unter Linux. Alle Distributionen werden in der
Form von CD-ROMs oder auch DVD-ROMs verkauft. Die meisten Distributionen sind darüber
hinaus auch im Internet verfügbar. Wegen der riesigen Datenmengen (Hunderte von Megabytes
bis hin zu mehreren Gigabytes) ist das Kopieren einer Distribution via Internet oder eine direkte
Installation über das Netz aber zumeist nur in Universitäten bzw. Firmen mit Breitbandanbindung
an das Internet möglich. Allerdings ist es auch möglich Zuhause per DSL in einer relativ kurzen
Zeit (mehrere Stunden) eine Distribution übers Internet zu installieren.
Die Distributionen unterscheiden sich vor allem durch folgende Punkte voneinander:
- Umfang, Aktualität: Die Anzahl, Auswahl und Aktualität der mitgelieferten Programme
und Bibliotheken unterscheidet sich von Distribution zu Distribution. Manche Distributionen
überbieten sich in der Anzahl der mitgelieferten CD-ROMs. Um den Anwendern bei der
Installation bzw. späteren Updates ein ständiges CD-Wechseln zu ersparen, werden manche
Distributionen auch als DVD-ROMs ausgeliefert. Vorreiter war hier die Distribution der Firma
SuSE.
- Installations-und Konfigurationswerkzeuge: Die mitgelieferten Programe zur Installation,
Konfiguration und Wartung des Systems helfen dabei, Hunderte von Konfigurationsdateien
des Systems auf einfache Weise richtig einzustellen. Funktionierende Installations- und
Konfigurationstools stellen eine enorme Zeitersparnis dar.
- Konfiguration des Desktops (z.B. KDE, Gnome): Manche Distributionen lassen dem
Anwender die Wahl zwischen KDE, Gnome und eventuell auch verschiedenen Window Managern.
Andere legen den Anwender auf eines dieser Systeme fest. Es gibt aber auch Unterschiede
in der Detailkonfiguration von KDE oder Gnome - zum Beispiel inwieweit deren
Startmenüs mit den tatsächlich installierten Programmen übereinstimmen.
- Hardware-Erkennung und -Konfiguration: Linux kommt zwar nicht mit allen PC-Hardware-
Komponenten zurecht, aber doch mit ziemlich vielen. Angenehm ist natürlich, wenn die Distribution
die vorhandene Hardware automatisch erkennt und damit umgehen kann. Gelingt
dies nicht, ist oft eine mühsame Konfiguration in Handarbeit erforderlich, die Linux-Einsteiger
meist überfordert.
- Landesspezifische Anpassung: Manche Distributionen vermitteln noch immer den Eindruck,
Englisch sei die einzige Sprache dieserWelt. Andere Distributionen sind speziell für den
Einsatz in nicht englischsprachigen Ländern vorbereitet. Das betrifft nicht nur das Tastatur-
Layout, sondern auch die verfügbaren Zeichensätze, die Sprache der Online- Dokumentation
u.v.m. Ist man jedoch der englischen Sprache nicht abgeneigt, so gibt es Anpassungen für
US- und UK-Englisch, ja sogar für Irisch-Englisch (Debian). In der Zwischenzeit gibt es sogar
übersetzungen für kleinere Sprachräume, z.B. KDE auf Plattdeutsch.
- Paketsystem: Die Verwaltung von Linux-Anwendungsprogrammen erfolgt durch Pakete
(Packages) als modulare Einheiten. Das Paketsystem hat ein Einfluss darauf, wie einfach
die Nachinstallation zusätzlicher Programme beziehungsweise die Aktualisierung (Update)
vorhandener Programme ist. Zur Zeit sind drei zueinander mehr oder weniger inkompatible
Paketsysteme üblich:
- RPM (verwendet von Caldera, Mandrake, Red Hat, SuSE und TurboLinux)
- DEB (verwendet von Debian, Corel, Progeny und Storm Linux)
- TGZ (verwendet von Slackware)
Es gibt jedoch die Möglichkeit, z.B. RPM in Debian-Pakete umzuwandeln und vice-versa.
- Wartung, Beseitigung von Sicherheitslücken: Linux ist ein sich dynamisch veränderndes
System. Oft gibt es nach der Fertigstellung einer Distribution noch wichtige Neuerungen; immer
wieder werden Sicherheitsmängel in diversen mitgelieferten Programmen entdeckt. Eine
gute Distribution zeichnet sich dadurch aus, dass sie (insbesondere bei Sicherheitsproblemen)
sehr rasch Updates im Internet zur Verfügung stellt. Manche Distributionen versuchen
mittlerweile einerseits den Vorgang von Sicherheits-Updates weitestgehend zu automatisieren,
und daraus andererseits einen kostenpflichtige Zusatzleistung zu machen. Wie weit sich
diese Idee durchsetzen wird, ist momentan noch nicht abzusehen.
- Live System: Einige wenige Distributionen ermöglichen den Betrieb von Linux direkt von
einer CD-ROM oder DVD. Das ist zwar langsam und inflexibel, ermöglicht aber ein vergleichsweise
einfaches Ausprobieren von Linux. Zudem stellt eine Live CD-ROM eine ideale
Möglichkeit dar, ein auf der Festplatte vorhandenes aber defektes Linux-System zu reparieren.
- Microsoft Windows-Installation: Einige Distributionen ermöglichen die Installation von
Linux in ein Verzeichnis bzw. in eine große Datei einer MS Windows-9x/SE/ME-Partition.
Das ist langsam und hat zahllose Nachteile, erspart aber die Partitionierung der Fesplatte.
Wie beim Live System ist auch diese Variante vor allem zum Ausprobieren interessant.
- Hardware-Unterstützung: Alle Distributionen für Intel-kompatible Prozessoren laufen auf
jedem Standard-PC. Wenn Sie spezielle Hardware verwenden (Multiprozessor-Mainboards,
RAID-Festplattensysteme, Notebooks etc.), hängt es aber stark von der Distribution ab, wie
gut derartige Hardware von den Installations- und Konfigurations-Tools unterstützt wird.
Hier sind große, weit verbreitete Distributionen meist im Vorteil. Von SuSE und RedHat gibt
es Beispielsweise spezielle Enterprise-Distributionen welche auch Großrechner-Architekturen
wie z.B. die "zSeries" von IBM unterstützen.
- Ziel-Plattform (CPU-Architektur): Viele Distributionen sind nur für Intel-kompatible Prozessoren
erhältlich. Es gibt aber auch Distributionen für andere Rechnerplattformen, zum
Beispiel DEC Alpha, SUN Sparc und Macintosh PowerPC.
- Dokumentation: Manche Distributionen werden mit Handbüchern (in elektronischer oder
gedruckter Form) ausgeliefert.
- Support & Service: Bei manchen Distributionen bekommen Sie kostenlos Hilfe bei der
Installation (via Email oder Telefon). Das Ausmaß des gebotenen Supports schlägt sich
meist sehr direkt auf den Preis nieder.
- Mitgelieferte kommerzielle Software: Bei manchen Distributionen werden nicht nur die
frei verfügbaren Linux-Pakete mitgeliefert, sondern auch lizenzpflichtige Programme. Auch
dies erhöht den Preis der Distributionen.
- Lizenz: Die meisten Distributionen sind uneigenschränkt kostenlos über das Internet erhältlich.
Bei einigen Distributionen gibt es hier aber Einschränkungen. Beispielsweise stellen nicht
alle Distributionen so genannte ISO-Images zur Verfügung, mit denen sich Anwender leicht
selbst die Installations CD-ROMs brennen können (d.h. ohne die Distribution zu kaufen).
Manche Distributionen erlauben zwar die kostenlose Weitergabe, nicht aber den Weiterverkauf
von CD-ROMs. (Da Linux und die meisten mitgelieferten Programme an sich frei erhältlich sind
beschränkt sich das Verkaufsverbot meist auf die Installations- oder Konfigurationssoftware; bei
SuSE galt dies beispielweise bis vor kurzem für das Programm YaST. Dieses steht alledings seit
der Version SuSE Linux 9.1 unter der GPL und darf somit auch frei kopiert werden.) Weitergabeeinschränkungen
gibt es auch, wenn mit der Distribution kommerzielle Software mitgeliefert wird.
Am restriktivsten war Caldera: Dessen Linux-Distributionen dürfen nur auf einen einzigen Rechner
installiert werden, was in der Linux-Welt vollkommen unüblich ist.
Die Behauptung Linux sei frei, steht scheinbar im krassen Widerspruch zu dem Preis, die für die
meisten besseren Distributionen verlangt wird (oft 50 Euro und mehr). Der Grund ist aber leicht
verständlich: Obwohl Linux und die meisten Anwendungsprogramme tatsächlich kostenlos über
das Internet bezogen werden können, erfordert die Zusammenstellung einer aktuellen Distribution
eine Menge Zeit und "Know-how". Ein gutes Installationsprogramm allein (das auch programmiert
und gewartet werden muss) ist den Preis einer Distribution oft schon wert! Es kann von allem
Linux- bzw. Unix-Neulingen eine Menge Zeit bei der Installation und Konfiguration ersparen. Auch
die Produktion von einer oder mehreren CD-ROMs, oft begleitet von einem Handbuch, kostet
Geld. Nicht zu vernachlässigen ist schließlich das Angebot eines persönlichen Supports bei Installationsproblemen.
Teuer wird eine Distribution auch dann, wenn kommerzielle Software mitgeliefert
wird.
Die "richtige" Linux-Distribution
Die Frage, welche Distribution die beste sei, welche wem zu empfehlen sei, artet leicht in einen
Glaubenskrieg aus. Wer sich einmal für eine Distribution entschieden und sich an deren Eigenheiten
gewöhnt hat, steigt nicht so schnell auf eine andere Distribution um. Ein Wechsel der Distribution
ist nur durch eine Neuinstallation möglich, bereitet also einige Mühe. Kriterien für die Auswahl
einer Distribution sind die Aktualität ihrer Komponenten (achten Sie auf die Versionsnummer
des Kernels und wichtiger Programme, etwa des C-Compilers), die Qualität der Installations- und
Konfigurationstools, der angebotene Support, mitgelieferte Handbücher etc. Dass die meisten
Linux-Distributionen wirklich uneingeschränkt frei verfügbar sind, erkennen Sie unter anderem
daran, dass es von vielen kommerziellen Distributionen "Billig" CD-ROMs mit den sogenannten
FTP-Versionen, GPL-Versionen oder Download- Versionen gibt. Der Name dieser Version ergibt
sich daraus, dass es sich um jene Dateien handelt, die kostenlos im Internet (meist auf einem
FTP-Server) verfügbar sind. Diesen Versionen fehlen die kommerziellen Komponenten, die von
der jeweiligen Distribution lizensiert wurden. Außerdem gibt es keine Dokumentation und keinen
Support. Lassen Sie sich aber vom günstigen Preis der FTP-Versionen nicht blenden: Gerade für
Einsteiger ist ein gutes Handbuch oder die Möglichkeit, während der ersten Monate eine Support-
Abteilung kontaktieren zu können, sehr wertvoll.
Der folgende überblick über die wichtigsten verfügbaren Distributionen (in alphabetischer Reihenfolge
und ohne Anspruch auf Vollständigkeit!) soll eine erste Orientierungshilfe geben:
- Caldera: Caldera Open Linux war eine der ersten Linux-Distributionen, die sich explizit
an kommerzielle Anwender wandte (Mittlerweile erheben alle Mitbewerber ebenfalls diesen
Anspruch.). Die Distributionwurde jedoch im August 2002 in die Produktpalette vom UNIXAnbieter
SCO eingegliedert und besteht seitdem in dieser Form nicht mehr.
- Corel: Corel Linux wurde im Jahr 1999 sehr medienwirksam eingeführt und sollte eine sehr
einfache und benutzerfreundliche Distribution werden. Obwohl dies ansatzweise sehr gut
gelang, blieb Corel Linux der Erfolg verwehrt. Im September 2001 verkaufte Corel seine
Linux-Abteilung an die Firma Xandros.
- Debian: Während sich hinter den meisten hier geannten Distributionen Firmen stehen, die
mit ihren Distributionen Geld verdienen möchten, stellt Debian in dieser Beziehung eine Ausnahme
dar: Die Distribution wird von engagierten Linux-Anwendern zusammengestellt, die
größten Wert auf Stabilität und die Einhaltung der Spielregeln "freier" Software legen. Manche
Ideen dieser Distribution - etwa die professionelle Paketverwaltung - waren für andere
Distributionen richtungsweisend und sind diesen in manchen Aspekten immer noch voraus.
(Versuchen Sie einmal, ihre Distribution zu aktualisieren, ohne den Rechner neu zu starten!)
Debian ist im Laufe der letzten Jahre zwar zunehmend benutzerfreundlicher geworden, für
Linux-Einsteiger ist diese Distribution aber wegen des schwer zu bedienbaren Paketverwaltungsprogramms
dselect nach wie vor ungeeignet (vgl. Progeny Debian).
- Mandrake: Mandrake Linux ist gewissermaßen eine benutzerfreundliche Variante zu Red Hat
Linux. Die Distribution ist von Red Hat abgeleitet und insofern weitgehend kompatibel, als
die meisten Software-Pakete untereinander austauschbar sind. Mandrake Linux zeichnet sich
aber durch eigenständige und einfacher zu bedienende Installations- und Konfigurationsprogramme
aus. Ein weiterer Vorteil besteht darin, dass mit Mandrake Linux in der Regel mehr
und aktuellere Softwarepakete mitgeliefert werden (manchmal auf Kosten der Stabilität).
Hinter Mandrake steht die Firma MandrakeSoft mit Firmensitz in Frankreich.
- Progeny Debian: Wie der Name bereits andeutet, ist diese Distribution von Debian abgeleitet.
Progeny Debian ist eine sehr neue Distribution (die erste Version wurde im Jahr 2001
ausgeliefert) und unterscheidet sich von Debian vor allem durch komfortablere Installationsund
Konfigurationswerkzeuge. Da aber sämtliche Zusatzfunktionen von Progeny Debian in
die Entwicklung von Debian Linux nach und nach eingeflossen sind, wurde die Entwicklung
einer seperaten Distribution eingestellt.
- Red Hat: Die Red Hat Distribution ist einer der am besten gewarteten Linux-Distributionen,
die zurzeit erhältlich sind. Die Distribution dominiert insbesondere den amerikanischen Markt.
Die Paketverwaltung auf Basis des RPM-Formats (eine Eigenentwicklung von Red Hat)
wurde mittlerweile von vielen anderen Distributionen übernommen. Neben der Red Hat Orginaldistribution
gibt es eine ganze Reihe davon abgeleiteter Distributionen, die sich durch
diverse Verbesserungen oder Sprachanpassungen (z.B. eine Version in spanischer Sprache)
auszeichnen. Red Hat Linux ist insbesondere für die Verwendung als Server sehr beliebt, weil
Sicherheits-Updates oft rascher verfügbar sind als bei anderen Distrbutionen. Auch legt die
Firma Red Hat bei der Auswahl von Paketen und Versionen für eine Distribution ein größeres
Augenmerk auf Stabilität (anstatt einfach die aktuellste verfügbare Versionen mitzuliefern).
Im Vergleich zu anderen Distributionen sind die Konfigurationshilfen allerdings unübersichtlich
organisiert und zum Teil schwierig zu bedienen. Red Hat ist also nicht unbedingt die
optimale Distribution für Linux-Einsteiger.
Die Bezeichnung Red Hat Linux beschreibt allerdings nur noch die kommerziell vertriebene
Distribution. Die Fedora Community ist für das Fedora Core Linux zuständig, welches von
der letzten frei verfügbaren Red Hat Distribution abgeleitet wurde.
- Slackware: Die Slackware war eine der ersten verfügbaren Linux-Distributionen. Bezüglich
Wartung und Installationskomfort kann sie allerdings nicht mehr mit den anderen hier genannten
Distributionen mithalten. Viele Slackware-Anwender bevorzugen ihre Distribution
aber gerade deswegen, weil das Augenmerk eher auf Kontinuität und Stabilität denn auf
schöne Installations- und Konfigurations-Tools gelegt wird.
- Storm Linux: Diese Distribution ist von Debian abgeleitet, bietet aber attraktivere Installationsund
Konfigurationstools als diese. Jedoch ist seit April 2001 die Homepage vom Distributor
Stormix Technologies inaktiv. Die Distribution ist offiziell nicht mehr verfügbar und es wird
auch kein Support mehr gegeben.
- SuSE: SuSE-Linux ist dank der hohen Aktualität, der riesigen Anzahl vorkonfigurierter Pakete,
den umfassenden Handbüchern und der hervorragenden Wartung die in Europa am
weitesten verbreitete Distribution. SuSE-Linux ist in zahlreichen Sprachen (Deutsch, Englisch
etc.) erhältlich. SuSE ist eine sehr benutzerfreundliche Distribution. Das Administrationstool
YaST hilft nicht nur bei vielen Konfigurationsproblemen, es löst auch ähnlich wie
Debian automatisch eventuelle Abhängigkeitskonflikte zwischen Software-Paketen, die bei
der Paketinstallation auftreten können. YaST steht seit der Version SuSE Linux 9.1 unter der
GPL; dies war jedoch lange Zeit nicht so. Aus diesem Grund durfte man SuSE-Linux zwar im
Freundeskreis frei kopieren, es war aber nicht zulässig, SuSE CD-ROMs billig zu verkaufen
(wie dies bei vielen anderen Distributionen üblich ist). Zu den größten Nachteilen von SuSE
zählte das Konfigurationskonzept (vgl. Datei /etc/rc.config), das inkompatibel zu allen anderen
Distributionen war und vor allem bei der Administration stört. Man findet es nur bei
den älteren Linux-Distributionen, da dieses Konzept in den neueren Versionen ersetzt wurde
(Die Abkürzung SuSE steht übrigens für Gesellschaft für Software und Systementwicklung).
- Turbo Linux: Diese von der Firma Pacific HighTech (PHT) zusammengestellte Distribution
wurde speziell für die Verwendung in Asiatischen Raum optimiert und ist dort (nach eigenen
Angaben) Marktführer. Die Distribution ist aber auch in einer englischen Version erhältlich.
- Minimal-Distributionen: Neben diesen großen Distributionen gibt es im Internet einige Zusammenstellungen
von Miniatursystemen (bis hin zum kompletten Linux-System auf einer
einzigen Diskette!). Diese Distributionen basieren zumeist auf alten (und daher kleineren)
Kernel-Versionen. Sie sind vor allem für Spezialaufgaben konzipiert, etwa für Wartungsarbeiten
oder um ein Linux-System ohne eigentliche Installation verwenden zu können (direkt von
einer oder mehreren Disketten oder einer CD-ROM/ DVD-ROM). Das ist praktisch, wenn
Sie Linux vorrübergehend auf einen fremden Rechner nutzen möchten, dessen Festplatte
Sie nicht neu partitionieren wollen oder dürfen. Zwei gute Beispiele für Linux-Distributionen
diesen Types ist das Linux Router Project (Auf einer einzigen Diskette sind alle Programme
vorhanden, um einen alten 486er PC in einen Router für ein kleines Netzwerk umzuwandeln.)
und KNOPPIX (Eine recht vollwertige Distribution, die sich von einer CD-ROM oder
DVD-ROM starten läßt und das vorhandene System meist vollständig erkennt!).
Einen ziemlich guten überblick über die momentan verfügbaren Linux-Distributionen (egal, ob
kommerziellen oder anderen Ursprungs) finden Sie im Internet auf den folgenden Seiten:
Viele Distributionen, kein Standard !?!
Wie aus dem vorangegangenen Abschnitten ersichtlich ist, gibt es nicht "das Linux". Man hat die
Auswahl aus einer Vielzahl von Distributionen, die zwar gewisse Gemeinsamkeiten haben (z.B. Kernel,
Paketverwaltung etc.), aber viele Unterschiede (Konfigurationstools, Softwareumfang etc.).
Diese Tatsache kann sich als besonders lästig herausstellen bei der Installation von Programmen,
die nicht mit der Distribution mitgeliefert werden (und insbesondere bei kommerziellen Programmen).
Eine fehlende oder veraltete Programmbibliothek ist oft die Ursache dafür, dass ein Programm
nicht läuft. Die Problembehebung ist insbesondere für Linux-Einsteiger fast unmöglich.
Manche Firmen gehen inzwischen so weit, dass ihre Softwareprodukte nur eine ganz bestimmte
Distribution unterstützen. Natürlich entscheidet sich jede Firma für eine andere Distribution.
Um diese Probleme zu beseitigen, wurde vor einigen Jahren das Linux Standard Base Project
(LSB) ins Leben gerufen. Im Juli 2001 haben die Projektteilnehmer die LSB-Spezifikation 1.0
veröffentlicht. Es handelt sich dabei um Vorgaben, die alle LSB konformen Distributionen einhalten
müssen. Dabei ist die Spezifikation in einem gemeinsamen Teil und architekturbezogenen
Teil zu unterscheiden. Die aktuelle Spezifikation besteht in der Version 1.3. Die zurzeit aktuelle
Version SuSE 9.1 Professional ist zum Beispiel für 32bit Intel-kompatible Architekturen mit dem
1.3 Standard konform. Ein anderer Schritt in Richtung Standardisierung von den unterschiedlichen
Distributionen ist UNITEDLINUX. Dabei handelt es sich um eine Distribution, die von den Firmen
Connectiva S.A., SCO Group, SuSE Linux AG und Turbolinux Inc. unterstützt wird. Im November
2002 wurde die Version 1.0 herausgegeben. Ziel ist es, einen weltweiten Linux-Standard zu
schaffen.
Abschließend kann man sagen, dass zwar jede Distribution ihre Eigenheiten hat, aber dennoch
die Gemeinsamkeiten überwiegen. Schließlich nutzen alle Distributionen zum Beispiel die zuvor
genannnten GNU-Werkzeuge.
|