Frequentemente, sinto falta de um programa, página de manual ou outro arquivo ao trabalhar no meu sistema Ubuntu 8.04. Existe alguma maneira simples de procurar qual pacote contém um determinado arquivo (se ele já está instalado ou não)? Talvez alguma opção obscura para apt ou dpkg?
300
dpkg -S /path/to/file
se você tiver o pacote instalado.Respostas:
ou
Para instalar
apt-file
, use:Você precisará atualizar seu banco de dados antes de poder usá-lo:
fonte
dpkg -S
funciona como descrito abaixo.(Debian / Ubuntu) Descubra a que pacote um arquivo pertence :
fonte
apt-file
, isso também localiza o pacote em um arquivo se ele foi instalado manualmente viadpkg -i
!dpkg -S "$(readlink -fn "$(which rename)")"
.dpkg-query: no path found matching pattern /usr/bin/java
, embora haja um arquivo em/usr/bin/java
packages.debian.org é o que eu sempre uso para realizar esta tarefa. É superior ao apt-file porque também pode encontrar partes de nomes de arquivos. Também está vinculado à lista principal de pacotes, que lista descrições, bugs, etc. No geral, um bom site. Não é tão útil na linha de comando, mas ainda é bastante útil.
Para velocidade, marquei o URL como favorito:
no Firefox e adicionei "debfind" como uma palavra-chave (clique em "mais" no gerenciador de favoritos com o nome escurecido), para que eu possa digitar "debfind" e ele funcionará. Você pode alterar 'suite' de instável para estável ou testar, se desejar, para outras versões da distribuição.
fonte
Você também pode usar o dlocate. Na página do manual;
fonte
dlocate
também é o meu método favorito, muito confiável.dlocate
não encontra um pacote instalado recentemente, a menos que você executesudo update-dlocatedb
primeiro. O comando é executado automaticamente diariamente em /etc/cron.daily/dlocateEncontrei Wajig ...
por exemplo.
Wajig é uma linha de comando ou ferramenta de console à mão que reúne todas as qualidades do apt-get, dpkg, que você nunca quis aprender. .
Para instalar o wajig, use:
O próprio comando 'whatpackage' depende do apt-file
você ainda precisará atualizar seu banco de dados antes de poder usá-lo: - Ainda não sei se wajig update whixh faz uma atualização do apt-get também atualiza o cache do arquivo, mas espero que sim.
(e Super Cow, Páscoa egss?!)
fonte
Assim como a resposta de jamuraa para o Debian, você também pode acessar http://packages.ubuntu.com/ para Ubuntu. Você precisará rolar um pouco para baixo para encontrar a caixa de pesquisa "Pesquisar o conteúdo dos pacotes", onde é possível inserir o caminho de um arquivo.
fonte
Tente pesquisar arquivos usando http://www.kodkast.com/applications/find-which-package-file-belongs-to
Esta é uma aplicação para procurar arquivos contidos em diferentes pacotes rpms / linux, e é muito útil quando você não possui o rpm instalado em sua máquina.
fonte
O pacote command-not-found fornece dicas sobre possíveis comandos e o nome do pacote debian. Ele funciona digitando o comando no shell bash e observando sua saída.
Por exemplo, se o nome do comando for conhecido:
e se o comando não for conhecido, algumas suposições serão aplicadas:
fonte
-h
ou--help
no final ajudaria um pouco. Se adicionar-h
no final tornasse isso seguro o suficiente, eu recomendaria, mas mesmo assim não é uma boa maneira de conseguir o que o OP pede.