19. März 2022

OL7 nach OL8

Gestern habe ich damit angefangen eine meiner virtuellen Maschinen mit Oracle Linux 7.9 auf Release 8.5 zu aktualisieren. Ähnlich wie bei anderen Linux-Distributionen muss man auch hier zuerst mal das laufende System auf den neuesten Stand bringen und

 sudo yum update -y

ausführen. Danach muss man ein Werkzeug namens LEAPP herunterladen, dass den eigentlich Upgradeprozess übernimmt:

sudo yum install -y leapp --enablerepo=ol8_leapp,ol8_latest

Dann gibt es einen ersten Lauf, der sich “preupgrade” nennt und verschiedene Voraussetzungen abprüft. Diese werden in einer Protokolldatei gespeichert und zusätzlich in einer Antwortdatei werden Parameter aufgelistet, die man je nach Konstellation aktivieren oder deaktivieren muss. Wenn das Ergebnis wie in meinem Fall negativ ist, wird vor einem hohen Risiko gewarnt, dass das Upgrade wahrscheinlich nicht funktionieren wird und es wird abgebrochen. Dann muss man den Empfehlungen folgen, die in der Protokolldatei gleich mitgeliefert werden. Diese sind aber sehr allgemein gehalten und geben keine konkreten Befehle an die Hand. Diese muss man sich wiederum im Internet zusammensuchen. Aber eines muss man den Leuten von ORACLE lassen: Die Dokumentation ist sehr umfangreich und auch hilfreich. In diesem Punkt kann man ihnen nichts vorwerfen.

In meinem Fall ändert sich mit dem Wechsel von OL7 auf OL8 der Authentifizierungsmechanismus von authconfig zu authselect, was insofern entscheidend ist, als dass nach dem Upgrade keine Anmeldung mehr mit der alten Methode möglich ist. Man wäre also vom System komplett ausgesperrt. Um das zu verhindern muss man den “Open Source Client for Enterprise Identity Management” (sssd) installieren, der in meinem Fall noch gefehlt hatte, weshalb die Aktualisierung anfangs gescheitert war. Bei der Installation von sssd wurden mehr als zwanzig abhängige Paket mitinstalliert, das ist also ein mächtiges Paket mit jeder Menge Gepäck im Schlepptau. Hinweise auf die Migration von authconfig nach authselect gab es unter anderem bei ORACLE selbst, als auch bei Red Hat wo der Wechsel von RHEL 7 auf RHEL 8 ähnlich verläuft (sogar mit dem gleichen Werkzeug ‘LEAPP’), sowie auf einer weiteren Seite namens ManKier.

Nachdem also das sssd-Paket erfolgreich installiert war, verlief auch die Vorprüfung mit einem positiven Ergebnis. Der eigentliche Upgradeprozess verläuft dann in drei Schritten:

  1. Pakete herunterladen und ein minimales System vorbereiten
  2. Neustart (reboot)
  3. Start des Minimalsystems und aktualisieren sämtlicher verbliebener Pakete

Das ganze kann einige Stunden dauern, je nach Leistungsmerkmalen des jeweiligen Systems. In meinem Fall war das Upgrade offenbar erfolgreich, denn das System läuft noch. :-)

Cockpit

Unter Fedora 35 Server Edition nutze ich das mitgelieferte Cockpit, das es offensichtlich auch für andere Linux-Derivate gibt. Cockpit ist eine Administrationsoberfläche, die über das lokale Netzwerk über den Browser von jedem Client mit der Adresse

https://[Servername]:9090/

aufgerufen werden kann. Das erleichtert die Administration “kopfloser”-Systeme, ist aber stark abhängig von den Sicherheitseinstellungen der zugrundeliegenden Distribution. Während also bei Fedora ein Update über Cockpit möglich ist, fehlt diese Funktion bei Oracle Linux. Aber man kann innerhalb des Cockpit auch eine Shell / Terminal öffnen und das Update manuell durchführen. Dabei wird man feststellen, dass OL 8 anstelle von yum nun auch dnf verwendet, eine Weiterentwicklung des YUM-Systems.

Also habe ich inzwischen nun vier Systeme auf denen Cockpit läuft. Neben dem bereits erwähnten Fedora 35 Server Edition auch das Oracle Linux und zwei weitere mit Debian installierte Server. Und das beste daran ist, dass die Software bereits in den offiziellen Paketquellen der genannten Systeme enthalten ist und keine zusätzlichen Repositories eingebunden werden müssen.