Comment puis-je rétrograder un paquet vers une version antérieure via apt-get
?
D'autres outils sont également acceptables mais apt-get
sont préférés.
Comment puis-je rétrograder un paquet vers une version antérieure via apt-get
?
D'autres outils sont également acceptables mais apt-get
sont préférés.
Si vous avez le numéro de version, ou la version cible, apt-get
prend en charge le choix d’une version ou d’une version cible particulière. Plus de détails peuvent être trouvés sur la page de manuel d'apt-get . Vous pouvez également y accéder depuis le terminal en tapantman apt-get
sudo apt-get install <package-name>=<package-version-number>
OU
sudo apt-get -t=<target release> install <package-name>
est la commande à exécuter. Ceci peut être utilisé pour rétrograder un paquet en une version spécifique.
Il a été utilement signalé dans les commentaires que
apt-cache showpkg <package-name>
répertorie toutes les versions disponibles. (h / t Sparhawk )apt-mark hold <package-name>
"détient" le paquet dans la version actuelle, empêchant ainsi les mises à jour automatiques. (h / t Luís de Sousa )
apt-cache showpkg <package-name>
pour répertorier les versions disponibles.apt-mark hold <package-name>
afin d’éviter les mises à jour automatiques.aptitude
déclasser les dépendances mieux queapt-get
.apt-cache policy <package-name>
montre seulement les versions installées et disponiblesshowpkg
ne montre pas la version qui vous intéresse?UTILISATION
apt-get install «pkg»=«version»
OU
sudo aptitude install «pkg»=«version»
Où «pkg» est le nom du paquet et «version» le numéro de version.
la source
apt-get install pkg=version
apt-get, l'offre supprime près de la moitié des paquets installés, ce qui n'est bien sûr pas ce que je veux faireaptitude
est bien meilleur queapt-get
. Dans mon cas,apt-get
la demande de rétrogradation a été catégoriquement refusée, alorsaptitude
que d'autres pkgs dépendaient de la version la plus récente (et devaient donc être rétrogradés en même temps).Si vous avez mis à niveau un logiciel à l'aide de ppa, vous pouvez le rétrograder à l'aide de
ppa-purge
. Vous devez d'abord installer enppa-purge
utilisant ce code:Ensuite, vous pouvez supprimer le ppa en utilisant la commande
cela rétrogradera automatiquement le logiciel à sa version originale fournie avec Ubuntu.
la source
Pour rétrograder, vous devez exécuter une commande telle que
dans votre terminal.
À la place de
version
mettre la version précédente que vous souhaitez rétrograder.la source
À mon avis, vous devez d’abord désinstaller ou purger le paquet, par exemple:
ou
Ensuite, vous pouvez télécharger la version que vous souhaitez installer et la conserver dans un dossier, par exemple
abc.deb
dans Téléchargements. Ouvrez un terminal, accédez au dossier à l'aide de lacd
commande et installez la version précédente à l'aide dedpkg
:Sinon, il existe un petit utilitaire appelé
ppa-purge
si vous voulez déclasser les packages mis à jour via des PPA.Voir cette discussion: http://www.webupd8.org/2009/12/remove-ppa-repositories-via-command.html
la source
unstable
->testing
->stable
ne pas rétrograder des packages individuels.Cette question est ancienne mais Google m'a conduit ici et je n'ai pas trouvé de solution simple qui ne nécessite pas de version manuelle lors de la mise à niveau de paquets vers une version plus ancienne.
Alors peut-être que quelqu'un qui a aussi besoin de ça trouvera utile ma solution aussi.
Il existe un outil appelé
apt-show-versions
qui montre les versions installées.Vous pouvez facilement rétrograder tous les paquets requis en ajustant regex avec précision, mais voici:
Au lieu de
jessie
vous pouvez utiliserbuster
/xenial
/ etc selon vos besoins.la source
sudo apt-get install -V $(apt-show-versions | grep -F 'newer than version in archive' | awk -F: '{print $1"/'$(lsb_release -cs)'"}')
. Je préfère utiliser-F
pourgrep
ici.sudo apt-show-versions -i
abord exécuter si le cache du paquet est obsolète.