Trouver le paquet d'où provient une commande [dupliquer]

27

Existe-t-il un moyen généralisé de savoir quel paquet a provoqué l’installation d’une commande?

    
posée oadams 18.11.2010 - 10:03
la source

6 réponses

34

Ouvrez un terminal et essayez les commandes suivantes:

dpkg -S 'command name'

par exemple: dpkg -S /bin/ls

Exemple de sortie:

coreutils: /bin/ls

Vous pouvez également obtenir des informations d'état détaillées sur le paquet coreutils, entrez:

 dpkg -s coreutils

Exemple de sortie:

Package: coreutils
Essential: yes
Status: install ok installed
Priority: required
Section: utils
Installed-Size: 9040
Maintainer: Ubuntu Core Developers 
Architecture: i386
Version: 5.97-5.3ubuntu3
Replaces: textutils, shellutils, fileutils, stat, debianutils (<= 2.3.1), dpkg (<< 1.13.2)
Provides: textutils, shellutils, fileutils
Pre-Depends: libacl1 (>= 2.2.11-1), libc6 (>= 2.6-1), libselinux1 (>= 2.0.15)
Conflicts: stat
Description: The GNU core utilities
 This package contains the essential basic system utilities.
 .
 Specifically, this package includes:
 basename cat chgrp chmod chown chroot cksum comm cp csplit cut date dd df dir
 dircolors dirname du echo env expand expr factor false fmt fold groups head
 hostid id install join link ln logname ls md5sum mkdir mkfifo mknod mv nice nl
 nohup od paste pathchk pinky pr printenv printf ptx pwd readlink rm rmdir
 sha1sum seq shred sleep sort split stat stty sum sync tac tail tee test touch
 tr true tsort tty uname unexpand uniq unlink users vdir wc who whoami yes
Original-Maintainer: Michael Stone 
    
réponse donnée aneeshep 18.11.2010 - 10:10
la source
10

il existe une autre méthode, peut-être un peu idiote, mais plus rapide que les précédentes :) il suffit de taper une commande et vous obtiendrez le nom de la commande et le paquet dont elle provient.

Exemple de sortie:

[email protected]:/var/www$ sfn
No command 'sfn' found, did you mean:
 Command 'sn' from package 'mono-devel' (main)
 Command 'sfc' from package 'syfi-bin' (universe)
 Command 'svn' from package 'subversion' (main)
sfn: command not found
    
réponse donnée Paweł Karpiński 18.11.2010 - 10:35
la source
5

À partir du nom de la commande, vous pouvez utiliser les commandes 'type' et 'dpkg' pour déterminer le package responsable de leur installation. Par exemple, pour savoir quel paquet a installé la commande «who», vous pouvez exécuter les commandes suivantes à une invite de commande:

$ type who
who is /usr/bin/who
$ dpkg -S /usr/bin/who
coreutils: /usr/bin/who
    
réponse donnée Andy 18.11.2010 - 10:12
la source
3

Vous pouvez aussi le faire avec une ligne:

dpkg -S $(which command)

Par exemple, je veux savoir quel paquet contient ls :

dpkg -S $(which ls)

Et voici la sortie:

coreutils: /bin/ls

Maintenant, je sais que la commande ls, / bin / ls, provient du paquet coreutils.

    
réponse donnée Shnatsel 18.01.2011 - 21:03
la source
2

Maintenant, pour une approche complètement différente.

Allez à packages.ubuntu.com et suivez votre nez. En particulier, faites défiler jusqu'à "Rechercher le contenu des packages" et entrez le nom du fichier ou la commande système.

    
réponse donnée 8128 02.08.2011 - 22:42
la source
0
  1. accédez à une invite de commande (Menu & gt; Applications & gt; Accessoires & gt; Terminal)
  2. entrez dpkg-query --search 'command' où 'command' est la commande dont vous essayez de trouver le package propriétaire.
réponse donnée finley 18.11.2010 - 10:08
la source

Lire d'autres questions sur les étiquettes