Como encontro o pacote que contém um determinado programa no Ubuntu?

5

Frequentemente sei o nome do programa de linha de comando que preciso, mas não sei o nome do pacote que fornece o programa. Como faço para encontrar o nome do pacote que contém o programa que eu preciso? Em sistemas baseados em RPM, eles têm a whatprovides option rpm -q --whatprovides /usr/X11R6/bin/xclock que encontrará o pacote correto. Existe algo similar para sistemas baseados em Debian?

    
por ejunker 24.06.2009 / 05:08

4 respostas

12

Se o pacote estiver instalado, você deseja dpkg -S /path/to/file . Se o pacote não estiver instalado, use o utilitário apt-file ( apt-file update; apt-file search /path/to/file ).

    
por 24.06.2009 / 05:09
5

O Ubuntu tem um utilitário de comando não encontrado que lhe dirá qual pacote instalar para obter um comando específico. Se configurado corretamente (talvez na instalação padrão?), Ele será exibido quando você inserir um comando que não esteja instalado. No entanto, você também pode executá-lo manualmente:

$ /usr/lib/command-not-found --ignore-installed test
The program 'test' is currently not installed.  You can install it by typing:
sudo apt-get install coreutils
    
por 24.06.2009 / 06:08
1

O Ubuntu, assim como o Debian, vem com o aplicativo apt-file. Isto permite-lhe, bastante semelhante ao apt-get, apenas procurar por arquivos em pacotes.

Assim, você teria

$ apt-file update
$ apt-file search xclock

E lá vai você. Se tiver sorte, você também pode usar a interface na parte inferior do site Pacotes Debian . Isso funcionará se os mantenedores do Ubuntu não tiverem mudado muito em comparação com a versão original do Debian.

    
por 06.07.2009 / 13:51
-1

Você também pode usar o apt-cache search [file] para verificar os caches locais do aplicativo.

    
por 24.06.2009 / 05:28