quinta-feira, 12 de abril de 2012

Como saber qual pacote contém um determinado arquivo?

Algumas vezes precisamos saber qual pacote de programa contém um arquivo específico. E nem sempre o nome do executável é igual ao nome do pacote. 

Dois exemplos são os comandos netstat e dig. Não existe nos repositórios da Debian um pacote chamado netstat, e nem dig. Então, como saber qual o pacote que contém os executáveis em questão? O apt-file pode ajudar nessa tarefa.

Para instalá-lo, digite:

apt-get install apt-file

Antes de usá-lo é necessário atualizar seu banco de dados.

apt-file update

Com a base atualizada, vamos fazer a pesquisa. Antes, porém, é aconselhável descobrir o caminho exato do arquivo que queremos. No caso do dig, digire:

which dig

A reposta é:

/usr/bin/dig

Agora basta digitar

apt-file search /usr/bin/dig

e será mostrado o pacote que contém o arquivo.

dnsutils: /usr/bin/dig

Agora basta instalar o pacote dnsutils para que o comando dig estará funcionando.