Coolface
New member
Auf Wunsch und auch dem eigenen Verlangen nachkommend, habe ich mir jetzt einmal vorgenommen, eine kleine Linux Dokureihe auf PCMasters zu veröffentlichen. Diese soll Informationen und Howtos bereitstellen, um den Einstieg und das Arbeiten mit Linux zu vereinfachen, sowie das Verständnis zu verbessern. Mit ein wenig Glück lässt sich PCMasters in der Softwaresektion ja zu einer kleinen Linux Community erweitern. Wenn jemand gerne ein Howto oder Sonstiges zu einem bestimmten Thema in dieser Reihe wiederfinden möchte, der kann sich gern an mich wenden.
Okay, bevor Ich nun mit dem ersten Beitrag beginne, möchte Ich noch eine kleine Einleitung bringen, die vor Allem an Leute gerichtet ist, die sich eventuell dafür interessieren, aber nicht so ein fundiertes Grundwissen besitzen, um den Beitrag von vornherein ohne Probleme zu verstehen. Schließlich soll er ja auch für die Leute interessant sein, die sich schon ganz gut mit den Computer Interna auskennen und ihr Wissen gerne erweitern möchten.
Begriffserklärung
Unix: Unix ist ein Betriebssystem, welches seit ca. Anfang der 70er Jahre des letzten Jahrhunderts existiert. Man könnte behaupten, dass sich alle modernen Betriebssysteme auf Unix begründen, auch das erste DOS von Microsoft. Man muss jedoch dazu sagen, dass sich Microsoft schnell von Unix als Unterbau getrennt hat. Alle anderen bekannten Betriebssysteme stammen heute von Unix ab. Mac OSX, *BSD, Solaris und GNU/Linux sind ausschließlich Unix-Derivate.
*nix: *nix soll nur ein Platzhalter für Unix und Linux gemeinsam darstellen.
Kernel: Der Kernel ist das Herz eines jeden Betriebssystems. Er ist praktisch das erste Programm, welches während dem Hochfahren gestartet wird. Der Kernel lädt zum Start alle Treiber und kümmert sich während des Betriebs um die Kommunikation zwischen Software und Hardware.
Stürzt der Kernel ab, geht auf einem Computer nichts mehr. Ich schätze alle haben das schon einmal erlebt, unter Windows der berüchtigte Bluescreen, unter Linux als Kernel Panic bekannt.
root: Der root ist der Systemadministrator in Linux.Er hat praktisch die Macht auf einem Rechner. Alles weitere sollte selbsterklärend sein.
Shell: Die Shell in *nix Systemen kann man grob die Eingabeaufforderung unter Windows gegenüberstellen. Dafür mögen mich einige Kenner vielleicht schief anschauen, denn im Gegensatz zur Eingabeaufforderung unter Windows, ist die Shell im Grunde der Mittelpunkt von Linux/Unix Systemen. Sie ist äußerst mächtig und man kann mit ihr alles auf dem Computer ansteuern und regeln.
Xserver, X11: Das sogenannte X Window System sorgt unter *nix Derivaten für die Darstellung und Verwendung von Fenstern. Hierbei handelt es sich jedoch noch nicht um einen Desktop. Für die Verwendung eines Desktops unter Linux oder Unix benötigt man ein weiteres Programmpaket, wie zum Beispiel KDE oder Gnome (es gibt noch viele mehr), die dann Dateimanager, Taskleiste, etc... zur Verfügung stellen.
Kompilieren, Compiler, Compilen: Ein Rechner ist in seiner „Denk“- und Arbeitsweise ziemlich begrenzt. Im Grunde versteht er nur die Zahlen 0 und 1, die Zustände An und Aus. Er rechnet und arbeitet im Binärsystem. Wir Menschen denken aber nicht wie ein Computer. Einem Entwickler würde es sehr schwer fallen, ein Programm in Binärform zu erstellen. Aus diesem Grunde wurden diverse Programmiersprachen entwickelt, die das Programmieren und Entwickeln von Applikationen vereinfachen sollen. Der Quelltext der so entsteht, um eine Applikation zu beschreiben, muss nun in eine für den Computer verständliche Sprache übersetzt werden. Diesen Vorgang nennt man kompilieren oder eingedeutscht compilen.
Das Programm, das sich um diese Übersetzung kümmert ist der so genannte Compiler.
gcc: Die GNU Compiler Collection, übersetzt Quelldateien in Binärdaten, um sie auf einem Computer ausführbar zu machen. Die bekanntesten Programmiersprachen, die der gcc übersetzt, sind C beziehungsweise C++.
glibc: Die GNU C Library ist eine libc Implementation für *nix Betriebssysteme. Was eine libc genau macht, will ich an dieser Stelle nicht weiter erläutern, es genügt jedoch zu sagen, dass jedes Betriebssystem über solch eine Bibliothek verfügt und Programme ohne sie, nicht ohne weiteres funktionieren würden.
x86_64: Der Begriff x86_64 steht für die beiden Befehlssätze amd64 für AMD Prozessoren und emt64 für Intel Prozessoren. Da diese beiden Befehlssätze faktisch identisch sind, wird der Begriff x86_64 für alle 64-Bit Prozessoren auf Intel oder AMD Basis verwendet.
Repository: Ein Repository ist im Grunde ein Programmarchiv. Die meisten Linux Distributionen verwenden verschiedene Repositories für die Verwaltung ihrer Programmpakete, deren Web Adressen zum Download der Pakete unter Umständen in den jeweiligen Pakettools angegeben werden müssen, um die Pakete verfügbar zu machen.
Einleitung
Nun gut, dann beginnen wir mal mit einer kleinen Einleitung. Zuerst will ich einige wichtige Tatsachen näher erläutern, um die Grundkenntnisse der Linux Historie und den eigentlichen Zweck des Betriebssystems erläutern. Das Wichtigste zuerst: Wenn man von Linux spricht, meint man im Allgemeinen das gesamte Betriebssystem. Das ist so aber nicht ganz richtig, denn bei Linux handelt es sich streng genommen nur um den Kernel. Die GNU Foundation liefert die wichtigsten Tools um aus dem Linux Kernel ein vollwertiges Betriebssystem zu machen. Sie besteht dabei auch auf den Namen GNU/Linux, da der Linux Kernel im Grunde der Kernel des GNU Betriebssystems ist. Die bekannstesten Programme der GNU düften hierbei der allseits bekannte gcc sein und natürlich die glibc.
Unter Linux ist die wichtigste Eingabemethode des Benutzers in der Regel nicht der Desktop, sondern die Shell. Mit ihr lässt muss das gesamte Betriebssystem bedienbar sein und ist dementsprechend sehr viel mächtiger als die Eingabeaufforderung unter Windows. Das Linux Grafiksystem basiert auf den so genannten Xserver oder X11 und ist mehr oder weniger nur ein Aufsatz für das basische Linux System mit Shell. Die häufigste Verwendung, vor Allem im Serverbereich, findet als User Interface eher die Shell, als ein Window System. Selbst bei Verwendung eines Desktops ist die Shell ein nicht wegzudenkendes Anwendertool. Nichtsdestotrotz wird Linux heutzutage immer häufiger auch im Homeanwenderbereich verwendet und die Entwicklung zu einer vereinfachten Bedienführung und einer großen Unterstützung für moderne Hardware kommt erstaunlich gut voran. Jedoch sollte man im Hinterkopf bewahren, dass Linux in der Basis ein Konsolenbetriebssystem ist im Fall, dass man sich mal wundert, warum man nun eine Konfigurationsdatei per Hand ändern muss, statt auf einem Button klicken zu können.
Wie bereits angedeutet, ist Linux äußerst modular. Auf dieser Eigenschaft basierend, bietet sich beim Zusammenstellen einer Linuxdistribution die Möglichkeit auf verschiedene Produktlösungen zurückzugreifen. Dies macht sich bei den unterschiedlichen Distributionen am stärksten durch die Paketmanagements deutlich. Anders als bei Windows liefern die Distribution eine eigene Auswahl an Programmpaketen mit, die irgendwie verwaltet werden muss. Jeder Distributor hat hierbei eine andere Vorstellung von einer sinnvollen Paketverwaltung für sein System. Dies ist auch in sofern recht sinnvoll, da die jeweiligen Distributionen meist unterschiedliche Zielgruppen ansprechen sollen, wie zum Beispiel den Homeanwender oder den Serverbetreiber. Ein Serverbetreiber hätte an dieser Stelle gern eine Distribution, dessen Pakete einen äußerst stabilen und möglichst sicheren Betrieb gewährleisten. Zusätzlich sollten Programmupdates schnell und automatisiert möglich sein. Ein Homeanwender hingegen möchte Hin und Wieder auf das neueste Feature nicht verzichten. Zudem hätte er gerne eine leichte und intuitiv zu bedienende Programmverwaltung. Und genau darauf soll dieser erste Artikel erst einmal aufbauen: Einführung der bekanntesten Linux Distributionen und ihre persönlichen Eigenschaften näher erläutern.
Distributionen
SuSE: Heimanwender und Einsteiger / Workstation / Server, SBS
Web:
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
Aktuelle Version: 10.2 (openSuSE)
Unterstützte Architekturen: x86 (i586), x86_64
SuSE bietet Distributionen für viele verschiedene Anwenderbereiche an: openSuSE für den Privatnutzer, SuSE Linux Enterprise Desktop als Workstation (SLED) und SuSE Linux Enterprise Server (SLES) für den Serverbetrieb. Für uns sollte vorerst nur die openSuSE Version sein. SuSE sticht vor Allem durch sein systemweites Konfigurationstool YaST hervor, über jenes sich praktisch alles Wichtige des Rechner einstellen lässt, zum Beispiel Paketmanagement, Treiber, Netzwerk, Sound, etc. Aufgrund eben dieses Tools ist SuSE auch relativ gut für den Linux Einsteiger geeignet. Es gibt das leicht und intuitiv zu bedienende Konfigurationstool YaST und eine gute Vorkonfiguration für den Heimanwender.
Knoppix: LiveCD/DVD
Web:
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
Aktuelle Version: 5.1.1
Unterstützte Architekturen: x86 (i486)
Bei Knoppix handelt es sich um eine auf CD/DVD basierende Linux Distribution. Ihr Ursprung ist bei Debian zu finden. Mit einer Knoppix CD kann man Linux auf seinem Rechner testen, ohne dabei bestehende Betriebssysteme zu beeinflussen, das heißt, die Festplatte wird nicht für eine Installation benötigt. Viele Distributionen bieten LiveCDs an. Knoppix sticht hier mit seiner äußerst guten Hardwareerkennung und Unterstützung hervor. Knoppix bietet alles, was man für eine angemessene Benutzung eines Betriebssystems braucht: Einen Desktop (KDE, Gnome, etc), Browser, Instant Messenger für ICQ/MSN etc, Office mit OpenOffice und vieles mehr.
Red Hat / Fedora: Workstation, Server / Heimanwender und Einsteiger
Web (Red Hat):
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
Web (Fedora):
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
Aktuelle Version (Red Hat Enterprise Linux): 4
Aktuelle Version (Fedora Core): 6
Unterstützte Architekturen: x86 (Fedora i386, RHEL i586), x86_64
Ich hab mir an dieser Stelle erlaubt Red Hat und Fedora in einem Atemzug zu nennen, da es sich bei Fedora um das freie Community Projekt der Red Hat Distribution für den Heimanwender handelt.
Das Betriebssystem Red Hat Enterprise Linux stellt hierbei das kommerzielle Pendant dar, welches ebenfalls in verschiedenen Varianten vertrieben wird: D (Desktop), WS (Workstation) und S (Server). Wie schon bei SuSE interessieren wir uns erst einmal nur für das Fedora Core Projekt.
Fedora verfügt über eine einfache und leicht zu bedienende Installationsroutine. Konfigurieren kann man sein Betriebssystem über die system-config-* Tools, welche jeweils auch noch über eine grafische Bedienoberfläche angesprochen werden können. Zu sagen ist, dass das Fedora Projekt in seinem Programmarchiv auf freie Software viel wert legt. Das bedeutet, proprietäre Treiber (mp3 und Video Codecs, sowie die grafischen Treiber von ATI und nvidia) und Codecs müssen manuell nach installiert werden, indem man ein inoffizielles Repository der Paketliste hinzufügt.
Gentoo: Erfahrener Heimanwender / Server
Web:
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
Aktuelle Version (LiveCD): 2006.1 (Spielt bei Gentoo jedoch nur bedingt eine Rolle)
Unterstützte Architekturen: x86 (i386, i586, i686), x86_64
Gentoo unterscheidet sich in einiger Hinsicht von den klassischen Distributionen. Ein erstes wichtiges Merkmal ist das Paketmanagement Portage. Wie bei Paketverwaltungen anderer Distributionen kann man hier relativ einfach Pakete aus Gentoo's Paketarchiv auf dem heimischen Rechner installieren. Jedoch ist hier die Arbeitsweise eine andere: Gewöhnlich wird ein komprimiertes, vorkompiliertes Binärpaket heruntergeladen und auf dem Rechner installiert. Portage hingegen lädt sich die komprimierten Quelldateien eines Programms herunter, lässt es vom gcc mit besonderen Einstellungen kompilieren und installiert es anschließend auf dem System. Hieraus ergibt sich der Vorteil, dass sich die Programmpakete stark für den eigenen Rechner optimieren lassen und so noch einiges mehr an Performance gewonnen werden kann. Der Nachteil ist, das Kompilieren großer Pakete nimmt wirklich sehr viel Zeit in Anspruch. Aus diesem Grund gibt es für einige große Anwendungen auch vorkompilierte Pakete, die sich über Portage installieren lassen. Aus diesem Prinzip ergibt sich, dass Gentoo an sich nicht über Versionsnummern verfügt. Man aktualisiert sein System nicht einmal komplett mit einer neuen Version, sondern gelegentlich einzelne Pakete über Portage. Versionsnummern gibt es lediglich für die von Zeit zu Zeit erscheinende Live- oder InstallCD. Das Benutzen von Gentoo ist eher für erfahrene Linuxnutzer sinnvoll, da hier eine große Eigeninitiative in Sachen Konfiguration gefordert ist. Dies bietet jedoch wiederum den Vorteil, dass sich Gentoo hochgradig an die Bedürfnisse des Anwenders anpassen lässt.
Mandriva: Heimanwender / Workstation / Server
Web:
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
Aktuelle Version: 2007
Unterstützte Architekturen: x86 (i586), x86_64
Mandriva ist der neue Name der relativ bekannten Linuxdistribution Mandrake. Wie viele andere Anbieter stellt Mandriva Linuxversionen für die unterschiedlichsten Einsatzzwecke bereit, von denen jedoch nur eine kostenlos zum Download bereitsteht. Wer gerne etwas handfestes haben möchte, der kann diese Version auch im Laden kaufen, jedoch mit einem umfassendem Handbuch dabei. Mandriva ist ebenfalls bekannt für seine Einsteigerfreundlichkeit und gute Hardwareunterstützung. Mandrivas Paketmanagement nennt sich urpmi, mit dem man vornehmlich .rpm Pakete verwaltet.
Debian: Erfahrene Homeanwender / Server
Web:
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
Aktuelle Version: 3.1 Sarge (4.0 Etch für Anfang 2007 angekündigt)
Unterstützte Architekturen: x86 (x86_64 ab Etch)
Debian gehört mit zu den bekanntesten und weit verbreitetsten Distributionen. Sein Paketmanagement ist apt und bietet das wohl umfassendste Paketarchiv aller Distributionen. Standardmäßig befinden sich in diesem Archiv ausschließlich freie Softwarepakete, proprietäre Software lässt sich jedoch durch Angabe von inoffiziellen Repositories ebenfalls nachinstallieren. Debian liefert in seiner (noch) aktuellen Version Sarge nicht die neuesten Versionen der verfügbaren Software. Bei Updates wird eher auf Minor Releases (Bugfixes) als auf Major Releases (neue Features) geachtet, so dass Debian zu einer der stabilsten Betriebssysteme zählt und sich somit hervorrand für den Einsatz auf Servern eignet. Die neue Version Etch war bereits für Ende 2006 angekündigt worden, der Release verzögerte sich jedoch etwas. Es ist aber damit zu rechnen, dass in Kürze die neue Version Etch erscheinen, und damit ein neues Programmarchiv mit wesentlich aktuelleren Softwarepaketen bereitstellen wird.
Ubuntu / Kubuntu / Xubuntu: Heimanwender und Einsteiger
Web:
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
,
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
,
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
Aktuelle Version: 6.10 Edgy Eft
Unterstützte Architekturen: x86 (i386), x86_64
Obwohl Ubuntu noch eine relativ junge Distribution ist, hat sie aufgrund ihrer leichten Installation und Konfiguration schnell an Beliebtheit gewonnen. Ubuntu basiert auf der bewährten Distribution Debian und bringt somit das Paketverwaltungstool apt mit, besitzt aber ein eigenes Programmarchiv, das auch aktuelle Software beinhaltet. Ubuntu unterteilt seine Software je nach Unterstützung in vier Bereiche ein: die main Komponenten, die den Ubuntu Lizensanforderungen entsprechen und für den Betrieb wichtig sind; die restricted Komponenten, die aber nicht unter einer freien Lizenz angeboten werden, sprich proprietäre Grafikkartentreiber, Codecs, etc, aber dennoch wichtig für den Betrieb sind; die universe Komponente umfasst ein breites Spektrum an freier Software, die unabhängig von ihrer Lizenz nicht vom Ubuntu-Team unterstützt wird. Damit hat der Benutzer immerhin die Möglichkeit, solche Programme innerhalb des Ubuntu-Paketverwaltungssystems zu installieren; und zu guter Letzt die multiverse Komponenten, die die universe Komponenten durch unfreie Softwarepakete ergänzt. Ubuntu selbst liefert standardmäßig nur den Desktop GNOME aus, es haben sich jedoch mittlerweile Abwandlungen von Ubuntu gefunden, wie zum Beispiel Kubuntu, welches äquivalent zu Ubuntu in den Versionen ist, aber statt GNOME den Desktop KDE mitliefert. Xubuntu ist ebenfalls solch ein Abkömmling und liefert den schmalen Desktop XFCE, wodurch sich diese Distribution auch für ältere Systeme gut eignet, ohne viel an Performance zu verlieren.
Slackware: Erfahrende Anwender / Server
Web:
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
Aktuelle Version: 4.0.0
Unterstützte Architekturen: x86 (i486)
Slackware ist eher für den fortgeschrittenen User gedacht, da hier auf umfangreiche grafische Konfigurationstools verzichtet, und dem Anwender die Konfiguration der entsprechenden Konfigurationsdateien per Hand überlässt. Wichtig zu sagen ist noch, dass der Paketmanager anders als bei anderen Distribution keine Abhängigkeitsauflösung vornimmt, das heißt, sollte ein Paket ein anderes benötigen um zu funktionieren, so muss der Anwender dies zuvor selbst erledigen. Bei SuSE, Fedora, Gentoo, Debian, Ubuntu, etc. ist dies nicht der Fall und erleichtert das Installieren von Software enorm.
Damn Small Linux: LiveCD / Besonders minimalistische Distribution
Web:
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
Aktuelle Version: 3.2
Unterstützte Architekturen: x86
DSM hat es sich zur Aufgabe gemacht, auf äußerst kleinen Datenträgern ein voll funktionierendes Betriebssystem mit Desktop und den nötigsten Funktionen zur Verfügung zu stellen. Als LiveCD basiert es dabei auf der bewährten Knoppix Distribution. Zusätzlich soll es auch auf sehr alter Hardware reibungslos funktionieren. Ein 486er System mit minimal 20 MB Arbeitsspeicher und 50 MB freien Festplattenspeicher sind Voraussetzung. Es bietet sich also auch an, ein DSM auf einen kleinen USB-Stick mit 64 MB zu installieren. So hat man zum Beispiel immer sein kleines Recovery OS parat.
LFS, Linux from Scratch: Linux im Eigenbau
Web:
Du hast keine Berechtigung, den Link zu sehen, bitte Anmelden oder Registrieren
Aktuelle Version: 6.2
Unterstützte Architekturen: x86 (Anleitung bezieht sich auf die x86 Architektur)
LFS ist keine Distribution im eigentlichen Sinne. Die Betreiber liefern lediglich in regelmäßigen Abständen eine aktualisierte Fassung einer äußerst umfassenden Dokumentation darüber, wie man sich sein Linux selbst zusammen schustert. Das Ganze kann man auch als Buch in deutscher Fassung erstehen. Dabei läd man sich praktisch jedes Programmpaket selbst von der jeweiligen Projektseite in Form von Quelldateien herunter, kompiliert und konfiguriert sein Linux System über eine LiveCD mit Hilfe der Anleitung komplett eigenständig. Dies ist eine hervorragende Möglichkeit für die erfahrenen User eine doch noch überraschend große Menge an Wissen zu bekommen.
Fazit
Für einen angenehmen und komfortablen Einstieg in die Linuxwelt bieten sich die Distributionen (K/X)Ubuntu, openSuSE, oder Fedora Core an. Sie alle verfügen über ein großes Repertoire an Software und leicht zu bedienende Konfigurationstools. Dem erfahrenen oder fortgeschrittenen User kann man Debian oder Gentoo ans Herz legen. Vor Allem für den Server Einsatz bietet sich Debian an. 64-Bit Distributionen verhalten sich mittlerweile sehr stabil und auch lediglich als 32-Bit kompilierte Software läuft unter einem 64-Bit Betriebssystem verhältnismäßig problemlos. Ärger machen hier jedoch Plugins die nur in Form von 32-Bit Software zur Verfügung stehen. Da diese mit 64-Bit Software nicht funktionieren, muss das jeweilige Programm, für das sie gedacht sind auch in 32-Bit vorliegen. Ein Beispiel hierfür wäre ein Browser, vorzugsweise Firefox und die mittlerweile unerlässlichen Plugins FlashPlayer und Acrobat Reader aus dem Hause Adobe. Diese laufen ausschließlich mit einem 32-Bit Browser. Wer lieber auf Nummer sicher gehen will um unvorhergesehenen Komplikationen aus dem Weg zu gehen, dem sei die Nutzung einer 32-Bit Distribution geraten, zumindest bis Adobe endlich ihre 64-Bit Pendants der Plugins zur Verfügung stellt.
In der nächsten Ausgabe meiner Linuxreihe will ich dann genauer auf die Nutzung der Linuxshell eingehen und die wichtigsten Befehle, sowie das Rechte- und Nutzersystem näher erläutern.