21 Online-Upgrade #
Für das Upgrade eines laufenden Systems auf ein neues Service Pack bietet SUSE ein intuitives grafisches Werkzeug und ein Befehlszeilenwerkzeug. Diese Funktionen unterstützen das „Rollback“ von Service Packs und vieles mehr. In diesem Kapitel wird die Ausführung eines Service Pack-Upgrades mit diesen Werkzeugen Schritt für Schritt erläutert.
21.1 Konzeptüberblick #
Lesen Sie vor dem Aufrüsten des Systems bitte Abschnitt 19.3, „Vorbereiten des Systems“.
SUSE veröffentlicht in regelmäßigen Abständen neue Service Packs für die SUSE Linux Enterprise-Produktfamilie. Um den Kunden die Migration auf ein neues Service Pack zu erleichtern und die Ausfallzeiten so kurz wie möglich zu halten, unterstützt SUSE eine Online-Migration bei laufendem System.
Ab SLE 12 werden anstelle von YaST-Wagon die YaST-Migration (GUI) und die Zypper-Migration (Befehlszeile) verwendet. Folgende Funktionen werden unterstützt:
Das System befindet sich bis zur Aktualisierung des ersten RPM stets in einem definierten Status
Der Vorgang kann bis zur Aktualisierung des ersten RPM jederzeit abgebrochen werden
Unkomplizierte Wiederherstellung bei einem Fehler
„Rollback“ über Systemtools; keine Sicherung/Wiederherstellung erforderlich
Verwendung aller aktiven Repositorys
Möglichkeit zum Überspringen eines Service Packs
Ein SUSE Manager-Client kann weder per YaST-Online-Migration noch per Zypper-Migration
aufgerüstet werden. Nehmen Sie stattdessen die Client-Migration vor. Eine Beschreibung finden Sie im Aufrüstungshandbuch für SUSE Manager unter https://documentation.suse.com/suma/.
21.2 Arbeitsfluss der Service Pack-Migration #
Eine Service Pack-Migration kann mit YaST, zypper
oder AutoYAST ausgeführt werden.
Vor dem Start einer Service Pack-Migration muss das System beim SUSE Customer Center oder bei einem lokalen SMT-Server registriert werden. Auch SUSE Manager kann verwendet werden.
Unabhängig von der Methode besteht eine Service Pack-Migration jedoch immer aus den folgenden Schritten:
Suchen von möglichen Migrationszielen auf den registrierten Systemen
Auswahl eines Migrationsziels
Anfordern und Aktivieren neuer Repositorys
Ausführen der Migration
Die Liste der Migrationsziele ist abhängig von den installierten und registrierten Produkten. Falls Sie eine Erweiterung installiert haben, für die das neue Service Pack noch nicht zur Verfügung steht, wird Ihnen unter Umständen gar kein Migrationsziel angeboten.
Die Liste der Migrationsziele, die für Ihren Host verfügbar sind, wird immer aus dem SUSE Customer Center abgerufen und hängt von den installierten Produkten oder Erweiterungen ab.
21.3 Abbrechen einer Service Pack-Migration #
Während des Migrationsvorgangs kann eine Service Pack-Migration nur in ganz bestimmten Phasen abgebrochen werden:
Bis zum Beginn des Paketupgrades erfolgen auf dem System nur minimale Änderungen, beispielsweise für Services und Repositorys. Stellen Sie
/etc/zypp/repos.d/*
wieder her, um zum vorherigen Zustand zurückzukehren.Nach Beginn des Paketupgrades können Sie mithilfe eines Snapper-Snapshots zum vorherigen Zustand zurückkehren (siehe Kapitel 7, Systemwiederherstellung und Snapshot-Verwaltung mit Snapper).
Nach der Auswahl des Migrationsziels ändert das SUSE Customer Center die Repository-Daten. Wenn Sie diesen Zustand manuell zurücksetzen möchten, verwenden Sie
SUSEConnect
--rollback
.
21.4 Upgraden mit dem Werkzeug für die Online-Migration (YaST) #
Für eine Service Pack-Migration mit YaST verwenden Sie das Tool für die
. YaST installiert standardmäßig keine Pakete aus Repositorys von Drittanbietern. Wurde ein Paket aus einem Repository eines Drittanbieters installiert, verhindert YaST, dass das Paket durch das gleiche Paket aus SUSE ersetzt wird.Bei der SP-Migration installiert YaST alle empfohlenen Pakete. Vor allem bei benutzerdefinierten Minimalinstallationen kann dies den Installationsumfang auf dem System beträchtlich erhöhen.
Möchten Sie dieses Standardverhalten ändern und nur erforderliche Pakete erlauben, passen Sie die Option solver.onlyRequires
in /etc/zypp/zypp.conf
an.
solver.onlyRequires = true
Bearbeiten Sie auch die Datei /etc/zypp/zypper.conf
und ändern Sie die Option installRecommends
.
installRecommends=false
Dadurch ändert sich das Verhalten sämtlicher Paketvorgänge, z. B. Installationen von Patches oder neuen Paketen.
Gehen Sie wie folgt vor, um die Service Pack-Migration zu starten:
Deaktivieren Sie alle nicht verwendeten Erweiterungen des Registrierungsservers, damit künftig keine Abhängigkeitskonflikte auftreten. Falls Sie eine Erweiterung übersehen, erkennt YaST später die nicht verwendeten Erweiterungs-Repositorys, die dann automatisch deaktiviert werden.
Wenn Sie bei einer GNOME-Sitzung auf dem zu aktualisierenden Computer angemeldet sind, wechseln Sie zu einer Textkonsole. Die Aktualisierung aus einer GNOME-Sitzung heraus wird nicht empfohlen. Dies gilt nicht, wenn Sie über einen Remote-Computer angemeldet sind (es sei denn, Sie führen eine VNC-Sitzung mit GNOME aus).
Als LTSS-Abonnent müssen Sie das LTSS-Repository deaktivieren. Dies ist nicht mit YaST möglich. Führen Sie stattdessen diese Befehle aus und geben Sie die Versionsnummer des installierten Repositorys an:
tux >
sudo
SUSEConnect -d -p SLES-LTSS/12.2/x86_64tux >
sudo
zypper ref -sWeitere Informationen finden Sie im Support-Artikel Zypper-Migration für LTSS-Repository führt zum Fehler „Keine Migration verfügbar“ (https://www.suse.com/support/kb/doc/?id=7022381).
Installieren Sie das Paket yast2-migration und seine abhängigen Komponenten (in YaST unter › ).
Starten Sie YaST neu, damit das neu installierte Modul im Kontrollzentrum angezeigt wird.
Wählen Sie in YaST die Option SUSE Linux Enterprise Server befindet sich dieses Modul unter oder .) YaST zeigt die möglichen Migrationsziele und eine Zusammenfassung an. Falls für Ihr System mehrere Migrationsziele verfügbar sind, wählen Sie eines davon in der Liste aus.
. (Je nach der upzugradenden Version vonWählen Sie ein Migrationsziel in der Liste aus und setzen Sie den Vorgang mit
fort.Falls das Migrationstool Aktualisierungs-Repositorys anbietet, sollten Sie mit
fortfahren.Falls das Tool für die Online-Migration alte Repositorys von DVD oder einem lokalen Server findet, empfiehlt es sich dringend, diese zu deaktivieren. Alte Repositorys stammen aus einem früheren SP. Alle alten Repositorys aus SCC oder SMT werden automatisch entfernt.
Prüfen Sie die Zusammenfassung und klicken Sie dann auf
, um mit der Migration fortzufahren. Bestätigen Sie die Migration mit .Starten Sie Ihr System nach einer erfolgreichen Migration neu.
21.5 Upgraden mit zypper #
Für eine Service Pack-Migration mit Zypper verwenden Sie das Kommandozeilenwerkzeug zypper
migration
im Paket
zypper-migration-plugin.
Bei der SP-Migration installiert YaST alle empfohlenen Pakete. Vor allem bei benutzerdefinierten Minimalinstallationen kann dies den Installationsumfang auf dem System beträchtlich erhöhen.
Möchten Sie dieses Standardverhalten ändern und nur erforderliche Pakete erlauben, passen Sie die Option solver.onlyRequires
in /etc/zypp/zypp.conf
an.
solver.onlyRequires = true
Bearbeiten Sie auch die Datei /etc/zypp/zypper.conf
und ändern Sie die Option installRecommends
.
installRecommends=false
Dadurch ändert sich das Verhalten sämtlicher Paketvorgänge, z. B. Installationen von Patches oder neuen Paketen. Wenn Sie das Verhalten von Zypper für einen einzelnen Aufruf ändern möchten, fügen Sie in Ihrer Kommandozeile den Parameter --no-recommends
hinzu.
Gehen Sie wie folgt vor, um die Service Pack-Migration zu starten:
Wenn Sie bei einer GNOME-Sitzung auf dem zu aktualisierenden Computer angemeldet sind, wechseln Sie zu einer Textkonsole. Die Aktualisierung aus einer GNOME-Sitzung heraus wird nicht empfohlen. Dies gilt nicht, wenn Sie über einen Remote-Computer angemeldet sind (es sei denn, Sie führen eine VNC-Sitzung mit GNOME aus).
Falls noch nicht erfolgt, registrieren Sie Ihren SUSE Linux Enterprise-Rechner:
sudo
SUSEConnect
--regcode YOUR_REGISTRATION_CODEAls LTSS-Abonnent müssen Sie das LTSS-Repository deaktivieren. Führen Sie diese Befehle aus und geben Sie die Versionsnummer des installierten Repositorys an:
tux >
sudo
SUSEConnect -d -p SLES-LTSS/12.2/x86_64tux >
sudo
zypper ref -sWeitere Informationen finden Sie im Support-Artikel Zypper-Migration für LTSS-Repository führt zum Fehler „Keine Migration verfügbar“ (https://www.suse.com/support/kb/doc/?id=7022381).
Installieren Sie die neuesten Aktualisierungen:
sudo
zypper
patchInstallieren Sie das Paket zypper-migration-plugin und dessen Abhängigkeiten:
sudo
zypper
in zypper-migration-pluginFühren Sie
zypper
migration
aus:tux >
sudozypper
migration Executing 'zypper patch-check' Refreshing service 'SUSE_Linux_Enterprise_Server_12_x86_64'. Loading repository data... Reading installed packages... 0 patches needed (0 security patches) Available migrations: 1 | SUSE Linux Enterprise Server 12 SP1 x86_64 2 | SUSE Linux Enterprise Server 12 SP2 x86_64Beachten Sie folgende Hinweise zum Migrationsvorgang:
Falls für Ihr System mehrere Migrationsziele verfügbar sind, können Sie in Zypper einen SP in der Liste auswählen. Dies entspricht dem Überspringen eines oder mehrerer SPs. Denken Sie daran, dass die Online-Migration für Basisprodukte (SLES, SLED) nur zwischen den SPs einer Hauptversion verfügbar ist.
Zypper verwendet standardmäßig die Option
--no-allow-vendor-change
, die anzypper
dup
weitergeleitet wird. Wurde ein Paket aus einem Repository eines Drittanbieters installiert, verhindert diese Option, dass das Paket durch das gleiche Paket aus SUSE ersetzt wird.Falls Zypper alte Repositorys von DVD oder einem lokalen Server findet, empfiehlt es sich dringend, diese zu deaktivieren. Alte SCC- oder SMT-Repositorys werden automatisch entfernt.
Prüfen Sie alle Änderungen, insbesondere die Pakete, die entfernt werden. Geben Sie
y
ein, um fortzufahren (die Anzahl der Pakete, die aktualisiert werden können, ist von System zu System unterschiedlich):266 packages to upgrade, 54 to downgrade, 17 new, 8 to reinstall, 5 to remove, 1 to change arch. Overall download size: 285.1 MiB. Already cached: 0 B After the operation, additional 139.8 MiB will be used. Continue? [y/n/? shows all options] (y):
Verwenden Sie zum Blättern in Ihrer Shell die Tasten Umschalttaste–Bild ↑ oder Umschalttaste–Bild ↓ .
Starten Sie Ihr System nach einer erfolgreichen Migration neu.
21.6 Upgraden mit einfachem Zypper #
Wenn Sie die YaST-Migration oder die Zypper-Migration nicht verwenden können, haben Sie die Möglichkeit, die Migration mit einer einfachen Zypper-Version (Plain Zypper) und einigen manuellen Interaktionen durchzuführen. Gehen Sie wie folgt vor, um eine Service Pack-Migration zu starten:
Wenn Sie bei einer GNOME-Sitzung auf dem zu aktualisierenden Computer angemeldet sind, wechseln Sie zu einer Textkonsole. Die Aktualisierung aus einer GNOME-Sitzung heraus wird nicht empfohlen. Dies gilt nicht, wenn Sie über einen Remote-Computer angemeldet sind (es sei denn, Sie führen eine VNC-Sitzung mit GNOME aus).
Aktualisieren Sie die Paketverwaltungstools mit den alten SUSE Linux Enterprise-Repositorys:
sudo
zypper
patch --updatestack-onlyWenn das System registriert wurde, muss seine Registrierung aufgehoben werden:
sudo
SUSEConnect
--de-registerEntfernen Sie die alten Installationsquellen und Repositorys und passen Sie die Repositorys von Drittanbietern an.
Fügen Sie die neuen Installationsquellen – ob lokale oder Remote-Quellen – hinzu (Informationen zum Platzhalter REPOSITORY finden Sie unter Abschnitt 18.6, „Repository-Modell“):
sudo
zypper
addrepo REPOSITORYSie können auch das SUSE Customer Center oder das Subscription Management Tool verwenden. Das Kommando für SUSE Linux Enterprise 12 SP1 unter x86-64 lautet wie folgt:
sudo
SUSEConnect
-p SLES/12.2/x86_64 OPTIONSDenken Sie daran, dass architekturübergreifende Upgrades nicht unterstützt werden.
Zypper zeigt einen eventuellen Konflikt zwischen dem bisherigen und dem neuen Kernel an. Zum Fortsetzen wählen Sie Lösung 1.
Problem: product:SLES-12.2-0.x86_64 conflicts with kernel < 4.4 provided by kernel-default-VERSION Solution 1: Following actions will be done: replacement of kernel-default-VERSION with kernel-default-VERSION deinstallation of kernel-default-VERSION Solution 2: do not install product:SLES-12.2-0.x86_64
Schließen Sie die Migration ab:
sudo
zypper
ref -f -s sudozypper
dup --no-allow-vendor-change --no-recommendsDas erste Kommando aktualisiert alle Services und Repositorys. Das zweite Kommando führt ein Distributionsupgrade durch. Hier sind die beiden letzten Optionen wichtig:
-no-allow-vendor-change
stellt sicher, dass RPMs von Drittanbietern keine RPMs aus dem Basissystem überschreiben. Die Option--no-recommends
sorgt dafür, dass Pakete, die während der Erstinstallation abgewählt wurden, nicht erneut hinzugefügt werden.
21.7 Rollback eines Service Packs #
Falls ein Service Pack nicht ordnungsgemäß ausgeführt wurde, unterstützt SUSE Linux Enterprise die Zurücksetzung des Systems auf den Zustand vor Beginn der Service Pack-Migration. Voraussetzung hierfür ist eine Btrfs-Root-Partition mit aktivierten Snapshots (beim Installieren von SLES 12 standardmäßig aktiviert). Weitere Informationen finden Sie in Kapitel 7, Systemwiederherstellung und Snapshot-Verwaltung mit Snapper.
Rufen Sie eine Liste sämtlicher Snapper-Snapshots ab:
sudo snapper list
Suchen Sie in der Ausgabe nach dem Snapshot, der unmittelbar vor Beginn der Service Pack-Migration gestartet wurde. Die Spalte
zeigt eine zugehörige Erläuterung und der Snapshot wird in der Spalte alswichtig
gekennzeichnet. Notieren Sie die Snapshot-Nummer in der Spalte und das entsprechende Datum in der Spalte .Booten Sie das System neu. Wählen Sie im Bootmenü die Option
und wählen Sie den Snapshot mit dem notierten Datum und der Nummer aus dem vorangegangenen Schritt aus. Ein zweites Bootmenü (das Bootmenü aus dem Snapshot) wird geladen. Wählen Sie den Eintrag aus, der mitSLES 12
beginnt, und booten Sie ihn.Das System bootet im vorherigen Zustand, wobei die Systempartition schreibgeschützt eingehängt ist. Melden Sie sich als
root
an und prüfen Sie, ob Sie den richtigen Snapshot ausgewählt haben. Prüfen Sie außerdem, ob alle Vorgänge wie erwartet ablaufen. Beachten Sie, dass der Funktionsumfang ggf. eingeschränkt ist, da das Root-Dateisystem schreibgeschützt eingehängt wurde.Falls Probleme auftreten oder Sie den falschen Snapshot gebootet haben, booten Sie das System neu und wählen Sie einen anderen Snapshot zum Booten aus. Bis zu diesem Zeitpunkt wurden noch keine permanenten Änderungen vorgenommen. Falls der richtige Snapshot ausgewählt wurde und dieser Snapshot einwandfrei arbeitet, lassen Sie die Änderungen mit dem folgenden Befehl dauerhaft in Kraft treten:
snapper rollback
Booten Sie anschließend neu. Wählen Sie im Bootbildschirm den Standard-Booteintrag. Das neu eingesetzte System wird erneut gebootet.
Prüfen Sie, ob die Repository-Konfiguration ordnungsgemäß zurückgesetzt wurde. Prüfen Sie außerdem, ob alle Produkte fehlerfrei registriert wurden. Falls eine dieser Bedingungen nicht erfüllt ist, kann das System später eventuell nicht mehr aktualisiert werden oder das System wird mit den falschen Paket-Repositorys aktualisiert.
Prüfen Sie vor Beginn dieses Verfahrens, ob das System auf das Internet zugreifen kann.
Aktualisieren Sie die Dienste und Repositorys mit
sudo zypper ref -fs
Erstellen Sie eine Liste der aktiven Repositorys mit
sudo zypper lr
Prüfen Sie die Ausgabe dieses Befehls sorgfältig. Es sollten keine Dienste und Repositorys aufgelistet werden, die für die Aktualisierung eingefügt wurden. Wenn Sie beispielsweise ein Rollback einer Service Pack-Migration von SLES 12 SP1 auf SLES 12 SP2 vornehmen, darf diese Liste nicht die Repositorys
SLES12-SP2-Pool
undSLES12-SP2-Updates
enthalten, sondern muss dieSP1
-Versionen aufweisen.Falls falsche Repositorys aufgelistet werden, löschen Sie diese Repositorys und ersetzen Sie sie ggf. durch die richtigen Versionen für die Produkt- oder Service Pack-Version. Eine Liste der Repositorys für die unterstützten Migrationspfade finden Sie unter Abschnitt 18.6, „Repository-Modell“.
Prüfen Sie abschließend den Registrierungsstatus aller installierten Produkte mit
SUSEConnect --status
Alle Produkte sollten als
Registriert
aufgeführt werden. Ist dies nicht der Fall, reparieren Sie die Registrierung mitSUSEConnect --rollback
Damit haben Sie das System wieder auf den Zustand zurückgesetzt, der vor Beginn der Service Pack-Migration vorlag.