Existe-t-il un moyen généralisé de savoir quel paquet a provoqué l’installation d’une commande?
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
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
À 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
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.
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.
Lire d'autres questions sur les étiquettes command-line package-management