Trouver à quel paquet appartient un fichier

Problème: Comment savoir dans quel paquet est disponible ce fichier ?
Ça peut se résoudre de trois façons :
Méthode 1 : dpkg
dpkg est l'outil "bas niveau" sous debian qui permet de manipuler un paquet (installation, suppression, purge...) par dessus lequel se greffent d'autres outils tels qu'apt-get, aptitude (auxquels se superpose une éventuelle couche supplémentaire comme adept ou synaptic).
Mais dpkg permet aussi d'examiner le contenu des paquets debian (c'est notamment ce qui lui permet de vérifier que deux paquets ne sont pas conflictuels). Ainsi la commande :
dpkg -S fstab
permet de trouver les paquets qui installent un fichier contenant le motif "fstab" :
libc6-dev: /usr/include/fstab.h util-linux: /usr/share/doc/util-linux/examples/fstab.example2 udev: /usr/lib/udev/migrate-fstab-to-uuid.sh mount: /usr/share/man/man5/fstab.5.gz mount: /usr/share/doc/mount/examples/fstab vim-runtime: /usr/share/vim/vim71/syntax/fstab.vim kdelibs-data: /usr/share/apps/katepart/syntax/fstab.xml
Méthode 2 : apt-file
Faites:
sudo apt-get install apt-file sudo apt-file update
et vous pouvez maintenant chercher.
Exemple: Dans quel paquet se trouve xmlres.h ?
toto@ubuntu:~$ apt-file search xmlres.h libwxgtk2.4-contrib-dev: usr/include/wx/xrc/xmlres.h wx2.6-headers: usr/include/wx-2.6/wx/xrc/xmlres.h wx2.8-headers: usr/include/wx-2.8/wx/xrc/xmlres.h
Vous pouvez également lister les fichiers contenus dans un paquet, même si ce paquet n'est pas installé:
toto@ubuntu:~$ apt-file list fail2ban fail2ban: etc/default/fail2ban fail2ban: etc/fail2ban/action.d/hostsdeny.conf fail2ban: etc/fail2ban/action.d/ipfw.conf fail2ban: etc/fail2ban/action.d/iptables.conf fail2ban: etc/fail2ban/action.d/iptables-multiport.conf fail2ban: etc/fail2ban/action.d/iptables-new.conf fail2ban: etc/fail2ban/action.d/mail.conf fail2ban: etc/fail2ban/action.d/mail-whois.conf fail2ban: etc/fail2ban/action.d/mail-whois-lines.conf fail2ban: etc/fail2ban/action.d/shorewall.conf fail2ban: etc/fail2ban/fail2ban.conf fail2ban: etc/fail2ban/filter.d/apache-auth.conf fail2ban: etc/fail2ban/filter.d/apache-noscript.conf fail2ban: etc/fail2ban/filter.d/courierlogin.conf fail2ban: etc/fail2ban/filter.d/couriersmtp.conf fail2ban: etc/fail2ban/filter.d/postfix.conf fail2ban: etc/fail2ban/filter.d/proftpd.conf fail2ban: etc/fail2ban/filter.d/qmail.conf fail2ban: etc/fail2ban/filter.d/sasl.conf fail2ban: etc/fail2ban/filter.d/sshd.conf fail2ban: etc/fail2ban/filter.d/vsftpd.conf [...]
Méthode 3 : Sites dédiés
Si le PC en question est connecté à Internet, vous pouvez également utiliser ces moteurs de recherche pour le même résultat:
L'avantage de cette dernière méthode et qu'elle permet de faire une recherche sans avoir installé la distribution ou pour d'autres versions.
Ce document intitulé « Trouver à quel paquet appartient un fichier » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.