Réponses:
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-mark hold <package-name>
afin d’éviter les mises à jour automatiques.
aptitude
déclasser les dépendances mieux que apt-get
.
apt-cache policy <package-name>
montre seulement les versions installées et disponibles
showpkg
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.
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 faire
aptitude
est bien meilleur que apt-get
. Dans mon cas, apt-get
la demande de rétrogradation a été catégoriquement refusée, alors aptitude
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 en ppa-purge
utilisant ce code:
sudo apt-get install ppa-purge
Ensuite, vous pouvez supprimer le ppa en utilisant la commande
sudo ppa-purge ppa: nom d'utilisateur / ppa-name
cela rétrogradera automatiquement le logiciel à sa version originale fournie avec Ubuntu.
Pour rétrograder, vous devez exécuter une commande telle que
sudo apt-get install pkg_name=version
dans votre terminal.
À la place de version
mettre la version précédente que vous souhaitez rétrograder.
À mon avis, vous devez d’abord désinstaller ou purger le paquet, par exemple:
sudo apt-get remove <package>
ou
sudo apt-get purge <package>
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 la cd
commande et installez la version précédente à l'aide de dpkg
:
sudo dpkg -i abc.deb
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
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:
$ sudo apt-get install $(apt-show-versions | grep -P 'newer than version in archive' | awk -F: '{print $1"/jessie"}')
Au lieu de jessie
vous pouvez utiliser buster
/ xenial
/ etc selon vos besoins.
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
pour grep
ici.
sudo apt-show-versions -i
abord exécuter si le cache du paquet est obsolète.
apt-cache showpkg <package-name>
pour répertorier les versions disponibles.