Como saber em qual pacote Ubuntu uma ferramenta está


23

Como um exemplo concreto, desejo poder usar uma ferramenta específica que não esteja instalada (por exemplo, nslookup) e saber qual pacote eu preciso instalar quando o seguinte falhar:

apt-get install nslookup
E: Unable to locate package nslookup

Obviamente, posso procurar no google a resposta para um pacote específico (dnsutils), mas quero saber como encontrá-lo.


esta é uma pesquisa rápida e suja nslookup do apt-cache
The Janix Unix

O apt-cache pesquisa apenas as descrições. Eu estava procurando por um arquivo específico, ErikA apontou: pesquisa de arquivo apt FOO
ErebusBat

Respostas:


23

Existem duas maneiras de fazer isso:

host ~ # apt-file update
host ~ # apt-file search nslookup
dnsutils: /usr/bin/nslookup
dnsutils: /usr/share/man/man1/nslookup.1.gz
gajim: /usr/share/gajim/src/common/nslookup.py
kaptain: /usr/share/kaptain/nslookup.kaptn
kvirc2-data: /usr/share/kvirc2/help/en/nslookup.kvihelp
libgnet2.0-0: /usr/share/doc/libgnet2.0-0/examples/dnslookup.c.gz
manpages-ja: /usr/share/man/ja/man8/nslookup.8.gz
procmail-lib: /usr/share/procmail-lib/pm-janslookup.rc
rbot: /usr/share/rbot/plugins/nslookup.rb
scrollz: /usr/share/scrollz/help/nslookup
zsh: /usr/share/zsh/4.3.4/functions/Completion/Unix/_nslookup
zsh: /usr/share/zsh/4.3.4/functions/Misc/nslookup
zsh-beta: /usr/share/zsh-beta/functions/Completion/Unix/_nslookup
zsh-beta: /usr/share/zsh-beta/functions/Misc/nslookup

e...

host ~ # apt-cache search nslookup
host - utility for querying DNS servers
dnsutils - Clients provided with BIND

1
apt-cachesomente pesquisa os pacotes que você já instalou, enquanto apt-filepesquisa TODOS os pacotes no seu sources.list, incluindo pacotes que não estão instalados. Então, neste caso, apt-fileé o único a usar.
Steven Monday

1
@ Steven, eu vou ter que discordar disso. Acabei de fazer uma pesquisa de teste do "vlc" no VPS do ubuntu usando o apt-cache, e ele mostrou todos os pacotes relacionados ao vlc, nenhum dos quais eu instalei.
EEAA

@ Steven Monai, isso não é verdade. apt-cacheanalisa as descrições dos pacotes (pesquisas /var/lib/apt/lists/*_Packages). Ter algo instalado não importa. As descrições dos pacotes não incluem uma lista dos arquivos. Concordo que essa apt-fileé provavelmente a ferramenta a ser usada, se abrir um navegador da web não for uma opção.
Zoredache

Há também o auto-apt, como uma alternativa ao apt-file. Eu não tenho uma forte preferência. o auto-apt pode escutar em chamadas exec com falha, o que pode ser útil ao executar um script de configuração que detecte recursos.
Tobu

1
@EricA, Zoredache: Estou corrigido. Deixe-me reafirmar: Se você precisar saber qual pacote desinstalado contém um arquivo específico (por exemplo /usr/bin/nslookup), use apt-file. Se você deseja pesquisar apenas os nomes e as descrições dos pacotes, apt-cachefunciona bem.
Steven Monday

3

Você command-not-foundinstalou?

Basta digitar o comando no bash ou zsh e ele informará qual pacote o possui e se você precisa ativar repositórios não principais ou corrigir seu PATH. Ou ligue command-not-found $command_name.

Ou você pode ir para http://packages.ubuntu.com/file:bin/nslookup , mas o padrão é pacotes karmic.



Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.