Como posso saber se um pacote foi instalado pelo dpkg ou apt?

15

Eu quero remover o pacote, mas esqueci como o instalei por dpkg ou apt-get

Eu tento verificar através de dpkg-query -list | grep myPackage e apt list --installed | grep myPackage , mas myPackage foi exibido em ambos.

so como posso saber se o pacote foi instalado pelo dpkg ou apt?

Para fazer o comando de desinstalação correto, como: apt-get remove ou dpkg -r

    
por stackoverYC 25.02.2017 / 13:02

3 respostas

28
  1. Compare o log de /var/log/apt/term.log , que é o arquivo de log gerado por apt e /var/log/dpkg.log , que é o arquivo de log gerado por dpkg . Se você observar um nome de pacote que pode ser encontrado em /var/log/dpkg.log , mas não em /var/log/apt/term.log , é muito provável que você tenha instalado o pacote por dpkg dessa vez.

  2. Lembre-se de que apt é um frontend para dpkg . Portanto, recomenda-se remover qualquer pacote por apt em vez de dpkg , porque apt manipulará a dependência para remover os pacotes que não serão usados por nenhum outro pacote (ou marcá-los como "não usar mais" "para permitir que você os remova mais tarde. Depende das opções exatas de apt que você realmente usa). No entanto, não é prejudico remover o pacote por dpkg , se desejar. Você provavelmente deixará muitos pacotes que não serão mais usados.

por tai271828 25.02.2017 / 13:43
21

Qualquer pacote instalado com o APT também é instalado com dpkg . O APT calcula as dependências e busca os pacotes, que são então descompactados e instalados por dpkg .

Se você puder encontrar seus pacotes com o APT, use os comandos apt para desinstalá-los, porque o APT calculará as dependências do pacote e:

  • remover pacotes que dependem do pacote selecionado para remoção
  • marca pacotes que são dependências do pacote selecionado para remoção como não mais necessários, para que possam ser limpos com sudo apt autoremove
por Zanna 25.02.2017 / 13:15
4

Não importa como desinstalar um pacote.

dpkg também requer dependências definidas no pacote.

Quando você executa apt remove , inicia dpkg para remover o pacote.

Quando você instala um pacote usando dpkg e requer alguns dependenices, o processo de instalação é interrompido com um erro. Você pode consertá-lo por sudo apt install -f que instalará as dependências se elas estiverem disponíveis. Nesse caso, apt autoremove funcionará da mesma maneira.

    
por Pilot6 25.02.2017 / 13:53

Tags