Fedora : Mettre à niveau (Upgrade) Fedora
Table des matières
Comme toute distribution, il arrive à un moment où le moment fatidique de l'upgrade arrive.
J'illustre ici une manip qui ma foi a toujours bien fonctionné pour les upgrades de Fedora (de 17 à 18, 18 à 19, et 19 à 20 et 20 à 21).
Dans un premier temps, avoir sa distribution à jour :
Puis, vérifier que le paquet fedup est installé :
Maintenant que le programme fedup est installé, on met à niveau en utilisant la commande fedup-cli :
A partir de Fedora 21, pour mettre à niveau, utiliser la commande --product en plus :
Si on n'utilise pas GNOME, le produit n'est pas workstation mais noproduct. Ceci, afin d'éviter l'installation de GNOME :
J'ajoute le paramètre --debuglog=fedup.log pour avoir une trace des opérations dans /var/log/fedup.log.
Quant au paramètre --reboot, il enchaîne juste après le téléchargement des paquets un redémarrage de la machine pour procéder à la mise à jour des RPM's.
Voici l'exemple utilisé pour Fedora 20 à 21 sur mon PC :
La commande à pour but de :
Pour effectuer la mise à niveau vers rawhide :
J'ajoute le paramètre --debuglog=fedup.log pour avoir une trace des opérations dans /var/log/fedup.log.
Quant au paramètre --reboot, il enchaîne juste après le téléchargement des paquets un redémarrage de la machine pour procéder à la mise à jour des RPM's.
On relance une petite mise à jour :
Et voila, Fedora a été mise à niveau !
Il se peut qu'un paquet présent dans la version n-1 soit en même version que dans la version n mais ait été refait plus de fois.
Exemple avec libreoffice-calc :
Fedora 19: libreoffice-calc-4.1.3.2-12.fc19.x86_64.rpm
Fedora 20: libreoffice-calc-4.1.3.2-9.fc20.x86_64.rpm
En mettant à jour de FC19 à FC20, yum considère que le paquet de Fedora 19 est plus "récent" car sa version est plus élevée que celle de Fedora 20.
Pour "resynchroniser" les paquets, on peut soit 1 par 1 faire un yum downgrade paquet.
Si on a une certaine quantité de paquets cela peut être long et il peut y avoir des soucis de dépendances.
Dans ce cas :
Il pet arriver qu'il y ait des doublons de paquets...
Dans ce cas, les supprimer via :
J'ai eu personnellement un souci avec un paquet récalcitrant indiquant :
J'ai pu le supprimer via l'attribut --setopt=tsflags=noscripts de yum :
Introduction
Comme toute distribution, il arrive à un moment où le moment fatidique de l'upgrade arrive.
J'illustre ici une manip qui ma foi a toujours bien fonctionné pour les upgrades de Fedora (de 17 à 18, 18 à 19, et 19 à 20 et 20 à 21).
Prérequis
Dans un premier temps, avoir sa distribution à jour :
Code BASH :
yum update
Puis, vérifier que le paquet fedup est installé :
Code BASH :
yum install fedup
Mise à niveau
Maintenant que le programme fedup est installé, on met à niveau en utilisant la commande fedup-cli :
Vers une version stable
A partir de Fedora 21, pour mettre à niveau, utiliser la commande --product en plus :
Code BASH :
fedup-cli --network VERSION --debuglog=fedup.log --reboot --product=workstation
Si on n'utilise pas GNOME, le produit n'est pas workstation mais noproduct. Ceci, afin d'éviter l'installation de GNOME :
Code BASH :
fedup-cli --network VERSION --debuglog=fedup.log --reboot --product=noproduct
J'ajoute le paramètre --debuglog=fedup.log pour avoir une trace des opérations dans /var/log/fedup.log.
Quant au paramètre --reboot, il enchaîne juste après le téléchargement des paquets un redémarrage de la machine pour procéder à la mise à jour des RPM's.
Voici l'exemple utilisé pour Fedora 20 à 21 sur mon PC :
Code BASH :
fedup-cli --network 21 --debuglog=fedup.log --reboot --product=noproduct
La commande à pour but de :
- Modifier les dépôts de la version n à n+1
- Télécharger les nouveaux RPM's
- Installer ceux-ci au prochain reboot (une entrée dans GRUB est créée sous le nom de "System Upgrade")
Vers la version instable « rawhide »
Pour effectuer la mise à niveau vers rawhide :
Code BASH :
fedup-cli --network rawhide --debuglog=fedup.log --reboot
J'ajoute le paramètre --debuglog=fedup.log pour avoir une trace des opérations dans /var/log/fedup.log.
Quant au paramètre --reboot, il enchaîne juste après le téléchargement des paquets un redémarrage de la machine pour procéder à la mise à jour des RPM's.
Après la mise à niveau
On relance une petite mise à jour :
Code BASH :
yum update
Et voila, Fedora a été mise à niveau !
Remplacer les anciens paquets
Il se peut qu'un paquet présent dans la version n-1 soit en même version que dans la version n mais ait été refait plus de fois.
Exemple avec libreoffice-calc :
Fedora 19: libreoffice-calc-4.1.3.2-12.fc19.x86_64.rpm
Fedora 20: libreoffice-calc-4.1.3.2-9.fc20.x86_64.rpm
En mettant à jour de FC19 à FC20, yum considère que le paquet de Fedora 19 est plus "récent" car sa version est plus élevée que celle de Fedora 20.
Pour "resynchroniser" les paquets, on peut soit 1 par 1 faire un yum downgrade paquet.
Si on a une certaine quantité de paquets cela peut être long et il peut y avoir des soucis de dépendances.
Dans ce cas :
Code BASH :
yum clean all && yum distribution-synchronization
Problèmes de doublons
Il pet arriver qu'il y ait des doublons de paquets...
Dans ce cas, les supprimer via :
Code BASH :
package-cleanup --cleandupes
J'ai eu personnellement un souci avec un paquet récalcitrant indiquant :
Code BASH :
erreur : %preun(kde-settings-kdm-19-23.fc19.noarch) scriptlet échoué, état de sortie 1
J'ai pu le supprimer via l'attribut --setopt=tsflags=noscripts de yum :
Code BASH :
yum --setopt=tsflags=noscripts remove kde-settings-kdm-19-23.fc19.noarch