0150: Debian-Releases im ÜberblickDebian verwendet eine speziell für die Debian-Philosophie maßgeschneiderte Release-Verwaltung. Lesen Sie nun leichtverdaulich das, was Sie wissen müssen, um die Release-Verwaltung von Debian zu verstehen. 1. Debian-DistributionenDebian ist zwar eine von vielen Linux-Distributionen, aber im Jargon von Debian hat der Name "Distribution" noch eine weitere Bedeutung. Um Missverständnisse zu vermeiden, unterscheide ich fortan zwischen: Debian betreibt mehrere Debian-Distributionen parallel. Die Debian-Distributionen unstable, testing, stable und oldstable existieren ständig. Die Debian-Distribution experimental existiert bei Bedarf. 1.1. "experimental"
Wenn experimental überhaupt existiert, dann ist es nicht vollständig. Es wird benötigt, wenn radikale Änderungen am System untersucht werden müssen. Und es enthält dann nur die Pakete, die für die spezielle Untersuchung benötigt werden. 1.2. "unstable"
Neue Versionen von Paketen und Programmen werden zuerst in unstable integriert. Hier werden sie im laufenden Betrieb getestet. Die Debian-Anwender, die ein unstable auf ihren Rechnern am Laufen haben, sind in der Regel diejenigen, die die offensichtlichen oder sogar schweren Fehler, die die neuen Versionen mitbringen können, zuerst entdecken. Weil die in unstable enthaltenen Pakete und Programme unaufhörlich aktualisiert werden, verschwinden die in neuen Paket- und Programm-Versionen entdeckten Fehler in unstable in der Regel (durch die Integration nachfolgender Versionen) nach einer gewissen Zeit automatisch. 1.3. "testing"
Wenn sich eine neue Paket- oder Programm-Version nach genau definierten Kriterien in unstable bewährt hat (sie keine gravierenden Fehler mehr enthält), dann wandert sie nach testing. Solange sich testing nicht im Zustand "freeze" befindet, kann die Schwelle zwischen unstable und testing als eine Art Filter angesehen werden, der dafür sorgt, dass zwar (ähnlich wie in unstable) die in testing enthaltenen Pakete und Programme unaufhörlich aktualisiert werden, aber die neuen Paket- und Programm-Versionen keine offensichtlichen, schweren Fehler enthalten. Die Debian-Anwender, die ein testing auf ihren Rechnern am Laufen haben, entdecken in der Regel nicht ganz so offensichtliche Fehler.
Nach ein paar Monaten (oder wenigen Jahren) wird die unaufhörliche Aktualisierung der in testing enthaltenen Pakete und Programme gestoppt. Diese Debian-Distribution wird dann eingefroren (erhält den Zustand "freeze"). Ab diesem Zustand ist der Filter nicht mehr durchlässig und es werden nur noch Fehler beseitigt, die während der Anwendung von testing entdeckt werden. Nur noch in wenigen Ausnahmen werden Änderungen aus unstable übernommen. 1.4. "stable"
Während der meisten Zeit werden überhaupt keine neuen Paket- oder Programm-Versionen in stable aufgenommen. Daher auch der Name "stable": Diese Debian-Distribution ändert sich so gut wie gar nicht. Ausnahme: Wenn Sicherheitslücken entdeckt werden, die sich in stable befinden, dann werden sogenannte Security-Updates für stable erstellt. Diese Security-Updates wandern meistens mit dem nächsten dist-upgrade (von apt-get oder aptitude) auf die Rechner derjenigen Debian-Anwender, die ein stable betreiben. Wenn sich genügend Security-Updates angesammelt haben, erscheint eine neue Revision. Wenn sich testing lange genug im Zustand "freeze" befunden hat, dann sind nach einer gewissen Zeit alle release-kritischen Fehler im testing beseitigt. Wenn das der Fall ist, dann geschieht Folgendes:
1.5. "oldstable"
Diese Debian-Distribution enthält immer den jeweils vorherigen Zustand von stable. Nachdem die neuen Paket- und Programm-Versionen von testing nach stable gewandert sind, haben die bisherigen Anwender von stable die Möglichkeit, selbst den Zeitpunkt zu bestimmen, wann die Änderungen in stable auch auf ihre Rechner eingespielt werden. Brauchen Sie noch etwas Zeit, dann bleiben sie bei oldstable. Wenn sie soweit sind, auf die neuen Paket- und Programm-Versionen zu aktualisieren, dann steigen sie auf stable um. 2. Debian-ReleasesIn der Regel hat jede Debian-Distribution einen eindeutigen Namen. Alle Namen kommen aus einem Film namens "Toy Story". Der Name von unstable ändert sich nie: Er lautet immer sid. Sid ist in dem Film der kleine Junge von nebenan, der immer alles kaputt macht. Zu unstable passt dieser Name daher sehr gut. Die Namen von testing, stable und oldstable ändern sich immer dann, wenn neue Paket- und Programm-Versionen von testing nach stable wandern (siehe oben). Dann passiert Folgendes:
Die nachfolgende Liste enthält zu allen bisher stattgefundenen Releases die Release-Nummern, die Namen und jeweils das Release-Datum:
Die nachfolgende Liste enthält zu den in naher Zukunft noch stattfindenden Releases die Release-Nummern, die Namen und jeweils das geplante Release-Datum, falls eins bekannt ist:
3. Der feine Unterschied zwischen Distribution und ReleaseWenn Sie eine Entscheidung treffen wollen, mit welchem "Debian" Sie einen Rechner betreiben werden, dann sollten Sie zuallererst den Unterschied kennen zwischen:
Sie können sich für eine der beiden "Mengen" entscheiden, sollten aber wissen, welche Konsequenzen Ihre Entscheidung dann hat.
An einem Beispiel zeige ich Ihnen nun Ihre Optionen und welche
Konsequenzen diese Optionen haben:
Jetzt gehen wir die Optionen der Reihe nach durch. 3.1. Sie entscheiden sich für eine Debian-Distribution
Wenn Sie sich am 01.01.2009 für eine Debian-Distribution entschieden hätten, dann hätten Sie die Wahl gehabt zwischen:
3.2. Sie entscheiden sich für ein Debian-Release
Wenn Sie sich am 01.01.2009 für ein Debian-Release entschieden hätten, dann hätten Sie die Wahl gehabt zwischen:
3.3. Ihre Entscheidung
Nun kennen Sie die Optionen und ihre Konsequenzen. Überlegen Sie jetzt, was Sie eigentlich wollen:
4. RevisionenDie Debian-Distribution stable ändert sich, wie oben bereits vermerkt, grundsätzlich nicht mehr. Die Ausnahme sind Security-Updates. Weitere Ausnahmen sind Zwischenreleases. Das erste Zwischenrelease in der Geschichte Debians erschien am 26.07.2008 mit dem Namen "EtchAndAHalf". Ich wiederhole noch einmal, was ich bereits oben geschrieben habe: Wenn Sicherheitslücken entdeckt werden, die sich in stable befinden, dann werden sogenannte Security-Updates für stable erstellt. Diese Security-Updates wandern meistens mit dem nächsten dist-upgrade (von apt-get oder aptitude) auf die Rechner derjenigen Debian-Anwender, die ein stable betreiben. Wenn sich genügend Security-Updates angesammelt haben, dann erscheint eine neue Revision. Am Beispiel von etch zeige ich Ihnen nun, was das bedeutet:
Mehr muss hierzu nicht erklärt werden. Wenn Sie die ISO-Images des jeweils aktuellen Debian stable herunterladen, heißt das für Sie, dass Sie mit dem Download der ISO-Images die älteren Security-Updates gleich mit bekommen. 4.1. Zwischenreleases
Die Zwischenreleases enthalten neben Security-Updates auch neuere Treiber. Hardware, die erst nach dem Release (Revision 0) des jeweils aktuellen stable auf dem Markt erschienen ist, kann damit besser unterstützt werden (Sie müssen sich dann nicht mehr selbst aufwändig mit Backports herumschlagen). Ob es sich bei einer Revision um ein Zwischenrelease handelt, ist der Revision nicht anzusehen. Ob ein Zwischenrelease erschienen ist, darüber informieren die Medien. Das erste Zwischenrelease in der Geschichte Debians mit dem Namen "EtchAndAHalf" befindet sich in Form von zusätzlichen Paketen und ISO-Images in allen Etch-Revisionen ab Revision 4. Wenn Sie die neuen Hardware-Treiber benötigen, müssen Sie explizit entweder das für die Installation hergestellte ISO-Image herunterladen oder die zusätzlich vorhandenen Pakete installieren. Wenn Sie die ganz normalen ISO-Images verwenden und auch nur die ganz normalen Pakete installieren (die Pakete, die bis Revision 3 schon vorhanden waren), dann werden Sie das Zwischenrelease gar nicht erst bemerken. Dieses Verhalten ist deshalb so, weil der Anwender sich laut Debian-Philosophie darauf verlassen können muss, dass sich in einem stable nichts bis auf die Security-Updates ändert. Wenn Sie die zusätzlichen Pakete oder ISO-Images nutzen, dann tun Sie das ausdrücklich (nie aus Versehen), damit Sie neue Hardware nutzen können, und bezahlen dann nur wissentlich (nie aus Versehen) mit dem Preis, dass Sie mit Ihrem jetzigen Handeln den von der ursprünglichen Debian-Philosophie vorgegebenen Weg verlassen. 5. Änderungen seit LennySeitdem Lenny den Status stable erhalten hat, haben sich offenbar Details bei der Notation der Versionen (und Zwischenreleases) geändert. Der Unterschied zwischen Alt und Neu kann wie folgt verdeutlicht werden:
Damit beobachte ich einen Trend in Öffentlichkeit und Medien, der sich von der Verwendung des Codenamens als Versionsbezeichnung wegbewegt, hin zur Verwendung der ersten beiden Zahlen aus der Release-Nummer (Major-Release + Minor-Release). 6. Mehr InfosDas hier vorliegende Modul bereitet das Thema der Release-Verwaltung so auf, dass Sie es mit möglichst wenigen Vorkenntnissen verstehen können. Wenn Sie das Modul jetzt bis hierher durchgelesen haben und trotzdem noch Fragen haben, können Sie es entweder noch einmal lesen oder Ihre Recherche auf den weiter unten genannten Seiten fortsetzen. 6.1. Meine wichtigsten Quellen, bevor ich dieses Modul geschrieben hatte
Beim Schreiben dieses Moduls nützten mir zunächst meine Erinnerungen an lebhafte Gespräche mit Debian-Profies in den Jahren 2001 bis 2003. Seit Anfang 2006 befasse ich mich systematisch autodidaktisch mit dem Thema "Debian". Auch die dabei angefallenen Erfahrungen nützten mir beim Schreiben dieses Moduls. Neben Google allgemein bezog ich weitere Informationen hauptsächlich aus diesen Quellen hier:
6.2. Quellen, die mir nach dem Entstehen dieses Moduls in die Hände gefallen sind
Zu diesem Modul gab es einen sehr konstruktiven Dialog zwischen mir und dem Debian-Forum:
Dabei bekannt gewordene zusätzliche Links: Das hier wäre ein guter Anlaufpunkt, um mehr über die Debian-Release-Verwaltung zu lernen:
7. AnmerkungenAnmerkungen zu diesem Modul gibt es hier.
|