5 Mise à niveau en ligne #
SUSE offre un outil graphique intuitif et un outil de ligne de commande simple pour effectuer la mise à niveau d'un système en cours d'exécution vers un nouveau Service Pack. Ces outils permettent un « retour à l'état initial » des Service Packs et bien plus encore. Ce chapitre fournit des instructions étape par étape sur la mise à niveau d'un Service Pack à l'aide de ces outils.
5.1 Présentation conceptuelle #
SUSE publie régulièrement de nouveaux Service Packs pour la gamme de produits SUSE Linux Enterprise. Pour faciliter la migration vers un nouveau Service Pack et minimiser les temps hors service, SUSE prend en charge la migration en ligne pendant que le système est en cours d'exécution.
À partir de SLE 12, YaST Wagon a été remplacé par la migration YaST (pour l'interface graphique) et la migration Zypper (pour la ligne de commande). Les avantages sont les suivants :
Le système est toujours dans un état défini jusqu'à la mise à jour du premier RPM.
L'annulation est possible jusqu'à la mise à jour du premier RPM.
La récupération est simple en cas d'erreur.
Il est possible d'effectuer un « retour à l'état initial » au moyen des outils système, sans nécessiter de sauvegarde ou de restauration.
Tous les dépôts actifs sont utilisés.
Il est possible d'ignorer un Service Pack.
La migration en ligne est prise en charge uniquement pour la migration des Service Packs. La migration en ligne n'est pas prise en charge pour la mise à niveau vers les nouvelles versions majeures. Pour plus de détails, reportez-vous au Chapitre 1, Voies et méthodes de mise à niveau.
Utilisez la migration hors ligne pour mettre à niveau vers une nouvelle version majeure. Pour plus de détails, reportez-vous au Chapitre 4, Mise à niveau en mode hors ligne.
Si le système à mettre à niveau est un client SUSE Manager, l'opération ne peut pas être effectuée par la migration en ligne YaST ni par la migration Zypper
. Utilisez plutôt la procédure de migration de client. Elle est décrite dans le manuel
SUSE Manager Upgrade Guide (Guide de mise à niveau de SUSE Manager).
5.2 Workflow de migration des Service Packs #
Une migration de Service Pack peut être exécutée à l'aide des outils YaST, zypper
ou AutoYaST.
Avant de pouvoir démarrer la migration d'un Service Pack, votre système doit être enregistré auprès du SUSE Customer Center ou d'un serveur RMT local. Il est également possible d'utiliser SUSE Manager.
Quelle que soit la méthode utilisée, la migration de Service Packs comporte les étapes suivantes :
L'identification de cibles de migration possibles sur vos systèmes enregistrés
La sélection d'une cible de migration
La demande et l'activation de nouveaux dépôts
L'exécution de la migration
La liste des cibles de migration dépend des produits que vous avez installés et enregistrés. Si vous avez une extension installée pour laquelle le nouveau Service Pack n'est pas encore disponible, il se peut qu'aucune cible de migration ne vous soit proposée.
La liste des cibles de migration disponibles pour votre hôte sera toujours récupérée à partir du SUSE Customer Center et dépend des produits ou des extensions installées.
5.3 Annulation de la migration d'un Service Pack #
La migration d'un Service Pack peut uniquement être annulée à certains stades au cours du processus de migration :
Jusqu'au démarrage de la mise à niveau du paquetage, les modifications sur le système sont minimes et concernent, par exemple, les services et dépôts. Restaurez
/etc/zypp/repos.d/*
pour revenir à l'état précédent.Après le démarrage de la mise à niveau du paquetage, vous pouvez revenir à l'état précédent à l'aide d'un instantané Snapper (reportez-vous au Chapter 10, System recovery and snapshot management with Snapper).
Une fois la cible de migration sélectionnée, SUSE Customer Center modifie les données du dépôt. Pour rétablir cet état manuellement, utilisez
SUSEConnect
--rollback
.
5.4 Mise à niveau à l'aide de l'outil de migration en ligne (YaST) #
Pour effectuer une migration de Service Packs à l'aide de YaST, utilisez l'outil de
. Par défaut, YaST n'installe pas les paquetages à partir d'un dépôt tiers. Si un paquetage a été installé à partir d'un dépôt tiers, YaST empêche le remplacement des paquetages par les mêmes provenant de SUSE.Lorsque vous effectuez la migration de Service Packs, YaST installe tous les paquetages recommandés. En particulier dans le cas d'installations minimales personnalisées, cela peut augmenter considérablement la taille de l'installation sur le système.
Pour modifier ce comportement par défaut et autoriser uniquement les paquetages requis, réglez l'option solver.onlyRequires
dans /etc/zypp/zypp.conf
.
solver.onlyRequires = true
En outre, modifiez le fichier /etc/zypp/zypper.conf
et changez l'option installRecommends
.
installRecommends=false
Cette opération modifie le comportement de toutes les opérations de paquetages, telles que l'installation de correctifs ou de nouveaux paquetages. Afin de modifier le comportement de Zypper pour un seul appel, utilisez le paramètre --no-recommends
.
Pour démarrer la migration de Service Packs, procédez comme suit :
Désactivez toutes les extensions non utilisées sur votre serveur d'enregistrement pour éviter les futurs conflits de dépendance. Si vous oubliez une extension, YaST détectera ultérieurement les dépôts d'extension inutilisés et les désactivera.
Si vous êtes connecté à une session GNOME en cours d'exécution sur la machine que vous allez mettre à jour, basculez vers une console de texte. L'exécution de la mise à jour à partir d'une session GNOME n'est pas recommandée. Notez que cela ne s'applique pas lorsque vous êtes connecté à partir d'une machine distante (sauf si vous exécutez une session VNC avec GNOME).
Exécutez la mise à jour en ligne de YaST pour obtenir les dernières mises à jour des paquetages de votre système.
Installez le paquetage yast2-migration et ses dépendances (dans YaST sous › ).
Redémarrez YaST, car dans le cas contraire, le nouveau module installé ne s'affiche pas dans SUSE Control Center.
Dans YaST, choisissez la SUSE Linux Enterprise Server (SLES) que vous mettez à niveau, ce module est classé comme ou ). YaST affiche les cibles de migration possibles ainsi qu'un récapitulatif. Si plusieurs cibles de migration sont disponibles pour votre système, sélectionnez-en une dans la liste.
(selon la version deSélectionnez une cible de migration à partir de la liste et cliquez sur
.Si l'outil de migration propose des dépôts de mise à jour, il est recommandé de cliquer sur
.Si l'outil de migration en ligne détecte des dépôts obsolètes provenant d'un DVD ou d'un serveur local, il est vivement recommandé de les désactiver. Les dépôts obsolètes proviennent d'un ancien Service Pack. Les anciens dépôts du SUSE Customer Center ou de RMT sont supprimés automatiquement.
Vérifiez le récapitulatif et procédez à la migration en cliquant sur
. Confirmez en cliquant sur (Démarrer la mise à jour).Une fois la migration réussie, redémarrez votre système.
5.5 Mise à niveau avec zypper #
Pour effectuer une migration de Service Packs à l'aide de Zypper, utilisez l'outil de ligne de commande zypper
migration
du paquetage zypper-migration-plugin.
Lorsque vous effectuez la migration de Service Packs, YaST installe tous les paquetages recommandés. En particulier dans le cas d'installations minimales personnalisées, cela peut augmenter considérablement la taille de l'installation sur le système.
Pour modifier ce comportement par défaut et autoriser uniquement les paquetages requis, réglez l'option solver.onlyRequires
dans /etc/zypp/zypp.conf
.
solver.onlyRequires = true
En outre, modifiez le fichier /etc/zypp/zypper.conf
et changez l'option installRecommends
.
installRecommends=false
Cette opération modifie le comportement de toutes les opérations de paquetages, telles que l'installation de correctifs ou de nouveaux paquetages. Afin de modifier le comportement de Zypper pour un seul appel, utilisez le paramètre --no-recommends
.
Pour démarrer la migration de Service Packs, procédez comme suit :
Si vous êtes connecté à une session GNOME en cours d'exécution sur la machine que vous allez mettre à jour, basculez vers une console de texte. L'exécution de la mise à jour à partir d'une session GNOME n'est pas recommandée. Notez que cela ne s'applique pas lorsque vous êtes connecté à partir d'une machine distante (sauf si vous exécutez une session VNC avec GNOME).
Enregistrez votre machine SUSE Linux Enterprise si ce n'est pas déjà fait :
>
sudo
SUSEConnect
--regcode YOUR_REGISTRATION_CODEDémarrez la migration :
>
sudo
zypper migration
Quelques remarques concernant le processus de migration :
Si plusieurs cibles de migration sont disponibles pour votre système, Zypper vous autorise à sélectionner un Service Pack dans la liste. Cette opération revient à ignorer un ou plusieurs Service Packs. N'oubliez pas, la migration en ligne pour les produits de base (SLES, SLED) reste uniquement disponible entre les Service Packs d'une version majeure.
Par défaut, Zypper utilise l'option
--no-allow-vendor-change
transmise àzypper
dup
Si un paquetage a été installé à partir d'un dépôt tiers, cette option empêche le remplacement des paquetages par les mêmes provenant de SUSE.Si Zypper détecte des dépôts obsolètes provenant d'un DVD ou d'un serveur local, il est vivement recommandé de les désactiver. Les anciens dépôts du SUSE Customer Center ou de RMT sont supprimés automatiquement.
Passez en revue toutes les modifications, en particulier les paquetages qui vont être supprimés. Poursuivez en saisissant
y
(le nombre exact de paquetages à mettre à niveau peut varier sur votre système) :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):
Utilisez les touches de défilement Maj–Page ↑ ou Maj–Page ↓ dans votre shell.
Une fois la migration réussie, redémarrez votre système.
5.6 Mise à niveau à l'aide de la version ordinaire de Zypper #
Si votre système n'est pas enregistré parce que vous n'avez pas accès à Internet ou à un serveur d'enregistrement, la migration vers un nouveau Service Pack n'est pas possible avec la migration YaST ou la migration zypper
. Dans ce cas, vous pouvez toujours migrer vers un nouveau Service Pack avec la version ordinaire de Zypper et certaines interactions manuelles.
Ce chemin de migration vers un nouveau Service Pack est uniquement pris en charge pour les systèmes non enregistrés qui ne peuvent pas accéder à Internet ou à un serveur d'enregistrement. Ce peut être le cas, par exemple, pour les machines d'un réseau bénéficiant d'une protection spéciale. Si vous disposez d'un système enregistré, utilisez la migration YaST ou Zypper.
Ce chemin de migration nécessite que le système que vous allez migrer ait accès aux sources d'installation. Pour ce faire, vous pouvez, par exemple, configurer un serveur RMT ou un serveur SLP.
Le système doit également avoir accès à un dépôt de mises à jour actualisé pour la version du produit installé.
Si vous êtes connecté à une session graphique en cours d'exécution sur la machine que vous allez migrer, déconnectez-vous de cette session et basculez vers une console de texte. L'exécution de la mise à jour à partir d'une session graphique n'est pas recommandée. Notez que cela ne s'applique pas lorsque vous êtes connecté à partir d'une machine distante (sauf si vous exécutez une session VNC avec X).
Mettez à jour les outils de gestion des paquetages avec les anciens dépôts SUSE Linux Enterprise :
>
sudo
zypper
patch --updatestack-onlyProcurez-vous la liste des paquetages auxquels aucun dépôt n'est actuellement assigné (paquetages orphelins). Ces paquetages ne seront pas migrés et il n'est pas garanti qu'ils fonctionneront après la migration (en effet, d'autres paquetages dont ils dépendent risquent d'avoir été modifiés et de ne plus être compatibles). Pour obtenir cette liste, exécutez la commande :
>
sudo
zypper packages --orphanedParcourez la liste avec attention et supprimez tous les paquetages orphelins qui ne sont plus nécessaires. Prenez note de tous les paquetages orphelins restants, car cela vous sera utile ultérieurement pour effectuer une comparaison.
Pour obtenir la liste de tous les dépôts auxquels le système est actuellement abonné, exécutez la commande suivante :
>
sudo
zypper repos -uMettez à jour chaque URL de dépôt afin que son numéro de version du produit soit
15-SP4
. Par exemple, si l'URL d'un dépôt esthttp://rmt.example.com/repo/SUSE/Products/SLE-15-SP2-Product-SLES/x86_64/product/
remplacez-la par
http://rmt.example.com/repo/SUSE/Products/SLE-15-SP3-Product-SLES/x86_64/product/
Cette opération doit être effectuée pour tous les dépôts activés. Vous pouvez également envisager d'effectuer cette opération pour les dépôts actuellement désactivés, afin d'éviter que le système comporte des sources d'installation incorrectes lorsque vous les activerez ultérieurement.
Pour modifier les URL de dépôt, vous disposez des options suivantes :
Vous pouvez utiliser
› › . Sélectionnez un espace de stockage, puis cliquez sur pour effectuer le changement voulu. Répétez cette opération pour tous les dépôts.Vous pouvez utiliser Zypper. Supprimez l'ancien dépôt en exécutant la commande suivante :
>
sudo
zypper removerepo OLD_REPO_IDAjoutez ensuite le nouveau dépôt correspondant en exécutant la commande suivante :
>
sudo
zypper addrepo -f URL NAME-15-SP4Vous pouvez modifier les fichiers de configuration de dépôt dans
/etc/ZYpp/repos.d
. Chaque dépôt est représenté par un fichier de configuration. Vous devez modifier la valeur du paramètrebaseurl
dans chaque fichier.
Vérifiez vos modifications en exécutant
zypper repos-u
et mettez à jour les dépôts en exécutant :>
sudo
zypper refresh -f -sSi la mise à jour d'un dépôt échoue, vérifiez que l'URL saisie est correcte. Si vous ne parvenez pas à résoudre le problème, il est recommandé de désactiver le dépôt ayant échoué.
Si tous les dépôts sont correctement configurés, exécutez :
>
sudo
zypper refresh -f -sà nouveau pour vous assurer que tous les dépôts sont à jour.
Avant de commencer la migration, il est recommandé de procéder à un test d'exécution :
>
sudo
zypper dup -D --no-allow-vendor-change --no-recommendsLe paramètre
-D
permet d'effectuer une exécution directe qui simule la migration sans réellement modifier le système. Si des problèmes surviennent, corrigez-les avant de poursuivre. En cas de réussite du test d'exécution, procédez à la migration réelle en exécutant la commande suivante :>
sudo
zypper dup --no-allow-vendor-change --no-recommendsL'option
-no-allow-vendor-change
évite que des RPM tiers écrasent des RPM du système de base. L'option--no-recommends
permet de s'assurer que les paquetages désélectionnés au cours de l'installation initiale ne sont pas ajoutés à ce stade.Une fois que la migration est terminée et que le système a démarré avec la nouvelle version du Service Pack, relancez la recherche des paquetages orphelins :
>
sudo
zypper packages --orphanedComparez la nouvelle liste et celle que vous avez générée avant de démarrer la migration. Si de nouveaux paquetages apparaissent dans la liste, il se peut qu'ils aient été déplacés vers un autre module du nouveau Service Pack. Si vous n'aviez pas ce module dans l'installation précédente, le paquetage n'a pas été mis à jour.
Vous pouvez vérifier à quel module un paquetage appartient sur le site https://scc.suse.com/packages. Ajoutez les modules manquants à l'aide de
zypper addrepo
ou du module YaST Software Repositories (Dépôts logiciels YaST) et mettez à jour les paquetages orphelins ultérieurement en exécutant :>
sudo
zypper install --no-recommends LIST OF PACKAGESVous avez migré vers un nouveau Service Pack !
5.7 Restauration de l'état initial d'un Service Pack #
Si un Service Pack ne fonctionne pas pour vous, SUSE Linux Enterprise prend en charge le rétablissement de l'état qu'il avait avant le démarrage de la migration de ce Service Pack. Vous devez toutefois disposer d'une partition racine Btrfs avec des instantanés activés (il s'agit de la valeur par défaut depuis SLES 12). Reportez-vous au Chapter 10, System recovery and snapshot management with Snapper pour plus d'informations.
Obtenez une liste des instantanés Snapper :
>
sudo
snapper listPassez en revue la sortie pour localiser l'instantané créé juste avant le début de la migration du Service Pack. La colonne
contient une instruction correspondante et l'instantané est marqué commeimportant
dans la colonne . Mémorisez le numéro de l'instantané indiqué dans la colonne ainsi que la date reprise dans la colonne .Redémarrez le système. Dans le menu de démarrage, sélectionnez 15 SP4 et lancez-la.
(Démarrer le chargeur de démarrage à partir d'un instantané en lecture seule), puis choisissez l'instantané avec la date et le numéro mémorisé à l'étape précédente. Un second menu de démarrage (celui de l'instantané) est chargé. Sélectionnez l'entrée commençant par SLESLe système démarre en utilisant son état précédent avec la partition système montée en lecture seule. Connectez-vous en tant qu'utilisateur
root
et vérifiez si vous avez sélectionné l'instantané approprié. Vérifiez également que tout fonctionne comme prévu. Notez que puisque le système de fichiers root est monté en lecture seule, les fonctionnalités peuvent être limitées.En cas de problème ou si vous n'avez pas démarré l'instantané approprié, redémarrez et choisissez un autre instantané à partir duquel démarrer. À ce stade, aucune modification permanente n'a été effectuée. Si l'instantané est correct et fonctionne comme prévu, confirmez la modification pour la rendre définitive en exécutant la commande suivante :
>
sudo
snapper rollbackRedémarrez la machine. Dans l'écran de démarrage, sélectionnez l'entrée de démarrage par défaut pour redémarrer sur le système rétabli.
Vérifiez si la configuration du dépôt a bien été réinitialisée. En outre, vérifiez si tous les produits sont correctement enregistrés. Si l'un d'entre eux ne l'est pas, le système risque de ne plus pouvoir être mis à jour par la suite ou risque d'être mis à jour avec des dépôts de paquetage incorrects.
Assurez-vous que le système a accès à Internet avant de démarrer cette procédure.
Rafraîchissez les dépôts et les services en exécutant la commande suivante :
>
sudo
zypper ref -fsObtenez une liste des dépôts actifs en exécutant la commande suivante :
>
sudo
zypper lrVérifiez attentivement la sortie de cette commande. Aucun service ni dépôt ajoutés pour la mise à jour ne doivent être répertoriés. Par exemple, si vous effectuez un retour à l'état initial depuis SLES 15 SP4 vers SLES 15 GA, la liste doit contenir les dépôts
SLES15-GA
et non les dépôtsSLES15-SP4
.Si les dépôts répertoriés sont incorrects, supprimez-les et, si nécessaire, remplacez-les par les versions correspondant à votre version du produit ou du Service Pack. Pour obtenir la liste des dépôts et les chemins de migration pris en charge, reportez-vous à la Section 2.3, « Dépendances et cycles de vie des modules ». (Notez qu'une intervention manuelle ne devrait pas être nécessaire, étant donné que les dépôts doivent être mis à jour automatiquement, mais il est recommandé de vérifier et d'apporter les éventuelles corrections nécessaires).
Enfin, vérifiez l'état d'enregistrement de tous les produits installés en exécutant la commande suivante :
>
sudo
SUSEConnect --statusTous les produits doivent être signalés comme étant
Enregistré
. Si ce n'est pas le cas, réparez l'enregistrement en exécutant la commande>
sudo
SUSEConnect --rollback
Vous avez à présent réinitialisé le système à l'état capturé immédiatement avant le début de la migration du Service Pack.
5.8 Mise à niveau à l'aide de SUSE Manager #
SUSE Manager est une solution serveur pour fournir des mises à jour et des correctifs pour les clients SUSE Linux Enterprise. Il s'accompagne d'un ensemble d'outils et d'une interface utilisateur Web pour les tâches de gestion. Pour plus d'informations sur SUSE Manager, consultez l'adresse https://www.suse.com/products/suse-manager/.
La migration de Service Pack permet de migrer d'un Service Pack (SP) vers un autre au sein d'une version majeure (par exemple, à partir de SLES 15 GA vers SLES 15 SP4).
Si votre machine est gérée par SUSE Manager, mettez ce dernier à jour comme indiqué dans la documentation de SUSE Manager. La procédure de migration de client est décrite dans le manuel SUSE Manager Upgrade Guide (Guide de mise à niveau de SUSE Manager), disponible à l'adresse https://documentation.suse.com/suma/.
5.9 Mise à niveau d'openSUSE Leap vers SUSE Linux Enterprise Server #
Vous pouvez mettre à niveau une installation openSUSE Leap vers SUSE Linux Enterprise Server. La procédure est similaire à la Section 5.4, « Mise à niveau à l'aide de l'outil de migration en ligne (YaST) », mais nécessite quelques étapes supplémentaires. Avant d'exécuter cette procédure sur un système de production, il est recommandé de l'effectuer sur un système test répliquant votre configuration de production.
Pour connaître les versions d'openSUSE Leap prises en charge pour la migration, reportez-vous à la Section 1.2, « Chemins pris en charge pour la mise à niveau vers SLES 15 SP4 ».
openSUSE fournit plus de paquetages que SUSE Linux Enterprise Server. La plupart des paquetages supplémentaires sont disponibles via SUSE Package Hub et seront migrés. Tout paquetage supplémentaire qui n'est pas disponible via SUSE Package Hub ne recevra plus de mises à jour après la migration et doit donc être supprimés par la suite.
Veillez à ce que tous les paquetages dont vous avez besoin pour votre système soient disponibles dans les dépôts SUSE Linux Enterprise Server et SUSE Package Hub. Pour plus d'informations sur SUSE Package Hub, reportez-vous à l'adresse https://packagehub.suse.com/.
Pour migrer d'openSUSE Leap vers SUSE Linux Enterprise Server, procédez comme suit :
Basculez vers un TTY, par exemple en appuyant sur Ctrl–Alt–F1. Connectez-vous en tant qu'utilisateur
root
.Installez les paquetages yast2-registration et rollback-helper :
#
zypper in yast2-registration rollback-helper
Activez le service
rollback-helper
:#
systemctl enable rollback
Enregistrez le système auprès du SUSE Customer Center :
#
yast2 registration
Effectuez la migration :
#
yast2 migration
En cas de conflit de paquetages, YaST présente une liste de solutions parmi lesquelles choisir.
Supprimez les paquetages orphelins :
#
zypper rm $(zypper --no-refresh packages --orphaned | gawk '{print $5}' | tail -n +5)
Redémarrez le système :
#
reboot
Vous avez migré votre système vers SUSE Linux Enterprise Server.
Si vous rencontrez un problème après la migration, vous pouvez annuler cette dernière de la même façon que pour une mise à niveau de Service Pack. Pour plus d'instructions, reportez-vous à la Section 5.7, « Restauration de l'état initial d'un Service Pack ».