ubuntuusers.de

LTS Enablement Stacks

Ausbaufähige Anleitung

Dieser Anleitung fehlen noch einige Informationen. Wenn Du etwas verbessern kannst, dann editiere den Beitrag, um die Qualität des Wikis noch weiter zu verbessern.


Anmerkung: Der Kernel aus dem HWE-Stack scheint nicht alle Module zu enthalten (siehe Warnbox im Artikel). Wenn du mehr darüber weißt, ergänze doch bitte die Informationen in einem separaten Abschnitt oder melde dich in der Diskussion zum Artikel.

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Mit der Einführung des LTS Enablement Stack-Support 🇬🇧 im Herbst 2012 erhielt erstmals auch eine LTS-Version auf Wunsch einen neuen Kernel samt dem zugehörigen X.Org-Stack und Mesa. Die vorher genutzte Methode mittels Backport-Kerneln wurde aufgegeben.

Seit Version 16.04 werden Installationen mit aktiviertem LTS Enablement Stack immer auf die aktuellen Versionen aktualisiert. Ausgenommen ist nur die Server-Variante, die standardmäßig ohne aktivierten HWE-Stack ausgeliefert wird.

Diese Veränderung wurde von den Entwicklern als notwendig angesehen, um während des langen Unterstützungszeitraumes von fünf Jahren die Hardwarekompatibilität zu verbessern. Canonical 🇬🇧 bezeichnet diese Aktualisierung als "LTS Enablement Stack-Support" oder auch HWE-Stack (HWE = Hardware Enablement).

Auf der Ubuntu-Internetseite direkt angeboten wird immer nur der jeweils jüngste HWE für Ubuntu LTS Versionen. Die ISO-Abbilder aller vorherigen Ausgaben stehen weiterhin im historischen Archiv ⮷ zur Verfügung. Möchte man also keinen HWE-Stack einsetzen, muss man dies also explizit so einrichten.

Beispiel für LTS Enablement Stacks

14.04.x_Ubuntu_Kernel_Support_Schedule.png
Die HWE-Stacks für 14.04 aus Sicht des Kernel-Teams (Original von leannogasawara unter CC BY-SA 3.0)

Am Beispiel von Version 14.04 lässt sich das Verfahren demonstrieren.

Bestehende Installationen mit Kernel 3.13 (14.04/14.04.1) verbleiben beim ursprünglichen Kernel, der deutlich länger (bis zum Ende des Unterstützungszeitraums im April 2019) unterstützt wurde. Dies betrifft vor allem Server-Versionen. Die Unterstützung für 14.04.2, 14.04.3 und 14.04.4 ist bis August 2016 gewährleistet. Dann muss man auf 14.04.5 wechseln. Der enthaltene Kernel 4.x entspricht dem aus 16.04 und wird dann unter 14.04.5 wieder bis 2019 unterstützt. Die Aktualisierungen nimmt das System automatisch vor.

HWE-Versionen

Welche Version bzw. welches Point Release welche Komponenten mitbringt und wie lange diese unterstützt werden, kann man nachfolgender Tabelle entnehmen:

Point Releases und LTS Enablement Stacks
Ubuntu-Version Kernel XServer-Core Mesa veröffentlicht am unterstützt bis
16.04/16.04.1 4.4 1.18 11.2 21. April 2016
21. Juli 2016
21. April 2021
16.04.2 4.8 1.18 12.0 16. Februar 2017 August 2017
16.04.3 4.10 1.19 17.0 03. August 2017 16. Januar 2018
16.04.4 4.13 1.19 17.0 15. Februar 2018 August 2018
16.04.5 4.15 ? ? 3. August 2018 21. April 2021
18.04/18.04.1 4.15 1.19.6 18.0 26. April 2018
27. Juli 2018
26. April 2023
18.04.2 4.18 nn nn 14. Februar 2019 August 2019
18.04.3 5.0 nn nn 8. August 2019 ?
20.04/20.04.1 5.4 1.20 20.0 23. April 2020
6. August 2020
April 2025
20.04.2 5.8 ? ? vorrauss. Januar 2021 ?

Quellen: Ubuntu kernel lifecycle and enablement stack 🇬🇧, Ubuntu 20.04 Release Schedule 🇬🇧,Ubuntu 18.04 Release Schedule 🇬🇧, Ubuntu 16.04 Release Schedule 🇬🇧

Canonical unterstützt nur die Verwendung eines vollständigen HWE-Stacks, keine Mischung von Einzelkomponenten. So wird beispielsweise ausdrücklich nicht empfohlen, auf einem Desktop-System X.Org-Core 1.15 mit dem wesentlich neueren LTS-Trusty-Kernel 4.4 zu benutzen:

We only intend to support HWE stack package combinations in 12.04 which are derived from the same release, eg. the 13.04 X.org must be used in conjunction with the 13.04 kernel and vice versa. Intermixing a 13.04 enablement kernel with the 12.04 X.org stack or a 13.04 enablement X.org stack with a 12.04 kernel will not be officially tested nor supported.

Quelle: 12.04.4 + 13.10 Hardware Enablement Stack Policies and Procedures, Punkt 5 🇬🇧

Allerdings kann es bei einem Server, der ohne grafische Oberfläche betrieben wird, durchaus interessant sein, nur den Kernel selbst zu aktualisieren.

Einschränkungen

Achtung!

  • Ein bereits installierter HWE-Stack (vorinstalliert bei Installationsmedien mit Ubuntu 14.04.2, 16.04.2 und neueren "Point-Releases") wird in der Aktualisierungsverwaltung durch "Neue Hardwareunterstützung installieren" mit einer eigenen Schaltfläche "Installieren" zur bereitstehenden Aktualisierung angekündigt. Dies sollte man stets ignorieren, wenn man die unten stehende Simulation der Installation nicht oder nicht erfolgreich durchgeführt hat.

  • Es scheint, dass der HWE-Stack nicht alle Module enthält, was beim Einsatz spezieller Software (bspw. Archiv/iscsitarget) zu Problemen führen kann.

Überprüfung

Um herauszufinden, auf welchem Stand sich das eigene System befindet, scheidet der bisher übliche Befehl "lsb_release -a" aus. Stattdessen überprüft man zuerst in einem Terminal [1] die aktive Kernelversion:

uname -a 

Zusätzlich ist es sinnvoll, die Version des X.Org-Stacks zu prüfen:

dpkg-query -l xserver-xorg-core* | grep '^ii' 

und vergleicht die Ergebnisse mit der obigen Tabelle.

Installation

Allgemein

Der Installationsbefehl enthält die Option -s für eine Simulation. Wenn die Abhängigkeiten korrekt aufgelöst werden konnten und man zur Tat schreiten will, muss dafür nur diese Option aus dem Befehl entfernt werden.

Falls der Befehl dagegen eine Fehlermeldung liefert oder Pakete entfernt werden sollen, die man noch benötigt, so sollte man zugunsten eines lauffähigen Systems von der Installation absehen oder versuchen, eine im Abschnitt Problembehebung beschriebene Lösung anzuwenden.

Achtung!

Bei manchen 64-Bit-Systemen kann es zu nicht auflösbaren Abhängigkeiten kommen, beispielsweise beim Paket libglapi-mesa:i386. Vor allem, wenn Anwendungen wie Wine, Google Earth, Skype, TeamViewer oder bestimmte Spiele installiert sind. Es kann auch vorkommen, dass durch die Installation des HWE-Stacks Pakete entfernt werden, die man eigentlich noch behalten möchte und augenscheinlich auch keinen direkten Zusammenhang mit dem HWE-Stack besitzen, etwa die Qt-Bibliothek oder Wine.

Tritt eine nicht auflösbare Abhängigkeit auf, sollte man zumindest derzeit von einer Installation des HWE-Stacks absehen. Aktuell ist keine allgemeingültige Lösung bekannt, außer einer Neuinstallation des gewünschten Systems. Vor diesem Hintergrund wird im unten genannten Befehl die Option -s (für Simulation) verwendet, um vorher festzustellen, ob ein Wechsel des HWE-Stacks fehlerfrei ablaufen würde.

In vielen Fällen sind die Abhängigkeiten allerdings auflösbar, wenn die problematische Software deinstalliert und danach erneut die Simulation der Installation des HWE-Stacks getestet wird. Es ist häufig sogar möglich, die problematische Software nach der Installation des HWE-Stacks wieder zu installieren und die alten Einstellungen im Homeverzeichnis weiter zu benutzen, ohne dass dadurch Probleme zu erwarten sind. In einigen Fällen kann statt der Deinstallation problematischer Pakete auch die zusätzliche Aufnahme weiterer *-lts-*-Pakete in den Installationsbefehl einen Konflikt lösen oder die Deinstallation von benötigten Paketen verhindern.

Nach dem Neustart kann man prüfen, ob die neue Xorg-Version installiert und gestartet wurde:

Xorg -version 

Ubuntu 16.04

Ab 16.04 entfällt die Überprüfung des Namen des aktuellen HWE-Stacks. Zum Installieren muss folgender Befehl ausgeführt werden, das Meta-Paket wählt automatisch die zur Zeit aktuellen Komponenten aus:

Desktop

sudo apt-get -s install --install-recommends linux-generic-hwe-16.04 xserver-xorg-hwe-16.04 

Server

sudo apt-get -s install --install-recommends linux-generic-hwe-16.04 

Deinstallation

Eventuell möchte man den HWE deinstallieren, z.B. wenn er nicht mehr unterstützt wird, aber sich der neuere HWE aufgrund von Abhängigkeitsproblemen nicht installieren lässt und die Deinstallation vielleicht besser möglich ist oder um auf einer LTS-Version nicht immer nach Unterstützungs-Ende des HWE auf neuere HWE aktualisieren zu müssen.

Zunächst installiert man wieder die entsprechenden Nicht-HWE-Pakete. Dies erfolgt zunächst nur simuliert:

sudo apt-get -s install --install-recommends linux-generic xserver-xorg-core xserver-xorg xserver-xorg-video-all xserver-xorg-input-all libwayland-egl1-mesa 

Dabei kann es (unter Ubuntu 14.04.x beobachtet) vor allem zu folgendem Abhängigkeitsproblem kommen:

Die folgenden Pakete haben unerfüllte Abhängigkeiten:
 unity-control-center : Hängt ab von: libcheese-gtk23 (>= 3.4.0) soll aber nicht installiert werden
                        Hängt ab von: libcheese7 (>= 3.0.1) soll aber nicht installiert werden
E: Fehler: Unterbrechungen durch pkgProblemResolver::Resolve hervorgerufen; dies könnte durch zurückgehaltene Pakete verursacht worden sein.

Diese löst man dadurch auf, indem man das dort bemängelte unity-control-center vorübergehend entfernt, um es später wieder zu nachzuinstallieren:

sudo apt-get remove unity-control-center 

Dabei ist die Entfernung einiger weniger, bestimmter weiterer Pakete normal, wie folgendes Beispiel zeigt:

Die folgenden Pakete werden ENTFERNT:
  ubuntu-desktop unity-control-center unity-control-center-signon
  webaccounts-extension-common xul-ext-webaccounts

Man muss der Entfernung weiterer Pakete zustimmen, so dass hier eine Simulation nicht zwingend nötig ist. Anschließend kann man die obige Simulation der Installation der Nicht-HWE-Pakete ohne dieses Abhängigkeitsproblem ausführen und die Installation tatsächlich durchführen lassen, indem man das -s weglässt. Dabei ist normal, dass zahlreiche Pakete hinzugefügt sowie auch entfernt werden:

0 aktualisiert, 145 neu installiert, 66 zu entfernen und 0 nicht aktualisiert.

Diese Liste sollte man sich jedoch zur Kontrolle genau ansehen. Bei mehreren Hundert zu entfernenden Paketen sind Vorsicht und Skepsis angebracht, die Paketnamen sind generell genau anzusehen. Es sollten zudem nur ein paar wenige Dutzend Pakete sein.

Anschließend kann man das zuvor wegen Abhängigkeitsproblemen entfernte Paket unity-control-center wieder nachinstallieren:

sudo apt-get install --install-recommends unity-control-center  

Ein paar wenige Programme könnten dennoch noch fehlen und sind manuell in der Paketverwaltung nachinstallierbar. Fehlende Standardprogramme der Desktopumgebungen lassen sich einfach nachinstallieren, indem dessen Metapakete nachinstalliert werden, z.B. ubuntu-desktop für Ubuntu. Eine Liste dieser Pakete befindet sich im Artikel Upgrade (Abschnitt „Problemloesungen-nach-fehlgeschlagenen-Upgrades“) im verlinkten Abschnitt Problemlösungen.

Weitere Möglichkeiten zur Deinstallation werden unter How to remove Kernel/LTS Enablement Stack? aufgezeigt. Sie können bei auftretenden Problemen zu Rate gezogen, sollten jedoch stets ebenfalls mit -s erst mal nur simuliert getestet werden.

Problembehebung

Nicht erfüllte Paket-Abhängigkeiten

Bricht die Installation oder die Simulation mit einer Fehler-Meldung wegen nicht erfüllter Paket-Abhängigkeiten ab, z.B.:

"unmet dependencies:  qtdeclarative5-qtfeedback-plugin : Depends: libqt5feedback5"

dann hilft es manchmal, nicht mehr benötigte (zuvor automatisch installierte) Pakete wieder (automatisch) zu entfernen und die Paket-Datenbank zu bereinigen:

sudo apt-get clean
sudo apt-get autoclean
sudo apt-get -f install # -f steht für "fix broken" (= behebe fehlerhafte Paket-Abhängigkeiten)
sudo apt-get clean 

Diese Revision wurde am 23. Oktober 2020 11:50 von Edward0103 erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: LTS, Grafik, Hardware