IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

Blog de CinéPhil

[Actualité] Comment upgrader OpenSuse avec Zypper ?

Noter ce billet
par , 03/04/2019 à 23h40 (6912 Affichages)
Petit tutoriel rapide sur la montée de version de la distribution OpenSuse en ligne de commande avec l'utilitaire zypper...

Préambule
Vous pourrez trouver des guides plus complets sur Internet, notamment celui de la documentation officielle.
Je donne ici la procédure simplifiée, en guise d'aide mémoire.

Cette procédure a parfaitement fonctionné sur un serveur dédié Kimsufi pour migrer de la version Leap-42.3 à la version Leap-15.0.

Si vous avez une partition dédiée pour /home, inutile de sauvegarder vos données personnelles... mais c'est toujours mieux d'avoir des sauvegardes régulières, bien sûr !

Tout ce qui suit est évidemment à faire en root.

Version du 03/12/2020 : Ajout de la suppression des vieux dépôts inutiles et d'un update après l'upgrade

1. Mise à jour de la version actuelle
a) Lister les dépôts existants

zypper lr

b) Si le dépôt update est absent de la liste, l'ajouter
Adaptez la version dans la commande ci-dessous à la version actuelle sur votre machine.
Vous pouvez trouver le lien exact vers les versions disponibles ici. Les dépôts principaux sont dans le dossier "distribution" et les dépôts update sont dans le dossier "update" (La Palice, sors de ce corps ! ).

Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
zypper addrepo --check --refresh --name 'openSUSE-Leap-42.3_update' http://download.opensuse.org/update/leap/42.3/oss/ repo-update

c) Mettre à jour le système actuel

Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
zypper refresh
zypper update

Après la mise à jour, j'ai redémarré le serveur par sécurité puisqu'il y avait eu une montée de version de kernel. Je l'ai fait avec la console d'administration de Kimsufi mais vous pouvez le faire en ligne de commande :

reboot
2. Migrer vers la version immédiatement supérieure
D'après la doc, il ne faut pas sauter de version.

a) Désactiver les repo actuels

zypper modifyrepo --all --disable

b) Ajouter les nouveaux dépôts

Là aussi, adaptez la version dans la commande ci-dessous à la version cible pour votre machine.

On en profite pour installer directement les dépôts principaux et update en oss et non-oss.

Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
zypper addrepo --name "openSUSE-Leap-15.0-oss" http://download.opensuse.org/distribution/leap/15.0/repo/oss/ repo-Leap-15.0-oss
zypper addrepo --name "openSUSE-Leap-15.0-non-oss" http://download.opensuse.org/distribution/leap/15.0/repo/non-oss/ repo-Leap-15.0-non-oss
zypper addrepo --name "openSUSE-Leap-15.0-Update-oss" http://download.opensuse.org/update/leap/15.0/oss/ repo-Leap-15.0-update
zypper addrepo --name "openSUSE-Leap-15.0-Update-non-oss" http://download.opensuse.org/update/leap/15.0/non-oss/ repo-Leap-15.0-update-non-oss

c) Récupérez la description du contenu des dépôts

zypper ref

d) Téléchargez et installez les paquets

zypper dup

e) Redémarrez la machine

reboot

Si tout s'est bien passé, vous avez votre machine à jour avec la nouvelle version mais il peut y avoir eu des mises à jours dans les dépôts update. Il convient donc de refaire un update mais on va commencer par un nettoyage des dépôts...

f) Nettoyage des dépôts
Les dépôts de la version précédente ne sont plus utiles.

On commence par afficher tous les dépôts :
Vous obtenez un tableau dont seuls les dépôts de la dernière version sont "Enabled".
Si vous avez chargé d'autres dépôts que ceux de Opensuse, pensez de suite à les réactiver avec la commande zypper mr -e [nom ou alias du dépôt] (exemple avec un dépôt Git) :
Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
zypper mr -e gitlab_gitlab-ce

g) Suppression des dépôts obsolètes
On peut supprimer tous les dépôts de la version précédente avec la commande zypper rr [nom ou alias du dépôt]A la suite de zypper rr, on peut donner toute la liste des dépôts à supprimer. Exemple (au moment où j'écris, je viens de passer des serveurs en Opensuse Leap 15.2 donc je supprime les 15.1) :
Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
zypper rr openSUSE-Leap-15.1-Non-Oss openSUSE-Leap-15.1-Oss

h) Installer les dernières mises à jour depuis la publication de la version
Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
zypper refresh
zypper update

Et cette fois, votre serveur est vraiment à jour.

Envoyer le billet « Comment upgrader OpenSuse avec Zypper ? » dans le blog Viadeo Envoyer le billet « Comment upgrader OpenSuse avec Zypper ? » dans le blog Twitter Envoyer le billet « Comment upgrader OpenSuse avec Zypper ? » dans le blog Google Envoyer le billet « Comment upgrader OpenSuse avec Zypper ? » dans le blog Facebook Envoyer le billet « Comment upgrader OpenSuse avec Zypper ? » dans le blog Digg Envoyer le billet « Comment upgrader OpenSuse avec Zypper ? » dans le blog Delicious Envoyer le billet « Comment upgrader OpenSuse avec Zypper ? » dans le blog MySpace Envoyer le billet « Comment upgrader OpenSuse avec Zypper ? » dans le blog Yahoo

Mis à jour 14/10/2021 à 14h15 par CinePhil

Catégories
Sans catégorie

Commentaires

  1. Avatar de Madmac
    • |
    • permalink
    Éviter de la faire si vous utiliser 2 moniteurs. Leap 15 est sérieusement buggé!
  2. Avatar de CinePhil
    • |
    • permalink
    Citation Envoyé par Madmac
    Éviter de la faire si vous utiliser 2 moniteurs. Leap 15 est sérieusement buggé!
    En l'occurrence, j'ai fait ça sur un serveur Kimsufi donc accessible en console SSH, sans interface graphique.
    Le seul problème que j'ai eu est le blocage d'Apache par le firewall, ce qui m'a causé quelques frayeurs.
  3. Avatar de Madmac
    • |
    • permalink
    À la base OpenSuse est intéressant pour faire ce genre de truc. Mais j'ai de plus en plus l'impression qu'ils nous prennent uniquement pour des Béta testeur. J'ai régulièrement des message qui me disent que j'ai 1500 mise-à-jour et des poussières à`faire. Ils ont même installé Leap15 sur mon grub. Et il n'y a pas de versions personnel de Suse.

    Je commence sérieusement me tourner vers Red Hat. J'adore Linux, mais j'ai besoin d'un système stable.
  4. Avatar de CinePhil
    • |
    • permalink
    Citation Envoyé par Madmac
    À la base OpenSuse est intéressant pour faire ce genre de truc. Mais j'ai de plus en plus l'impression qu'ils nous prennent uniquement pour des Béta testeur. J'ai régulièrement des message qui me disent que j'ai 1500 mise-à-jour et des poussières à`faire. Ils ont même installé Leap15 sur mon grub. Et il n'y a pas de versions personnel de Suse.

    Je commence sérieusement me tourner vers Red Hat. J'adore Linux, mais j'ai besoin d'un système stable.
    J'utilise habituellement Mageia... depuis Mandrake 7 ; ça ne me rajeunit pas !

    Au boulot la quasi totalité de nos serveurs est sous OpenSuse et j'ai une relative habitude de cette distribution... en mode console.

    Pour mon serveur chez Kimsufi, Mageia n'était pas disponible, OpenSuse oui. J'ai donc naturellement opté pour OpenSuse.

    Red Hat fut ma première découverte de Linux, avant Mandrake. J'administre aussi deux serveurs OracleLinux au boulot. Cette distribution est une customisation de Red Hat par Oracle, en principe optimisée pour son SGBD Oracle Database. Nos premiers serveurs Oracle 11GR2 étaient sous Red Hat et en upgradant en Oracle 12, nous avons choisi de passer à OracleLinux qui est gratuit.