Linux-Distribution
|
Eine Linux-Distribution ist eine Zusammenstellung von hauptsächlich freier Software zum Zwecke der Weitergabe oder des kommerziellen Vertriebs. Die Distributionen enthalten neben dem eigentlichen Linux-Kernel noch weitere Software, umso besser den jeweiligen Ansprüchen an das Gesamtsystem gerecht zu werden.
Dieser Artikel gibt einen Überblick über den Aufbau von Distributionen, welche Arten es gibt und wie diese sich unterscheiden. Ein allgemeiner Überblick über die Thematik Linux selbst findet sich im Hauptartikel Linux.
Geschichte
Hauptartikel: Geschichte von Linux
Nach der Veröffentlichung des Linux-Quelltextes durch Linus Torvalds wurden verschiedene Programme für Linux angepasst, um das System zu erweitern. Da Linux von Anfang an nur als Kern eines Systems geplant war und bis heute als solcher weiterentwickelt wird, bestand von Beginn an der Bedarf an zusätzlichen Programmen für Linux, um z. B. eine grafische Oberfläche zu erhalten oder auch nur um das System einfacher zu konfigurieren und zu steuern.
Aus diesem Grund kamen die ersten Linux-Distributionen schon kurz nach der Veröffentlichung von Linux auf, als Anwender, die nicht zum direkten Entwicklerkreis gehörten, Linux zu nutzen begannen. Die ersten Distributionen hatten dabei das Ziel, das System z. B. mit der Software des GNU-Projekts zu einem arbeitsfähigen Betriebssystem zu entwickeln. Zu ihnen gehörten MCC Interim Linux, welches auf den FTP-Servern der University of Manchester im Februar 1992 veröffentlicht wurde, TAMU, das von einigen Programmierern der Texas A&M University etwa zum gleichen Zeitpunkt erstellt wurde und Softlanding Linux System (SLS).
Da keine dieser Distributionen richtig gepflegt wurde, veröffentlichte Patrick Volkerding am 16. Juli 1993 die Distribution Slackware. Sie ist die älteste heute noch aktive Linux-Distribution.
Durch die Linux-Distributionen erweiterten sich die Einsatzmöglichkeiten von Linux drastisch. Es entwickelte sich zunehmend zu einer interessanten Alternative von proprietären Systemen wie UNIX, Microsoft Windows und Mac OS. Vorlage:Zeitleiste Linux-Distribution Die ersten Nutzer kannten UNIX von der Arbeit oder aus der Schule und hatten dementsprechende Vorkenntnisse. Sie schätzten Linux wegen der Stabilität und der Tatsache, dass sie kein Geld bezahlen mussten, wegen des Umfangs der beiliegenden Software und wegen der Möglichkeit, das System wegen der offenen Quellen eigenen Bedürfnissen anzupassen.
Waren die ersten Distributionen nur der Bequemlichkeit halber geschaffen worden, sind sie doch heute die übliche Art für Nutzer wie auch Entwickler, ein Linux-System zu installieren. Dabei werden die Linux-Distributionen heutzutage sowohl von Entwickler-Gruppen, als auch von Firmen oder gemeinnützigen Projekten entwickelt und betrieben.
Heutige Distributionen
Viele, vor allen Dingen kleine Distributionen, werden von kleinen Projekten oder auch Einzelpersonen gewartet und entwickelt, die sich meist über das Internet koordinieren und austauschen. Größere Distributionen haben in den meisten Fällen eine Stiftung gegründet, um die Arbeit besser und gezielter verwalten und geschlossener auftreten zu können. Diese Stiftungen werden teilweise von Firmen unterstützt oder sind direkt von ihnen gegründet worden, um die Gemeinschaft der Entwickler besser an der Entwicklung der firmeneigenen Distribution zu beteiligen.
Der Einsatzbereich der Distribution kann dabei sehr unterschiedlich sein, und reicht vom Desktop-PC über Server-Installationen und Distributionen mit speziellen Netzwerkfähigkeiten bis hin zu Live-CDs oder Distributionen für Mobiltelefone, die jeweils einen ganz unterschiedlichen Funktionsumfang haben können.

Die Zusammensetzung einer üblichen Linux-Distribution für den Desktop-PC umfasst zum Beispiel:
- den Linux-Kernel, der die Basis für grundlegende Systemfunktionen bietet
- die GNU-Software, welche das grundlegende Basissystem bereitstellt, mit Kommandozeilenwerkzeugen um etwa Dateien zu be- und verarbeiten sowie weitere elementare Verwaltungswerkzeuge
- Kommandozeileninterpreter (englisch Shell genannt), aus deren Kommandozeile Anwendungen gestartet werden können
- ein X-Window-System, auf dem grafische Benutzeroberflächen laufen können
- einen Desktop oder einen Windowmanager als eine grafische Benutzeroberfläche, die eine komfortable Bedienung des Rechners im X-Window-System erlaubt
- verschiedene Anwendungsprogramme wie Office-Pakete, Editoren, E-Mailprogramme, Browser, Server-Software, Bildbetrachter und viele mehr
- Konfigurationsprogramme, um das System eigenen Bedürfnissen anzupassen, Software zu installieren und Hardware einzurichten
- Entwickler-Werkzeuge wie Compiler oder Interpreter für Programmiersprachen, die das Entwickeln von weiterer Software ermöglichen und das Arbeiten mit anderen Entwicklern und anderen Entwicklerwerkzeugen vereinfachen
- eine Vielzahl an Softwareprogrammen und -bibliotheken, die ein normaler Nutzer nicht sieht, die aber Dienste und Funktionalitäten bereitstellen, die von anderen Programmen genutzt werden
- ein Boot-Manager zum Starten des installierten Systems und eventueller anderer installierter Systeme
Dabei werden die meisten Distributionen in Form fertiger CD-Images im Internet bereit gestellt. Einige Distributoren verpacken ihr Angebot aber auch mit gedruckten Handbüchern oder Supportverträgen, und bieten diese kombinierten Angebote zum Verkauf an.

Live-Systeme
Eine Besonderheit bilden dabei die Live-Systeme, die von CD, DVD und anderen Medien gebootet werden. Diese werden von extra darauf ausgerichteten Distributionen oder von bestehenden Distributionen als Zusatz zu den Installationsdatenträgern erstellt.
Live-Systeme können als vollständiges Linux gestartet werden, ohne auf die Festplatte zu schreiben und ohne die bestehende Konfiguration eines Rechners zu verändern. So kann die entsprechende Linux-Distribution gefahrlos auf einem Computer getestet werden. Livesysteme eignen sich auch hervorragend zur Datenrettung und Systemanalyse, da sie von der Konfiguration des bereits bestehenden Systems unabhängig sind, und so auch von möglichen Infektionen durch Würmer und Viren nicht betroffen sind.
Auswahl einer passenden Linux-Distribution
Sieht man von möglichen Spezialisierungen ab, dann unterscheiden sich Linux-Distributionen primär in den folgenden Punkten:
- Installationsverhalten – welche Tools zur Installation, z. B. Partionierungstools, sind inbegriffen
- Welche Software-Pakete werden beigelegt und verwendet (z. B. welche grafische Benutzeroberflächen werden beigelegt und wie gut werden sie von der Distribution vorkonfiguriert)?
- Welche Verwaltungswerkzeuge werden eingesetzt, um das System leichter verwaltbar zu machen?
- Wie sieht es mit vorhandener Literatur (z. B. in Form von Handbüchern) aus?
- Gibt es offiziellen Support seitens des Distributors, in welchem Umfang und zu welchen Konditionen (Preisen)?
- Wie sieht die Distributionspolitik aus, zu der auch gehört, ob kommerzielle Software beigelegt/verwendet wird?
- Wird die Distribution in einem Projekt von Freiwilligen, von einer Firma oder gar von beiden gemeinsam entwickelt?
- Wird die Distribution offiziell von kommerziellen Software-Anbietern unterstützt? Gibt es z. B. die bevorzugte Firmensoftware für diese Distribution?
- Auch kann die Größe, Hilfsbereitschaft und Kenntnisse der Nutzergemeinschaft von Distribution zu Distribution erheblich variieren.
Darüber hinaus spielt für viele Nutzer auch ein Angebot der bereits von Drittanbietern an die Distribution angepassten und für diese fertig verpackten Software eine Rolle, da dies sehr unterschiedlich sein kann.
Auf eine Aufzählung oder Gegenüberstellungen der wichtigsten bzw. populärsten Distributionen wird hier aufgrund der nur schwer zu ziehenden Grenzen und der Übersichtlichkeit verzichtet. Diese Informationen finden sich stattdessen auf den Seiten Liste von Linux-Distributionen und Vergleich von Linux-Distributionen.
Kompatibilität zwischen den Distributionen
Schon kurz nach dem Aufkommen der ersten Distributionen kamen verschiedene Ideen auf, wie die Installation von weiterer Software vereinfacht werden könnte. Dabei war das Ziel meist, die wichtigste Software bereits in Form fertiger, kompilierter Pakete bereit zu stellen und zusätzlich einen Mechanismus zur Verfügung zu stellen, der Abhängigkeiten weitere für die Funktion des zu installierenden Pakets unabdingbare Pakete auflösen kann.
Aus diesem Bedarf heraus sind verschiedene Paketmanagement-Systeme entstanden, die mit jeweils eigenen Paketformaten wie zum Beispiel RPM oder deb arbeiten. Dadurch hat nahezu jede Linux-Distribution eine eigene Softwareverwaltung mit eigenen Binärpaketen, die zu den Binärpaketen der anderen Distributionen teilweise inkompatibel sind.
Da aber nicht jedes Software-Projekt und nicht jeder Software-Entwickler die Kenntnisse und die Ressourcen hat, seine Software für jede Linux-Distribution einzeln bereitzustellen, wird diese meist nur im Quelltext veröffentlicht. Dieser ist aber nicht so einfach zu installieren, so dass normale Computer-Nutzer selten Software neben der von der Distribution mitgelieferten installieren.
Dies ist zugleich auch einer der größten Kritikpunkte vieler Nutzer an Linux, bzw. an den Linux-Distributionen. Außerdem können so viele kommerzielle Softwareanbieter ihre Software nur unter bestimmten Distributionen anbieten, was dazu führt, dass nur bestimmte Distributionen im Firmenumfeld eine Chance haben.
Um zu verhindern, dass sich die einzelnen Distributionen mit fortschreitender Entwicklung noch weiter von einander entfernen, wurde die Free Standards Group ins Leben gerufen, die das Ziel hat, die binäre Interoperabilität zwischen den verschiedenen Distributionen zu ermöglichen. Unter ihren verabschiedeten Standards gibt es die Linux Standard Base, welche übereinstimmende Binärschnittstellen („ABI“ genannt, für Application Binary Interface), einige Details zum inneren Aufbau und ein Paketsystem (hier RPM), das für die Installation von Drittanbieter-Software unterstützt werden muss definiert. Des weiteren gibt es mit dem Filesystem Hierarchy Standard auch einen Dateisystem-Standard, der eine gemeinsame Benennung einiger Datei- und Verzeichnisnamen und eine übereinstimmende Struktur der Basisverzeichnisse ermöglicht und auch von der Linux Standard Base vorausgesetzt wird.
Zur Zeit werden diese Standards von den meisten Distributoren aber nur halbherzig umgesetzt, selbst wenn die Distributoren Mitglied bei der Stiftung sind. Die Situation verbessert sich langsam, da sich die kommerziellen Distributionen mehr an die LSB Standards annähern. Des weiteren gibt es zwar auch andere Lösungsansätze wie Autopackage, diese haben aber derzeit faktisch keine Relevanz.
Linux-Distributionen und Windows-Installationen
Die meisten Linux-Distributionen können neben bestehenden Installationen anderer Betriebssysteme installiert werden. Beim Start gibt dann der Boot-Manager eine Auswahl, aus der der Nutzer das zu startende Betriebssystem wählt.
Es gibt aber auch Linux-Distributionen, die innerhalb einer Windows-Sitzung oder innerhalb einer Windows-Partition verwendet werden können. Dabei werden sie unter Windows wie gewöhnliche Software installiert und entweder über einen Boot-Loader in Windows gebootet oder wie ein herkömmliches Windows-Programm gestartet. Solche Distributionen sind in der Regel für Probe- und Testzwecke gedacht oder werden als technische Machbarkeitsstudie entwickelt. Da bei diesen Distributionen Windows und Linux gleichzeitig laufen, sind diese Distributionen vergleichsweise langsam. Ein weiterer Nachteil ist die meist recht geringe Paket- bzw. Programmauswahl.
Literatur
- Kofler, Michael: Linux, München: Addison-Wesley, 2004, ISBN 3-827-32158-1
- Grassmuck, Volker: Freie Software zwischen Privat- und Gemeineigentum, Bundeszentrale für politische Bildung, Bonn; 2002, ISBN 3-893-31432-6, online: Bundeszentrale für politische Bildung
Weblinks
- Distributionsübersicht mit Ranglisten auf DistroWatch.com
- Linux Distribution Chooser – ein Hilfswerkzeug für die Wahl zwischen verschiedenen verbreiteten Linux-Distributionen (englisch)
- Linkkatalog zum Thema Linux-Distributionen bei curlie.org (ehemals DMOZ)
- Bundestux.de Informationen zur Linuxnutzung in der öffentlichen Verwaltung