Accéder au contenuNavigation Accéder à la page : page précédente [raccourci clavier p] / page suivante [raccourci clavier n]
documentation.suse.com / Documentation de SUSE Linux Enterprise Server / Guide de mise à niveau / Mise à niveau en ligne
S'applique à SUSE Linux Enterprise Server 15 SP4

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.

Avertissement
Avertissement : migration en ligne non prise en charge pour les versions majeures

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.

Important
Important : mise à niveau des clients SUSE Manager

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 :

  1. L'identification de cibles de migration possibles sur vos systèmes enregistrés

  2. La sélection d'une cible de migration

  3. La demande et l'activation de nouveaux dépôts

  4. 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 :

  1. 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.

  2. 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).

  3. 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 migration en ligne. 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.

Note
Note : réduction de la taille de l'installation

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 :

  1. 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.

  2. 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).

  3. Exécutez la mise à jour en ligne de YaST pour obtenir les dernières mises à jour des paquetages de votre système.

  4. Installez le paquetage yast2-migration et ses dépendances (dans YaST sous Logiciels › Gestion des logiciels).

  5. Redémarrez YaST, car dans le cas contraire, le nouveau module installé ne s'affiche pas dans SUSE Control Center.

  6. Dans YaST, choisissez la migration en ligne (selon la version de SUSE Linux Enterprise Server (SLES) que vous mettez à niveau, ce module est classé comme système ou logiciel). 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.

  7. Sélectionnez une cible de migration à partir de la liste et cliquez sur Suivant.

  8. Si l'outil de migration propose des dépôts de mise à jour, il est recommandé de cliquer sur Oui.

  9. 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.

  10. Vérifiez le récapitulatif et procédez à la migration en cliquant sur Suivant. Confirmez en cliquant sur Start Update (Démarrer la mise à jour).

  11. 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.

Note
Note : réduction de la taille de l'installation

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 :

  1. 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).

  2. Enregistrez votre machine SUSE Linux Enterprise si ce n'est pas déjà fait :

    > sudo SUSEConnect --regcode YOUR_REGISTRATION_CODE
  3. Dé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.

  4. 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 MajPage ↑ ou MajPage ↓ dans votre shell.

  5. 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.

Important
Important : pour les systèmes non enregistrés uniquement

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.

Important
Important : sources d'installation

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é.

  1. 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).

  2. Mettez à jour les outils de gestion des paquetages avec les anciens dépôts SUSE Linux Enterprise :

    > sudo zypper patch --updatestack-only
  3. Procurez-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 --orphaned

    Parcourez 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.

  4. 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 -u

    Mettez à 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 est

    http://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 :

    1. Vous pouvez utiliser YaST › Logiciels › Dépôts de logiciels. Sélectionnez un espace de stockage, puis cliquez sur Modifier pour effectuer le changement voulu. Répétez cette opération pour tous les dépôts.

    2. Vous pouvez utiliser Zypper. Supprimez l'ancien dépôt en exécutant la commande suivante :

      > sudo zypper removerepo OLD_REPO_ID

      Ajoutez ensuite le nouveau dépôt correspondant en exécutant la commande suivante :

       > sudo zypper addrepo -f URL NAME-15-SP4
    3. Vous 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ètre baseurl dans chaque fichier.

  5. Vérifiez vos modifications en exécutant zypper repos-u et mettez à jour les dépôts en exécutant :

    > sudo zypper refresh -f -s

    Si 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.

  6. 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-recommends

    Le 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-recommends

    L'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.

  7. 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 --orphaned

    Comparez 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 PACKAGES
  8. Vous 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.

  1. Obtenez une liste des instantanés Snapper :

    > sudo snapper list

    Passez en revue la sortie pour localiser l'instantané créé juste avant le début de la migration du Service Pack. La colonne Description contient une instruction correspondante et l'instantané est marqué comme important dans la colonne Userdata. Mémorisez le numéro de l'instantané indiqué dans la colonne # ainsi que la date reprise dans la colonne Date.

  2. Redémarrez le système. Dans le menu de démarrage, sélectionnez Start boot loader from a read-only snapshot (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 SLES 15 SP4 et lancez-la.

  3. Le 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 rollback

    Redé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.

  4. 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.

    1. Rafraîchissez les dépôts et les services en exécutant la commande suivante :

      > sudo zypper ref -fs
    2. Obtenez une liste des dépôts actifs en exécutant la commande suivante :

      > sudo zypper lr

      Vé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ôts SLES15-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).

    3. Enfin, vérifiez l'état d'enregistrement de tous les produits installés en exécutant la commande suivante :

      > sudo SUSEConnect --status

      Tous 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 ».

Avertissement
Avertissement : certains paquetages OpenSUSE ne peuvent pas être migrés

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/.

Procédure 5.1 : Mise à niveau d'openSUSE Leap vers SUSE Linux Enterprise Server

Pour migrer d'openSUSE Leap vers SUSE Linux Enterprise Server, procédez comme suit :

  1. Basculez vers un TTY, par exemple en appuyant sur CtrlAltF1. Connectez-vous en tant qu'utilisateur root.

  2. Installez les paquetages yast2-registration et rollback-helper :

    # zypper in yast2-registration rollback-helper
  3. Activez le service rollback-helper :

    # systemctl enable rollback
  4. Enregistrez le système auprès du SUSE Customer Center :

    # yast2 registration
  5. Effectuez la migration :

    # yast2 migration

    En cas de conflit de paquetages, YaST présente une liste de solutions parmi lesquelles choisir.

  6. Supprimez les paquetages orphelins :

    # zypper rm $(zypper --no-refresh packages --orphaned | gawk '{print $5}' | tail -n +5)
  7. 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 ».