Apt-cache: Comment lister tous les packages installés avec le numéro de version?


51

apt-cache dump --installed ne fonctionne pas, il répertorie également les packages désinstallés.

Je veux lister les packages d'installation chacun par une ligne, avec le numéro de version installé.


3
bug # 775771 restreindre les résultats de la recherche d'apt-cache aux paquets installés
bartolo-otrit

Réponses:


53

essayer dpkg -l

il vous liste les paquets, la version et une courte description.


1
J'aime aussi apt-show-versionscar ça montre aussi lequel on est uptotdate.
Malat

37

Le moyen le plus simple consiste à utiliser dpkg, mais il peut afficher quelques packages superflus et tronquer les noms de package longs et les numéros de version:

dpkg -l

Pour lister uniquement les packages correctement installés et ne pas tronquer les noms:

dpkg -l | grep '^ii'

Pour avoir plus de contrôle sur le format de sortie, vous pouvez utiliser dpkg-query:

dpkg-query -W -f '${status} ${package} ${version}\n' | \
sed -n 's/^install ok installed //p'

13

Une autre commande peut être:

apt-show-versions

Il vous donne également des informations sur l'état du paquet (à jour, pouvant être mis à niveau, ...) et sur la distribution de l'origine (Wheezy, jessie, ...). On peut facilement filtrer les paquets provenant de backports ou d’autres dépôts exotiques.

Ce programme est emballé séparément. Installez-le d'abord avec:

apt-get install apt-show-versions

C'est vraiment bien car cela montre la version à laquelle un paquet peut être mis à jour. +1
Randall Cook

combiné à apt-mark showmanualcela, vous obtenez un moyen simple et agréable de récupérer les versions de tous les paquets installés manuellement. Voir aussi la réponse Askubuntu apt-mark showmanual > /tmp/versions && apt-show-versions | grep -f /tmp/versions
Gregor

4

La commande suivante répertorie les packages avec leurs versions et vous permet en outre de configurer un système avec les mêmes packages et versions ultérieurement, à l'aide du pkg-selections.txtfichier généré ici:

aptitude -q -F "%?p=%?V %M" --disable-columns search \~i > pkg-selections.txt

Chaque ligne contiendra le nom du paquet, sa version et un "A" optionnel si le paquet a été installé automatiquement.

Source: " Cloner un système Debian - Paquets et versions identiques ". Contient également le script qui configure un système à partir de pkg-selections.txt.


4

Pour lister les noms de chaque paquet installé, tapez comme n'importe quel utilisateur:

dpkg --get-selections

Vous obtiendrez une sortie comme celle-ci:

accountsservice              install
aclinstall                   install
acpi-supportinstall          install
acpidinstall                 install
...

Pour supprimer la chaîne de caractères "install" non nécessaire, vous pouvez utiliser sed :

dpkg --get-selections | sed 's:install$::'

Et si vous voulez l'enregistrer dans un fichier appelé InstalledPackages , vous tapez ceci:

dpkg --get-selections | sed 's:install$::' > InstalledPackages

1

Si vous n'avez pas accès au système actif et que vous disposez d'une sauvegarde de la /partition racine , vous pouvez:

root@backup_server /mnt/old_root/var/lib/dpkg/info # ls -la *.list | awk {'print $9'}| sed 's/.list//' >> /root/installed_app

Maintenant, cela /root/installed_appcontient tous les paquets installés!

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.