Der Wechsel vom 2.2er Kern zur neuen Version 2.4 wird den meisten GNU/Linux Anwendern nicht auffallen. Für diejenigen, die an der Programmierung von GNU/Linux beteiligt sind oder fortgeschrittene Kenntnisse des Betriebssystems besitzen, stellt es eine kleine Revolution dar. Daher konnten wir auch nicht der Versuchung widerstehen, ein neues Kapitel in das Referenz einzufügen. Wir werden Sie hier mit den wichtigsten Verbesserungen sowie einigen Tricks, die im Zusammenhang mit spezifischen Problemen stehen, vertraut machen.
Linux-Mandrake 8.0 ist die erste LM Version, die auf dem Kern 2.4.x basiert.
Super! Klasse! Spitze! Darauf haben wir alle gewartet! Und so weiter...
Gut, den Teil haben wir hinter uns. Schauen wir uns das ganze einmal von einer anderen Seite aus an:
Eine neue Kernel Version? Na, und? Was kümmert's mich...?
Die Antwort auf diese Frage sieht sicherlich für Privatanwender anders aus als für berufliche Interessierte, für Laptopbesitzer oder Menschen, die an embedded GNU/Linux interessiert sind...
Dazu kommt, dass die meisten Verbesserungen im 2.4er Kern hinter diversen GUI Konfigurationsprogrammen versteckt, und somit ,,unsichtbar`` sind. Beispielsweise wird die Kombination von ,,Ressourcen-Management`` und dem ,,Device Dateisystem`` letztlich zu einer robusteren Unterstützung des Plug-and-Work (Automatische Erkennung und Einrichtung) in allen GNU/Linux Distributionen führen. Sobald es soweit ist, werden die meisten Anwender sicherlich die jeweiligen grafischen Konfigurationsprogramme feiern, während der ,,wirkliche Held`` unerwähnt bleibt.
Andere Änderungen betreffen Sie vielleicht überhaupt nicht - zumindest nicht im Moment: 2 GHz Prozessoren sind immer noch nicht verfügbar, 64 GB RAM sind auch heute noch etwas teuer, Dateien, die größer als 2 GB sind, kommen noch nicht so häufig vor und die Wahrscheinlichkeit, dass Ihr privater PC mit 16 Ethernet Karten, 10 IDE Kontrollern, etc. ausgestattet ist, ist nun wirklich nicht sehr hoch. Starke Verbesserungen im Umgang mit Blockgeräten (,,rohe E/A Geräte``, logische Platten-Manager, bessere Unterstützung von RAID) sind für neuere Versionen unserer Server-Distribution und damit verwandten Produkten wichtig. Sie werden jedoch den Privatanwender, Büroarbeiter oder Kleinfirmen-Server eher selten betreffen.
Dennoch gibt es Veränderungen, die die meisten Linux-Mandrake Anwender betreffen werden:
GNU/Linux hatte aus offensichtlichen Gründen immer schon eine wirklich gute Netzwerkunterstützung: GNU/Linux ist ein Kind des Internets und der Hauptanteil der Entwicklung wird auch heute über das Internet koordiniert. Dennoch wurde der Netzwerkteil von Grund auf neu programmiert, was dazu führt, dass der 2.4er Kern fast ,,revolutionäre`` Änderungen mit sich bringt:
Unterstützung für Netzwerke über USB, FireWire und 1 GHz Ethernet (wann wird der Kern wohl Datenaustausch per Rauchsignale unterstützen?).
Bessere PPP Unterstützung: die PPP-Ebene von ISDN wurde mit der PPP-Ebene serieller Geräte kombiniert, PLIP wurde verbessert und PPPoE Unterstützung wurde in den Kern integriert.
Die Firewall- und IP-Maskierungs-Möglichkeiten wurde nochmals komplett neu geschrieben. Netzfilter (iptables) sorgen für deutliche Sicherheitsverbesserungen im Vergleich zu iphains, das in 2.2er Kernen verwendet wurde. Zusätzlich ermöglichen die iptables eine deutlich leichtere und mächtigere Konfiguration der Übersetzung von Netzwerkadressen (NAT), transparenten Proxies und Paket-Umleitungen (redirection). (Denken Sie nur an lastbalancierte Server-Cluster, etwa ein Web-Server, der transparent durch vier ersetzt wird!). Kurzum, Jay (der Leiter unseres Sicherheitsteams und Author von Bastille Linux) hatte sich sehnte sich schon seit Jahren nach iptables.
2.4 bietet Ihnen zusätzlich Optimierungen für Ungereimtheiten an, die bei der Netzwerkunterstützung anderer BSe zu finden sind. Hinzu kommen noch ein verbesserter Umgang mit Netzwerk Sockets, bessere Unterstützung für Multiprozessorsysteme und noch höhere Stabilität als wir bislang gewohnt waren (ist das wirklich möglich?).
In 2.2er Kernen wurde PCMCIA und ISA-PNP durch externe Pakete unterstützt. Die 2.2er Kerne in den LM 7.x Distributionen enthielten bereits USB Unterstützung, da als stabil angesehene Teile der 2.4er Kerne zurück portiert wurden (sog. Backports). Dies war sehr nützlich, aber die Qualität der externen Pakete und Patches erreicht nie die Qualität des offiziellen Linux Kerns. Linux 2.4 enthält nun von Hause aus Unterstützung für diese Geräte. Kombiniert mit einem zentralen ,,Ressourcen-Management``-System sollte in der Zukunft die Unterstützung für PCMCIA, USB, FireWire und ISA-PNP drastisch besser werden.
Bessere Unterstützung des FrameBuffers und die Hinzugabe von DRI (Direct Rendering Infrastructure) macht GNU/Linux 2.4 jetzt noch attraktiver für Spiele (Videobeschleunigung!) und eingebettete Geräte. Im Verlauf dieses Jahres könnte Ihrem PC also auch das Ende der SVGAlib bevorstehen. :-)
Zusätzlich wurde die Unterstützung von Sound- und TV/Radio-Karten kontinuierlich während des 2.4er Entwicklungszyklus verbessert. Auch die meisten dieser Änderungen waren bereits über Rückportierungen auf den 2.2er Kern in den LM 7.x Distributionen enthalten. Das führt dazu, dass LM Anwender bereits in den Genuss dieser Entwicklungen gekommen sind und somit keine großen Veränderungen feststellen dürften.
Die auffälligste Änderung in der Unterstützung lokaler Dateisysteme ist die Einbeziehung des journalisierenden Dateisystems reiserfs in den offiziellen Linux Kern. Auch hier gilt wieder: reiserfs befand sich bereits in allen LM 7.x Distributionen, jedoch war es dort als ,,experimentell`` gekennzeichnet. Auf der ,,Netzwerk`` Seite freuen wir uns darüber, dass Linux 2.4 endlich NFSv3 unterstützt und die Unterstützung von SMB weiter verbessert wurde. Unglücklicherweise fand jedoch kein verteiltes Dateisystem Eingang in den offiziellen Kern und die Unterstützung von NTFS ist immer noch als ,,experimentell`` gekennzeichnet.
Das Wort patch hat im Englischen als weitere Bedeutung das eines Pflasters. Darum geht es hier natürlich nicht, denn es hat sich ja niemand verletzt. Im Zusammenhang mit dem Kern kann man es sich eher so vorstellen, wie ein Flicken mit dem man einen geplatzten Fahrradreifen flickt. Genau genommen bedeutet es hier jedoch mehr: es bezieht sich generell auf zusätzlichen Programmcode, der den Kern mit weiteren Funktionen ausstattet. Im nachfolgenden nun eine Liste der wichtigsten Patches, die von MandrakeSoft zu dem Grundkern, wie er von Linus Torvalds gepflegt wird, hinzugefügt wurden.
Die Advanced Linux Sound Architecture ist im Grunde genommen ein Soundtreiber. Sie wirkt oberhalb der grundlegenden Soundunterstützung durch den Kern und verbessert die Klangqualität. Weiterhin stellt sie eine gemeinsame Schnittstelle für Programme dar, so dass die Soundunterstützung unter GNU/Linux einheitlicher wird.
GNU/Linux FreeS/WAN ist eine Implementierung von IPSEC & IKE für GNU/Linux.
IPSEC steht für Internet Protocol SECurity. Das Protokoll verwendet starke Kryptographie, um sowohl Authentifizierungs- als auch Verschlüsselungsdienste zur Verfügung zu stellen. Die Authentifizierung sorgt dafür, dass Datenpakete vom richtigen Absender kommen und während der Übertragung nicht modifiziert wurden. Die Verschlüsselung verhindert ein unauthorisiertes Mitlesen der Inhalte der Datenpakete.
Diese Dienste erlauben es Ihnen, sichere Kanäle durch unsichere Netzwerke aufzubauen. Alles, was duch den unsicheren Teil des Netzes gesendet wird, wird durch einen IPSEC Gateway-Rechner verschlüsselt und durch den Gateway am anderen Ende wieder entschlüsselt. Das Resultat ist somit ein Virtuelles Privates Netzwerk, kurz VPN. Es handelt sich also hierbei um ein Netzwerk, welches tatsächlich privat ist, obwohl es Rechner zum Datentransfer verwenden kann, die durch das unsichere Internet miteinander verbunden sind.
Dies ist ein Patch des Lm_sensors Projektes für die Beobachtung der ,,Gesundheit`` Ihrer Hardware unter GNU/Linux Systemen. Es unterstützt Beobachtungshardware wie beispielsweise LM78 and LM75 (und zahlreiche andere).
Card Services für GNU/Linux ist ein vollständiges Paket zur Unterstützung von PCMCIA. Es enthält einen Satz ladbarer Kernmodule, die eine Implementierung der PCMCIA 2.1 Version der Card Services Programmschnittstelle für Anwendungen darstellen, weiterhin einen Satz Client-Treiber für spezielle Karten und einen Kartenmanager Dämon, welcher auf das Einstecken und Entfernen von Karten reagiert und die dafür notwendigen Treiber nach Bedarf laden und wieder entfernen kann. Das Wechseln von PCMCIA Karten im laufenden Betrieb wird unterstützt, so dass Sie Karten zu jedem Zeitpunkt einstecken oder wieder entnehmen können. Das aktuelle Paket unterstützt viele Ethernet Karten, Modems und serielle Karten, zahlreiche SCSI Adapter und einige SRAM und FLASH Speicherkarten. Alle üblichen PCMCIA Kontroller werden unterstützt. Somit sollte es auf nahezu allen GNU/Linux-fähigen Laptops keine Probleme geben.
Treiber, die aktuelle Hardwareteile unterstützen und bislang nicht im Kern integriert waren. Es gibt weiterhin besondere Treiber, wie beispielsweise SuperMount, welcher das automatische einhängen von Wechselmedien zum Zeitpunkt des Zugriffs ermöglicht.
Schließlich müssen wir noch betonen, dass Linux-Mandrake nicht nur mit einem, sondern mit mehreren Kernen ausgeliefert wird:
Diese Kerne wurden ausgehend von der Version 2.2 erstellt.
Der Standardkern, der normalerweise auf allen Standardrechnern installiert wird.
Dieser Kern wurde speziell für die Unterstützung von Computern mit mehreren Prozessoren kompiliert. Er wird standardmäßig installiert, wenn während des Installationsvorganges mehr als ein Prozessor erkannt wird.
Der Ausgangskern, so wie ihn Linus Torvalds pflegt und vertreibt - ohne jegliche Patches.
Sollten Sie sich schon einmal mit der Auslastung Ihrer CPU befasst haben, so sind Sie möglicherweise über den Task kapm-idled gestolpert, der die meisten CPU Ressourcen verschlingt. Sicherlich haben Sie sich dann gefragt ,,Warum verschwendet dieser Task meine kostbare CPU Rechenleistung?``
Nun, tatsächlich handelt es sich hierbei um einen Task, der alle unbenutzte CPU Zeit zugewiesen bekommt. Daher der Name. Die Programmierer haben diesen aus Gründen des erweiterten Prozess-Managements eingeführt, mehr um Ihre CPU zu schützen, als ihr zu schaden.
Zum Schluss möchten wir noch eine Eigenschaft erwähnen, die vielleicht den PC-Besitzern als nicht so wichtig erscheint: der Linux Kern wurde erfolgreich auf nahezu alle Arten von Hardware, die heutzutage existiert, portiert - angefangen von winzigen Geräten mit embedded GNU/Linux, bis hin zu IBMs Mainframes. Linux-Mandrake Distributionen werden hiervon nie vollständig Gebrauch machen, da außer dem Kern andere Programme auf eine neue Architektur übersetzt oder zumindest rekompiliert und getestet werden müssen. Insbesondere die Programme für die Installation und die Einrichtung der Hardware (die DrakX Programme) müssen für jede neue Plattform angepasst werden und das kostet Zeit und Geld.
Die Tatsache, dass der Kern auf so vielen Architekturen portiert wurde, bedeutet jedoch, dass dessen Programmcode immer wieder kontrolliert wurde, was dazu führte, dass er deutlich robuster wurde und das für alle Architekturen! Weiterhin bedeutet es, dass die Linux-Mandrake (LM) Distribution schnell auf andere Architekturen portiert werden kann - falls und sobald ein Markt für solche Produkte entsteht. Dies haben wir bereits mit Sparc (Corporate Server) und Alpha (LM 7.1) Portierungen bewiesen. Eine Portierung zu anderen Architekturen ist also letztlich eine Frage des kommerziellen Interesses. Obgleich LM 8.0 bislang nur für PC Versionen (Intel-kompatible) entsteht, wird eine Unterstützung von i64 verfügbar sein, sobald diese Plattform auf dem Markt verfügbar ist. Ein Port für PowerPC ist wahrscheinlich, falls diese Plattform weiterhin so erfolgreich bleiben sollte, wie sie es im letzten Jahr war.