web-dev-qa-db-fra.com

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

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é.

50
Xiè Jìléi

essayez dpkg -l

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

52
kev

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 obtenir 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'
37
Gilles

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 Origin (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
13
SkyRaT

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 nommé InstalledPackages , vous tapez ceci:

dpkg --get-selections | sed 's:install$::' > InstalledPackages
4
Rémi G.

La commande suivante répertorie les packages avec leurs versions et vous permet également de configurer un système avec les mêmes packages et versions ultérieurement, à l'aide du fichier pkg-selections.txt 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: " Clonage d’un système Debian - Paquets et versions identiques ". Contient également le script qui configure un système à partir de pkg-selections.txt.

4
tanius

Si vous n'avez pas accès au système live et que vous avez une sauvegarde de la partition root/, 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, ce /root/installed_app contient tous les paquets installés!

1
sasha2002