Existe um método ou comando que pode dizer de qual repositório um pacote é proveniente?
Existe um método ou comando que pode dizer de qual repositório um pacote é proveniente?
Respostas:
dpkg -s <package>- permite encontrar a versão que você instalou. ( fonte )apt-cache showpkg <package>- mostrará uma lista de versões do pacote disponível. Para cada versão, a fonte do pacote, na forma de um nome de arquivo de índice, será fornecida.Se você deseja encontrar a fonte do pacote que está atualmente instalado, precisará da saída de dpkg -s <package>. Caso contrário, você pode simplesmente olhar para a versão mais recente produzida por apt-cache showpkg <package>.
$ dpkg -s liferea
Package: liferea
Status: install ok installed
Priority: optional
Section: web
Installed-Size: 760
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Architecture: i386
Version: 1.6.2-1ubuntu6
...
$ apt-cache showpkg liferea
Package: liferea
Versions:
1.6.2-1ubuntu6.1 (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid-updates_main_binary-i386_Packages)
Description Language:
File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid-updates_main_binary-i386_Packages
MD5: 557b0b803b7ed864e6d14df4b02e3d26
1.6.2-1ubuntu6 (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid_main_binary-i386_Packages) (/var/lib/dpkg/status)
Description Language:
File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid_main_binary-i386_Packages
MD5: 557b0b803b7ed864e6d14df4b02e3d26
...
Desde o primeiro comando, posso ver que a versão 1.6.2-1ubuntu6 do Liferea está instalada. No segundo comando, posso ver que essa versão está listada /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_lucid_main_binary-i386_Packages.
Sem muito esforço, posso deduzir que a linha de origem contém archive.ubuntu.com, ubuntu, lucid, e main.
E, com certeza, my /etc/apt/sources.listcontém a seguinte linha.
deb http://archive.ubuntu.com/ubuntu lucid main universe restricted multiverse
apt-cache policy <package name>(from: superuser.com/a/236605/37279 )
trustyfontes de pacotes do Ubuntu , adiciono temporariamente utopicao meu sources.listpara instalar a versão 1.20ubuntu3 do init-system-helperse, em seguida, removo o repositório novamente do meu sources.list, apt-cache showpkg init-system-helpersapenas mentiremos sobre a lista de pacotes originais e apt-cache policy init-system-helpersdeclararemos o óbvio.
Use o seguinte comando. Tem melhor saída:
apt-cache policy <Package Name>
Para o Ubuntu 16.04 e posterior, há uma maneira mais curta de fazer isso:
apt policy <Package Name>
apt-cache policyconsulte também superuser.com/a/236605/61370
apt-cache policyé bom, mas algumas vezes você precisa apt-cache showpkgcomparar as somas MD5 do pacote. Veja tambémdebsums --changed
policyopção é a mais útil ao comparar comsources.list
apt policy <package-name>método ainda mais simples pode ser usado, a partir das 16.04LTS. Depois que o 14.04LTS se tornar EOL em 2018, essa resposta talvez seja editada para usar o comando mais recente.
apt no Ubuntu 16.04+Ao lado apt-cache policy, showpkge showagora temos subcomandos mais simples e fáceis de lembrar: apt(não confunda com clássico apt-*):
apt policy <package>
Ou a alternativa com mais informações apt show <package>, linha começando com "APT-Sources:" .
Descrição: Este pacote fornece ferramentas de linha de comando para pesquisar e gerenciar, além de consultar informações sobre pacotes como acesso de baixo nível a todos os recursos da biblioteca libapt-pkg. Estes incluem: apt-get, apt-cache, apt-cdrom, apt-config, apt-key.
apt --helpOutros subcomandos também fáceis de lembrar:
apt list - listar pacotes com base nos nomes dos pacotesapt search - procure nas descrições dos pacotesapt show - mostrar detalhes do pacoteapt update - atualizar lista de pacotes disponíveisapt install - instalar pacotesapt remove - remover pacotesapt purge- remova pacotes e arquivos de configuração :
A remoção de um pacote remove todos os dados empacotados, mas geralmente deixa para trás pequenos arquivos de configuração do usuário (modificados), caso a remoção tenha sido um acidente. Apenas emitir uma solicitação de instalação para o pacote removido acidentalmente restaurará sua função como antes nesse caso. Por outro lado, você pode se livrar dessas sobras chamando purge, mesmo em pacotes já removidos. Observe que isso não afeta nenhum dado ou configuração armazenada no seu diretório pessoal.
apt upgrade - atualize o sistema instalando / atualizando pacotes
apt full-upgrade - atualize o sistema removendo / instalando / atualizando pacotesapt edit-sources - edite o arquivo de informações de origemapt policy xxxparece idêntico apt-cache policy xxx, talvez esse devesse ter sido um comentário. Ou pelo menos mencione que apt showparece precisar da -aopção para ver "registros adicionais" de outras fontes
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:
grep -l PKG /var/lib/apt/lists/*
Mesmo o sináptico não pode dizer se você desabilita o repositório e atualiza.