Le gestionnaire de packages Ubuntu maintient les packages à jour en les mettant à niveau vers la dernière version. Mais parfois, en raison de la mise à niveau, les programmes ne fonctionnent pas correctement en raison de bogues ou de problèmes de compatibilité dans la nouvelle version par rapport aux versions précédentes. Nous pouvons résoudre ce problème en rétrogradant les packages installés vers leurs versions antérieures où ils fonctionnaient correctement, puis en les verrouillant sur une version particulière pour éviter qu'ils ne soient mis à jour automatiquement à l'avenir.
Dans cet article, nous verrons comment rétrograder un package installé sur Ubuntu. Il existe deux manières différentes de rétrograder un package installé vers sa version antérieure :
- Utiliser le gestionnaire de paquets Synaptic
- Utiliser Terminal
Nous verrons comment utiliser ces deux méthodes pour rétrograder l'application Firefox dans Ubuntu. Cependant, vous pouvez également suivre cette même procédure pour rétrograder d'autres applications.
Nous utiliserons Ubuntu 18.04 LTS pour décrire la procédure mentionnée dans cet article.
Rétrograder les packages à l'aide du gestionnaire de packages Synaptic
Le gestionnaire de packages Synaptic est une application graphique de gestion de packages plus puissante que le centre logiciel d'Ubuntu. En l'utilisant, vous pouvez installer, mettre à niveau, rétrograder et supprimer des packages, rechercher des packages à l'aide de filers, verrouiller des packages et bien plus encore à l'aide de son interface graphique conviviale.
Étape 1 : Il n'est pas installé par défaut dans Ubuntu 18.04 LTS, nous devrons donc d'abord installer le gestionnaire de paquets synaptic. Pour cela, ouvrez le Terminal en utilisant Ctrl+Alt+T raccourci clavier. Saisissez ensuite la commande suivante :
$ sudo apt install synaptic
Attendez un moment jusqu'à ce que l'installation soit terminée.
Étape 2 : Une fois l'installation terminée, exécutez la commande suivante dans Terminal pour lancer le gestionnaire de packages Synaptic.
$ sudo synaptic
Il demandera le mot de passe. Entrez le mot de passe pour l'authentifier.
Étape 3 : Dans la fenêtre principale de l'application, recherchez le package que vous souhaitez rétrograder. Pour cela, cliquez sur Rechercher bouton de la barre d'outils. Dans le champ de recherche, saisissez le nom du package et cliquez sur Rechercher . Nous allons rétrograder l'application Firefox, nous allons donc taper firefox dans la barre de recherche.
Étape 4 : Lorsque le résultat de la recherche apparaît, sélectionnez l'application Firefox. Vous verrez les versions actuelles et les dernières disponibles de l'application Firefox. Puis depuis la barre de menu, cliquez sur Package , puis sélectionnez Forcer la version .
Une boîte de dialogue apparaîtra qui vous permettra de choisir la version du package vers laquelle vous souhaitez rétrograder. Sélectionnez la version requise dans le menu déroulant et cliquez sur Forcer la version bouton.
Étape 5 : Puis depuis la barre d'outils, cliquez sur Appliquer pour enregistrer les modifications.
Une boîte de dialogue de confirmation apparaîtra, cliquez sur Appliquer pour confirmer.
Maintenant, il va commencer à télécharger l'ancien package.
Une fois le téléchargement terminé, vous remarquerez que la version installée est désormais 59.0.2+build1-0ubuntu1 dans la fenêtre de l'application Synaptic qui est passée de 65.0+build2-0ubuntu0.18.04.1.
Étape 6 : Après avoir rétrogradé le package Firefox, vous pouvez également empêcher la mise à jour automatique du package en le verrouillant sur une version spécifique. Sélectionnez l'application Firefox rétrogradée et, dans la barre de menu supérieure, cliquez sur Package . Sélectionnez ensuite Verrouiller la version . La prochaine fois que vous mettrez à niveau vos packages, ce package verrouillé ne sera pas mis à niveau.
Une fois le processus terminé, vous pouvez également afficher la version actuelle de Firefox en utilisant le menu Firefox. Cliquez sur le bouton de menu Firefox sur le côté droit de sa fenêtre, puis cliquez sur Aide comme indiqué dans la capture d'écran ci-dessous.
Ensuite, dans le sous-menu, sélectionnez À propos de Firefox .
À propos de Mozilla Firefox fenêtre apparaîtra. Vous pouvez voir ici le numéro de version.
Déverrouiller les packages dans Synaptic
Pour déverrouiller un paquet dans Synaptic, recherchez le paquet dans la liste des paquets, le moyen le plus simple est de rechercher ici par statut "épinglé". Cliquez ensuite sur "Package" dans le menu supérieur et désélectionnez "Verrouiller la version" dans le menu.
Rétrograder les packages à l'aide du terminal Ubuntu
Nous pouvons également utiliser l'application Terminal dans Ubuntu pour rétrograder les packages. Appuyez sur Ctrl+Alt+T pour lancer le Terminal.
Étape 1 : Pour répertorier la version disponible d'un package spécifique dans les référentiels, exécutez la commande suivante dans Terminal :
$ sudo apt-cache showpkg package-name
Par exemple, pour rétrograder l'application Mozilla Firefox vers l'ancienne version, nous utiliserons la commande suivante. Il recherchera dans le référentiel les anciennes versions de Firefox :
$ sudo apt-cache showpkg firefox
Étape 2 : Pour installer une ancienne version de n'importe quel package, exécutez la commande suivante dans Terminal :
$ sudo apt-get install packagename=version
D'après les résultats ci-dessus, nous pouvons voir que l'ancienne version disponible de Firefox est 59.0.2+build1-0ubuntu1. Pour rétrograder l'application Firefox vers cette version, exécutez la commande suivante dans Terminal. Il installera simplement l'ancienne version de Firefox à l'aide de la commande apt-get.
$ sudo apt-get install firefox=59.0.2+build1-0ubuntu1
Lorsque vous êtes invité à confirmer, appuyez sur y pour confirmer.
Étape 3 : Une fois le processus ci-dessus terminé, vous pouvez vérifier la version de Firefox à vérifier. Dans la capture d'écran ci-dessous, vous pouvez voir qu'il a été rétrogradé avec succès vers la version 59.02.
Étape 4 : Semblable au gestionnaire de packages Synaptic, dans le terminal, vous pouvez également bloquer ou empêcher la mise à jour ou la mise à niveau automatique des packages. Exécutez la commande suivante dans Terminal pour verrouiller le package :
$ sudo apt-mark hold firefox
Cependant, cette méthode empêche uniquement la mise à niveau automatique du package. Il ne peut pas empêcher ou arrêter la mise à niveau manuelle du package.
C'est donc tout ce que vous devez faire pour rétrograder les packages sur Ubuntu. Pour cette raison, vous pouvez désormais rétablir vos packages à un état antérieur où ils fonctionnaient correctement et les empêcher de futures mises à niveau.