Encontrar a qual pacote um arquivo pertence

Pode acontecer, por exemplo que se compile, que o sistema nos reclame um arquivo preciso.
Problema: Como saber em qual pacote está disponível este arquivo ?
Isto pode ser resolvido de três maneiras diferentes:

Método 1 : dpkg

dpkg é uma ferramenta 'baixo nível » na Debian que permite manipular um pacote (instalação, supressão, purgação...) por cima da qual se implantam outras ferramentas como apt-get, aptitude (aos quais se superpõe uma eventual camada complementar como adept ou synaptic).

Mas dpkg permite também examinar o conteúdo dos pacotes Debian (é principalmente o que lhe permite verificar que dois pacotes não são conflituosos).
Assim o comando

dpkg -S fstab

Permite encontrar os pacotes que instalam um arquivo que contém o motivo "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étodo 2 : apt-file

Faça:

sudo apt-get install apt-file  
sudo apt-file update

e você pode agora buscar.
Exemplo: Em quaml pacote se encontra 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

Você pode igualmente listar conteúdos em um pacote, mesmo se este pacote não estiver instalado :

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étodo 3 : Sites dédiés

Se o PC em questão está conectado na internet, você pode igualmente utilizar estes motores de busca para o mesmo resultado :

A vantagem deste último método é que ele permite fazer uma busca sem ter instalado a distribuição ou para outras versões.

Tradução feita por Ana Spadari

Nosso conteúdo é produzido em colaboração com especialistas em tecnologia da informação sob o comando de Jean-François Pillou, fundador do CCM.net. CCM é um site sobre tecnologia líder em nível internacional e está disponível em 11 idiomas.
Este documento, intitulado 'Encontrar a qual pacote um arquivo pertence ', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.

Assine nossa newsletter!

Assine nossa newsletter!
Junte-se à comunidade