Em um sistema baseado no Debian, incluindo o Ubuntu, como saber em qual repositório um pacote será baixado, sem realmente iniciar o download? aptitude show
e apt-cache info
mostrará a seção (por exemplo, metapacote, base, gráficos), mas não o repositório ao qual um pacote pertence (por exemplo, http://ppa.launchpad.net/mactel-support/ppa/ubuntu ou http: // us .archive.ubuntu.com / ubuntu / ).
Ao instalar o pacote, o repositório real aparece durante o download (ele é impresso na saída "download de ..." de programas apt e similares), mas como obter informações sobre o repositório que contém o pacote (ou um arquivo específico) versão de um pacote) sem fazer o download e instalá-lo primeiro?
Além disso, como determinar o repositório de origem de um pacote que já está instalado?
fonte
Respostas:
Eu corro
apt-cache policy <package name>
:Isso significa que existem três
wajig
pacotes:Um que está instalado (
/var/lib/dpkg/status
)Um que está disponível em um repositório local (
file:/home/wena/.repo_bin/
)Um que está disponível em um repositório remoto (
ftp://ftp.is.co.za/debian
), que também possui a mesma versão ( 2.0.47 ) da versão em um repositório localAlém disso,
apt-cache madison <package name>
exibirá informações semelhantes em um formato tabular.fonte
2.1
versão não está disponível em nenhum repositório. É construído localmente.***
ou/var/lib/dpkg/status
?apt-cache policy
diz:Installed: (none)
.Aha! Aparentemente, o
apt
comando apropriado não éapt-cache info
, mas simapt-cache showpkg
.A
File:
linha fornece as informações do repositório após o/var/lib/apt/lists/
.Há um relatório de erro que
aptitude
não pode exibir o repositório de origem , mas parece que atualmente o recurso ainda está na lista de desejos.fonte
apt-cache showpkg
) não está marcada como correta.Isso funciona para mim (mostra onde está o pacote 2vcard):
Você pode aplicar filtragem adicional para verificar versões, etc., se várias versões estiverem disponíveis.
fonte
dpkg
, no entanto.Eu me pergunto por que ninguém mencionou
aptitude
. Eu uso isso o tempo todo.Aptidão é:
sudo apt install aptitude
ncurses
interface gráfica (mas na maioria das vezes é usada sem ela)fornece uma saída realmente bonita. Para mostrar versões de pacotes, use o
aptitude versions
comando:não tem Super Cow Powers
A letra na frente de cada string indica o status do pacote, i está instalado ep é eliminado (ou nunca instalado), estável , testing e instável são definições de repositório, o número no final é uma prioridade de pinos .
Uma ressalva sobre as versões recentes do aptitude que vale a pena mencionar aqui: por padrão, mostra todos os pacotes, que incluem o nome que você pesquisa, portanto, use um regex mágico para pesquisar pelo nome estrito, por exemplo
aptitude versions ^kde-workspace$
.fonte
versions
basta verificar os valores de fixação apropriados dos pacotes fornecidos, não os repositórios associados. No entanto, ainda é útil se você souber todos os seus repositórios e como eles são fixados.Infelizmente, essas informações não são registradas durante a instalação do pacote. Você pode adivinhar se o repositório ainda está na lista de fontes e o repositório ainda possui o pacote:
apt-cache showpkg
está mostrando dados do banco de dados do repositório (não o que está instalado), por isso é outra forma das mesmas informações do grep.Mesmo o sináptico não pode dizer (na tela Origem) se você desabilitar o repositório e atualizar.
fonte
Ou, inspirado no Sunny, você pode tentar:
ps. não é 100% preciso.
fonte