El comando «apt-file» permite buscar el paquete que contiene un fichero concreto. Por defecto no viene instalado en Debian y derivados así que lo podemos instalar directamente con apt:
# apt-get install apt-file
Una vez instalado actualizamos la base de datos de paquetes y ficheros:
# apt-file update
A partir de este momento ya podemos buscar. En el siguiente ejemplo buscamos el paquete que contiene el fichero «vmlinuz-2.6.38-8-generic»:
~$ apt-file search vmlinuz-2.6.38-8-generic linux-image-2.6.38-8-generic: /boot/vmlinuz-2.6.38-8-generic
Se puede depurar la búsqueda por repositorio, patrón, arquitectura, etc:
Configuration options: --sources-list -ssources.list location --cache -c Cache directory --architecture -a Use specific architecture --cdrom-mount -d Use specific cdrom mountpoint --from-file -f Read patterns from file(s), one per line (use '-' for stdin) --from-deb -D Use file list of .deb package(s) as patterns; implies -F --non-interactive -N Skip schemes requiring user input (useful in cron jobs) --package-only -l Only display packages name --fixed-string -F Do not expand pattern --ignore-case -i Ignore case distinctions --regexp -x pattern is a regular expression --verbose -v run in verbose mode --dummy -y run in dummy mode (no action) --help -h Show this help. --version -V Show version number Action: update Fetch Contents files from apt-sources. search|find Search files in packages list|show List files in packages purge Remove cache files
También puedes usar «dpkg -S »
# dpkg -S /etc/apache2/ports.conf
apache2.2-common: /etc/apache2/ports.conf
Otro: wajig whichpkg nombre_del_fichero
Gracias Ruben y Jors!