Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
1 Einleitung
TEIL I: Einstieg in Linux
2 Die Installation
3 Erste Schritte
4 Linux als Workstation für Einsteiger
TEIL II: Grundlagen
5 Kernel
6 Grundlagen aus Anwendersicht
TEIL III: Die Shell
7 Die Shell
8 Reguläre Ausdrücke
9 Konsolentools
10 Die Editoren
11 Shellskriptprogrammierung mit der bash
12 Die C-Shell
TEIL IV: System- & Netzwerkadministration
13 Benutzerverwaltung
14 Grundlegende Verwaltungsaufgaben
15 Netzwerkgrundlagen
16 Anwendersoftware für das Netzwerk
17 Netzwerkdienste
18 Mailserver unter Linux
19 LAMP & Co.
20 DNS-Server
21 Secure Shell
TEIL V: Die grafische Oberfläche
22 Die grafische Oberfläche
23 Window-Manager und Desktops
24 X11-Programme
25 Multimedia und Spiele
TEIL VI: Systeminterna
26 Prozesse und IPC
27 Bootstrap und Shutdown
28 Dateisysteme
29 Virtualisierung und Emulatoren
TEIL VII: Programmierung und Sicherheit
30 Softwareentwicklung
31 Crashkurs in C und Perl
32 Einführung in Computersicherheit
33 Netzwerksicherheit überwachen
TEIL VIII: Anhang
A Lösungen zu den einzelnen Aufgaben
B Kommandoreferenz
C X11-InputDevices
D MBR
E Buch-DVDs
F Glossar
G Literatur
Stichwort
Ihre Meinung?

Spacer
Linux von Johannes Plötner, Steffen Wendzel
Das umfassende Handbuch
Buch: Linux

Linux
Rheinwerk Computing
1282 S., 5., aktualisierte Auflage 2012, geb., mit 2 DVDs
49,90 Euro, ISBN 978-3-8362-1822-1
Pfeil 1 Einleitung
Pfeil 1.1 Warum Linux?
Pfeil 1.1.1 Man muss kein Informatiker sein ...
Pfeil 1.1.2 ... aber es hilft
Pfeil 1.2 Grundbegriffe: Kernel, Distributionen, Derivate
Pfeil 1.2.1 Bekannte Distributionen und Derivate
Pfeil 1.2.2 Arten von Distributionen
Pfeil 1.3 Die Entstehungsgeschichte von Linux
Pfeil 1.3.1 Unix
Pfeil 1.3.2 BSD-Geschichte
Pfeil 1.3.3 Stallman und das GNU-Projekt
Pfeil 1.3.4 Die Geschichte von Linux
Pfeil 1.3.5 Geschichte der Distributionen
Pfeil 1.4 Linux und BSD: Unterschiede und Gemeinsamkeiten
Pfeil 1.4.1 Freie Software
Pfeil 1.4.2 Ports und Packages
Pfeil 1.4.3 Versionierung
Pfeil 1.4.4 Maskottchen
Pfeil 1.5 Informationsquellen
Pfeil 1.6 Zusammenfassung
Pfeil 1.7 Aufgaben

Rheinwerk Computing - Zum Seitenanfang

1.4 Linux und BSD: Unterschiede und GemeinsamkeitenZur nächsten Überschrift

Aus der teilweise gemeinsamen Geschichte ergeben sich für Linux und BSD viele Gemeinsamkeiten, und entsprechend sind Unterschiede oft erst bei genauerer Betrachtung erkennbar. Eine wichtige Gemeinsamkeit besteht darin, dass es sich bei Linux wie bei den bestehenden BSD-Derivaten um quelloffene Software (engl. open source) handelt.


Rheinwerk Computing - Zum Seitenanfang

1.4.1 Freie SoftwareZur nächsten ÜberschriftZur vorigen Überschrift

GNU/Linux

Dass Linux selbst eigentlich nur den Kernel umfasst, wurde bereits angesprochen. Die für den Betrieb nötige Systemsoftware kommt in erster Linie vom bereits erwähnten GNU-Projekt (http://www.gnu.org). Diese Initiative gibt es seit 1984 und damit viel länger als Linux selbst. Das Ziel war von Anfang an, ein völlig freies Unix zu entwickeln, und mit Linux hatte das Projekt seinen ersten freien Kernel. Somit ist auch die Bezeichnung GNU/Linux für das Betriebssystem als Ganzes gebräuchlich.

Was aber ist eigentlich freie Software? Wenn man ein Programm schreibt, so besitzt man an dessen Quelltext ein Urheberrecht wie ein Buchautor. Die resultierende Software kann verkauft werden, indem man dem Käufer durch eine Lizenz gewisse Nutzungsrechte einräumt. Alternativ kann man aber auch festlegen, dass das eigene Programm von anderen kostenlos benutzt werden kann. Gibt man sogar den eigenen Quellcode frei, so spricht man von offener Software.

Im Linux- und BSD-Umfeld gibt es nun unterschiedliche Lizenzen, die mit teilweise besonderen Bestimmungen ihr jeweils ganz eigenes Verständnis von »Freiheit« verdeutlichen.

Die GPL

Copyleft

Linux steht wie alle GNU-Projekte unter der GNU Public License, der GPL. Laut dieser Lizenz muss der Quellcode eines Programms frei zugänglich sein. Das bedeutet jedoch nicht, dass GPL-Software nicht verkauft werden darf. [Fn. Mehr dazu finden Sie unter www.gnu.org/philosophy/selling.de.html.]

Selbst bei kommerziellen Distributionen zahlt man allerdings oft nicht für die Software selbst, sondern für die Zusammenstellung der Software, das Brennen der CDs/DVDs, die eventuell vorhandenen Handbücher und den Installationssupport.

Die GPL stellt damit Programme unter das sogenannte Copyleft: Verändert man ein entsprechendes Softwareprojekt, so muss das veränderte Ergebnis wieder frei sein. Man darf zwar Geld für ein GPL-basiertes Produkt nehmen, muss aber den Sourcecode samt den eigenen Änderungen weiterhin frei zugänglich halten.

Somit bleibt jede einmal unter die GPL gestellte Software immer frei – es sei denn, alle jemals an einem Projekt beteiligten Entwickler stimmen einer Lizenzänderung zu. Bei großen Softwareprojekten wie dem Linux-Kernel mit vielen Tausend Beteiligten ist das undenkbar.

Die BSD-Lizenz

Im Unterschied zu der im Linux-Umfeld verbreiteten GPL verzichtet die von BSD-Systemen verwendete Lizenz auf ein Copyleft. Man darf zwar den ursprünglichen Copyright-Vermerk nicht entfernen, doch darf entsprechend lizenzierte Software durchaus Ausgangspunkt für proprietäre, kommerzielle Software sein. Die BSD-Lizenz ist also weniger streng als die GPL, aber aufgrund der möglichen freien Verteilbarkeit und Veränderbarkeit immer noch freie Software.

Weitere freie Projekte

Mehr Lizenzen

Natürlich gibt es freie Software nicht nur vom GNU-Projekt oder von den BSD-Entwicklern. Jeder kann für eigene Softwareprojekte die GPL oder die BSD-Lizenz verwenden. Natürlich kann man – wie beispielsweise das Apache-Projekt – auch eigene Open-Source-Lizenzen mit besonderen Bestimmungen entwickeln. Jedoch haben bekannte Lizenzen den Vorteil, dass sie in der Community auch anerkannt sind und einen guten Ruf genießen oder – wie die GPL – sogar bereits von einem deutschen Gericht in ihrer Wirksamkeit bestätigt wurden.


Rheinwerk Computing - Zum Seitenanfang

1.4.2 Ports und PackagesZur nächsten ÜberschriftZur vorigen Überschrift

Verteilung der Software

Einen weiteren Unterschied zwischen Linux und der BSD-Welt ist die Art, wie Software jeweils verpackt und vertrieben wird. Man unterscheidet hierbei zwischen den unter Linux-Distributionen verbreiteten Paketen und den BSD-typischen Ports.

Port

Ein Software-Port enthält Anweisungen, um eine Software aus dem Quellcode zu übersetzen und automatisch zu installieren. Ein Software-Package hingegen ist ein kompilierter Port. Das bedeutet, dass die Software bereits in binärer Form vorliegt und zum Installieren nur noch entpackt und an die richtige Stelle im System kopiert werden muss.

Ein Software-Port kann in der Regel bei der Kompilierung besser an das System angepasst werden, diese benötigt jedoch zusätzliche Zeit. Ein Software-Package benötigt die Kompilierungszeit nicht, ist aber unter Umständen weniger optimal an den Prozessor angepasst. Zu gegebener Zeit werden wir ausführlich auf die BSD-Ports und unterschiedliche Systeme zum Paketmanagement unter Linux eingehen.


Rheinwerk Computing - Zum Seitenanfang

1.4.3 VersionierungZur nächsten ÜberschriftZur vorigen Überschrift

Linux-Versionen

Vor allem mit der Versionierung unter Linux gibt es einige Verständnisprobleme. Der Linux-Kernel erschien bis vor einigen Jahren in zwei Versionskategorien: einer Entwickler- und einer Stable-Version. Die Entwicklerversionen hatten ungerade Zahlen als zweite Versionsnummern (2.1, 2.5), die Stable-Versionen hingegen gerade Zahlen (2.0, 2.2, 2.4, 2.6). [Fn. Sollten Sie einmal jemanden treffen, der Ihnen von irgendwelchen komischen Versionsnummern à la Linux 14.0 erzählen will, so bringt der Betreffende offensichtlich die Nummerierungen der Distributionen und die des Kernels durcheinander.] Eine dritte Zahl nummerierte die unterschiedlichen kleineren Releases, die beispielsweise mit neuen Features ausgestattet waren.

Mittlerweile werden die Entwicklerversionen nicht mehr mit ungeraden Versionsnummern bezeichnet. Vor jeder neuen Version werden stattdessen einzelne Vorveröffentlichungen durchgeführt. Diese Vorveröffentlichungen (engl. Release Candidates) können anschließend durch die Community heruntergeladen und getestet werden. Werden Fehler gefunden, fließen deren Korrekturen in die nächste stabile Version ein.

Seit Kernel 2.6.11 kann zur schnellen Bereinigung schwerer Fehler auch eine vierte Versionsnummer geführt werden. Eine Version 2.6.21.1 umfasst gegenüber der Version 2.6.21 mindestens eine Verbesserung (in der Regel aber mehrere). Werden erneut Fehler gefunden, so wird eine weitere Version (2.6.21.2) herausgegeben. Werden auch in dieser Fehler gefunden, so setzt sich die Nummerierung auf diese Weise fort.

Eine Entwicklerversion enthält immer die neuesten Spielereien der Entwickler. Wenn Sie diese nicht wirklich brauchen oder nicht wissen, was Ihnen eine neue Version überhaupt bringt, lassen Sie besser die Finger davon und bleiben Sie bei der Stable-Version.

Der Grund dafür ist, dass die Stable-Versionen ganz einfach ausgereifter sind und mit großer Sicherheit stabil laufen. Entwicklerversionen können zwar durchaus auch sehr stabil laufen, müssen es jedoch nicht.

Aber keine Angst, aktuelle Distributionen beinhalten natürlich immer die Stable-Version. Sofern Sie nach diesem Buch immer noch Lust auf Linux haben und sich für die Innereien des Kernels interessieren, empfehlen wir Ihnen »Understanding the Linux Kernel, 2nd Edition« [BovetMacro02A] und das »Linux Kernel-Handbuch« [Love05A].


Rheinwerk Computing - Zum Seitenanfang

1.4.4 MaskottchenZur nächsten ÜberschriftZur vorigen Überschrift

Das Wichtigste dürfen wir natürlich auch nicht unterschlagen: die Maskottchen. Diese Identifikationsmerkmale werden Ihnen regelmäßig begegnen – nicht nur in der Netzwelt, sondern auch in diesem Buch, sobald es um Eigenarten der entsprechenden Systeme geht.

Das Linux-Maskottchen

Da Linus Torvalds ein Liebhaber von Pinguinen ist, wollte er einen als Logo für Linux haben. Ein Pinguin wurde dann von Larry Ewing mit dem gimp-Grafikprogramm erstellt. Die Figur gefiel Torvalds und fertig war Tux. Übrigens wurde das Linux-Logo für die Kernel der Version 2.6.29.x in einen Tasmanischen Teufel abgeändert. Die temporäre Logo-Änderung sollte darauf hinweisen, dass die Beutelteufel vom Aussterben bedroht sind.

Abbildung

Abbildung 1.1 Tux

Tux steht übrigens für Torvalds Unix. Und immer, wenn wir auf besondere Eigenheiten von Linux eingehen, die sich nicht (oder nur sehr bedingt) auf BSD oder Unix übertragen lassen, werden Sie am Seitenrand einen kleinen Pinguin bemerken.

Die BSD-Maskottchen

Anfang November 2005 erhielt auch FreeBSD ein neues Logo. Das neue NetBSD- Logo ist auch noch nicht alt. BSD allgemein (und bis vor Kurzem auch FreeBSD) hat eigentlich den BSD-Daemon mit Namen »Beastie« als Maskottchen – wie schon bei BSDi. Wenn wir von (Free)BSD sprechen, sehen Sie in diesem Buch das Icon mit dem Teufelchen am Seitenrand.

Sprechen wir hingegen speziell von OpenBSD, erscheint dieses Icon am Seitenrand. Es stellt »Puffy«, den Blowfish, dar. Blowfish ist zum einen ein von Bruce Schneier entwickelter kryptografischer Algorithmus und zum anderen eben ein kugeliger Fisch mit Stacheln. Die Stacheln des Blowfishs stehen für Sicherheit, das Primärziel des Open-BSD-Projekts.

Weitere Symbole in diesem Buch

[»]Dieses Icon steht für einen Hinweis.

[+]Dieses Logo kennzeichnet dagegen einen Tipp für die Praxis.

[zB]Mit diesem Icon werden Beispiele gekennzeichnet – schließlich kann man die meisten Sachverhalte am besten anhand eines kleinen Beispiels nachvollziehen.

Eine Glaubensfrage

Nach dem Linux-Hype folgte über einige Jahre ein BSD-Hype. In den letzten Jahren haben sich beide Trends stabilisiert. Zwischenzeitlich waren jedoch viele Benutzer (hauptsächlich testweise) von Linux zu BSD gewechselt. Warum das so war, ist nur sehr schwierig zu beantworten, da die Unterschiede im Leistungsumfang von Linux und BSD nur in wenigen Fällen von Bedeutung scheinen.

Generell lässt sich sagen, dass sich normalerweise weder ein Wechsel von Linux zu BSD noch ein Wechsel von BSD zu Linux als sonderlich lohnend erweisen wird, sofern man ihn nicht gerade wegen eines bestimmten Features vollzieht.

Linux uncool?

Wenn man die Communities etwas genauer betrachtet, fällt einem vielleicht auf, dass es zahlreiche Diskussionen darüber gibt, welches System das bessere sei und ob man nun eher der GPLv2 oder der BSD-Lizenz seine Opfergaben darbringen sollte. Wenn man ehrlich ist, sind viele solcher Diskussionen substanzlos und erscheinen als eine Art Religionskrieg. Wenn man noch etwas genauer hinschaut, scheint es auch oft um das Statussymbol Betriebssystem zu gehen und darum, sich vom Nicht-mehr-Hacker-OS Linux abzuheben, das nun so viele (Ex-)Windows-Anhänger verwenden.

Glücklicherweise gibt es aber auch einen Vorzug dieser Situation: Man lernt voneinander. Linux-Kernel, Linux-Distributionen und BSD-Derivate übernehmen bereits seit vielen Jahren Features voneinander beziehungsweise von anderen Systemen aus dem Unix-Umfeld – man denke nur einmal an die SVR4-IPC. Auch erwähnenswert ist das SVR4-Runlevel-System, das Linux übernommen hat, oder Kommandos wie pkill und pgrep, die BSD und Linux von Solaris übernahmen. Auf all diese Querverbindungen möchten wir in diesem Buch mit unserem Bezug auf BSD eingehen.



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.

>> Zum Feedback-Formular
<< zurück
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Katalog: Linux Handbuch






 Linux Handbuch


Zum Katalog: Linux Server






 Linux Server


Zum Katalog: Raspberry Pi






 Raspberry Pi


Zum Katalog: Ubuntu 14.04 LTS






 Ubuntu 14.04 LTS


Zum Katalog: Roboter bauen mit Arduino






 Roboter bauen
 mit Arduino


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Rheinwerk Verlag GmbH 2012
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de