Vérifier la version du paquet en utilisant apt-get / aptitude?

430

Avant d'installer un paquet, j'aimerais savoir quelle version j'aurais. Comment vérifier la version avant d'installer avec apt-getou aptitudesur Debian ou Ubuntu?

Jeff Schaller
la source

Réponses:

540

apt-get

Vous pouvez exécuter une simulation pour voir ce qui se produirait si vous mettez à jour / installez un paquet:

apt-get -s install <package>

Pour voir toutes les mises à niveau possibles, lancez un upgradeen mode prolixe et (par souci de sécurité) avec simulation, appuyez sur npour annuler:

apt-get -V -s upgrade

apt-cache

L'option policypeut afficher la version installée et la version distante (candidat à l'installation) d'un package.

apt-cache policy <package>

apt-show-versions

Si installé, affiche les informations de version sur un ou plusieurs packages:

apt-show-versions <package>

Passer le -ucommutateur avec ou sans nom de package n'affichera que les packages pouvant être mis à niveau.

aptitude

L’interface graphique de la console aptitudepeut afficher les packages pouvant être mis à niveau avec les nouvelles versions. Ouvrez le menu 'Packages évolutifs'. Appuyer vsur un paquet affichera des informations plus détaillées sur la version.

Ou sur la ligne de commande:

aptitude versions <package>

Passing -Vaffichera des informations détaillées sur les versions, encore une fois pour plus de sécurité avec le commutateur de simulation:

aptitude -V -s install <package>

En remplaçant install <package>par upgradeaffichera les versions de tous les paquets pouvant être mis à jour.

remuer
la source
9
"Le programme 'apt-show-versions' n'est pas encore installé. Vous pouvez l'installer en tapant .."
Peter Ehrlich
1
apt-get -V -s upgradefait ma journée, merci!
dr.dimitru
Est-il recommandé de courir apt-get install -savec sudo?
Edwinksl
@edwinksl: Cela fonctionne très bien sans cela, donc je ne m'attendrais pas à ce que sudo soit mieux.
Zondo
3
apt show <packages>peut également être ajouté à la liste
leo
59

Une autre façon d'utiliser dpkg et grep :

dpkg -s <package> | grep Version
Alf
la source
14
Cela ne fonctionne pas lorsque <package> n'est pas déjà installé (ce qui était une exigence de la question).
Serrano
1
Serrano Pereira, cette réponse m'a aidé, qui avait une question légèrement différente, mais assez similaire pour ne pas duper sur stackoverflow.
Jose Alban
mieux: dpkg -s <package> | grep Version (Notez la capitale V)
langlauf.io
21

Une autre option, si vous ne connaissez pas le nom complet du paquet, est le formatage du résultat de recherche d'aptitude:

aptitude search <package> -F "%c %p %d %V"

%c= statut (paquet installé ou non)
%p= nom du
%dpaquet
%V= description du paquet = version disponible du paquet

Référence: http://linux.die.net/man/8/aptitude

Diego Ponciano
la source
8

Pour obtenir le nom du paquet:

apt-cache search *search term*

Pour obtenir les détails de la version:

apt-cache show *packagename*

Je crois apt-getet suis apt-cacheobsolète, avec aptet aptitudedevient la méthode préférée. Étant donné la longévité de l'apt-suite, c'est probablement une valeur sûre pour un certain temps!

Ned Flanders
la source
C'est exactement ce que je cherchais. Utilise le dépôt à distance pour obtenir la version et toutes sortes d’autres informations.
Four43
6

Tu peux écrire apt show <package>

elvis.dukaj
la source
Cela figurait déjà dans la réponse de Ned Flanders, unix.stackexchange.com/a/362794/22812
Anthony Geoghegan le
@yurij vous devriez avoir votre propre réponse selon le montant de l'édition que vous avez faite
Kiwy
@ AnthonyGeoghegan a tort, il dit que apt-cachej'utilise aptdeux choses différentes ... Qu'est-ce qui me manque?
elvis.dukaj
aptet apt-cachefaire la même chose. Si vous vérifiez le code source, ils auront tous deux la même fonctionnalité: pour show, une fonction appelée ShowPackageet pour search, une fonction appelée DoSearch.
Anthony Geoghegan
3
 $ rmadison gdm3
 gdm3 | 2.30.5-6squeeze2 | squeeze-security | i386
 gdm3 | 2.30.5-6squeeze5 | squeeze          | i386
 gdm3 | 3.4.1-8          | wheezy           | i386
 gdm3 | 3.14.1-7         | jessie           | i386
 gdm3 | 3.18.0-2         | stretch          | i386
 gdm3 | 3.18.0-2         | sid              | i386

de devscripts.deb

sbin_bash
la source
Pour Ubuntu, cela affiche les versions trouvées pour différentes versions d'ubuntu (noms de code tels que "precise", "trusty" et "xenial"). Très lent, mais peut vous aider avec la décision d'améliorer votre LTS;)
Tomasz Gandor
2

Pour voir le dernier paquet disponible avant l'installation. Effectuez la mise à jour de manière à disposer de la dernière mise à jour du package.

$sudo apt-get update

Maintenant, pour vérifier le dernier paquet disponible dans votre référentiel avant l'installation, lancez la commande ci-dessous.

$apt-cache show <package name>

Exemple:

$apt-cache show latexila

ou

$apt-cache show npm
Yanish Pradhananga
la source