Descubra quais pacotes foram instalados com um pacote específico?

4

Eu tenho uma pergunta simples.

Quando você instala um pacote usando apt-get install , muitas vezes, ele instala vários pacotes de dependência, além do principal. Eu queria saber se há uma maneira de reverter completamente essa instalação. Muitas vezes, remover o pacote principal deixará vários pacotes para trás. Por exemplo, instalei recentemente kubuntu-desktop . Querendo removê-lo completamente, tive que seguir as instruções nesta página:

link

Eu gostaria de saber exatamente como eles obtiveram essa informação referente a todos os pacotes para desinstalar.

Obrigado por qualquer ajuda!

    
por cemulate 28.04.2011 / 05:28

4 respostas

4

Na maioria dos casos, o comando autoremove de apt-get faria o truque, ele removeria todos os pacotes instalados e marcados como automaticamente instalados, mas não exigido por nenhum outro pacote instalado. Este é o método preferido e seguro quando o pacote principal não é um meta-pacote.

Este não é o caso de meta-pacotes como kubuntu-desktop , e isso ocorre porque os pacotes instalados como conseqüência da instalação de um meta-pacote não são marcados como instalados automaticamente, portanto não podem ser removidos por autoremove .

Remover todos os pacotes marcados como dependências ou recomendados por um metapacote dado, como kubuntu-desktop , pode ser perigoso, porque alguns desses pacotes podem estar em seu sistema antes da instalação do metapacote .

O método mais seguro para prosseguir, na minha opinião, é uma análise de /var/log/dpkg.log e seus antepassados, para ver quais pacotes foram instalados em registros de data e hora em torno do timestamp da instalação do pacote ofensivo fornecido. Eu sugiro um comando para obter uma visão mais concisa e limpa da concatenação dos arquivos de log envolvidos:

less $(ls -rt /var/log/dpkg.log*) |
  awk ' ~ /^(install|upgrade|remove|purge)$/' |
  less
    
por enzotib 28.04.2011 / 09:06
0

Acho que a maneira mais fácil de descobrir quais pacotes vieram com algo como o kubuntu-desktop (ou qualquer outro pacote) seria verificar o link . Isso fornece uma lista detalhada de tudo que é necessário, recomendado e sugerido para cada pacote disponível através dos repositórios offiial.

Para o 10.10, o pacote kubuntu-desktop está localizado aqui: link

Se algo estiver marcado como "depende", é necessário que o pacote funcione corretamente. Se estiver marcado como "recomenda", então ele é instalado por padrão, mas não é obrigatório (o apt-get install --no-intstall-recommends os impedirá de serem instalados), e os sugeridos são puramente opcionais e não são instalados por padrão. / p>

Você também pode fazer check-in no gerenciador de pacotes synaptic (instalado por padrão - no menu de administração, acredito). Clique com o botão direito do mouse em qualquer pacote e selecione Propriedades, selecione a guia Dependências e verifique se o menu suspenso está em "Dependências". Isso mostra as mesmas informações encontradas em packages.ubuntu.com.

Tanto quanto eu sei, ambos os métodos listam as dependências diretas do pacote atual, mas não dependências de dependências. Eu não estou 100% sobre isso, mas não me surpreenderia.

se você instalar pacotes via apt-get e estiver instalando dependências e pacotes recomendados, antes de apertar a tecla 'y', você sempre poderá copiar as listas de pacotes que serão instaladas. Então mais tarde você pode ligar essa lista em um apt-get remove e deve se livrar de tudo isso. Apenas certifique-se de que nada mais que você tenha instalado (que deseja manter) também depende de qualquer coisa que seja removida.

Outra ferramenta útil é o apt-get autoremove. Isso removerá qualquer coisa que você não instalou manualmente (foi extraído como uma dependência ou pacote sugerido) que era uma dependência de algo que não está mais instalado. Na minha experiência, isso nem sempre funciona para pacotes meta como o kubuntu-desktop.

    
por gregghz 28.04.2011 / 08:33
0

Experimente debfoster . Primeiro, instale-o usando sudo apt-get install debfoster e, em seguida, execute sudo debfoster kubuntu-desktop . Ele removerá todos os pacotes meta instalados como parte de kubuntu-desktop .

    
por Madhava 28.04.2011 / 05:58
0

Use apt-cache depends para listar todos os pacotes "dentro" de um pacote meta:

apt-cache depends kxstudio-meta-audio-plugins-lv2
kxstudio-meta-audio-plugins-lv2
  Depends: carla-lv2
  Depends: carla
  Depends: carla-dbg
  Depends: abgate
  Depends: avldrums.lv2
  Depends: drmr
  Depends: eq10q
  Depends: freaked-plugins
  (...)
    
por yPhil 13.07.2017 / 16:30