Como remover o metapackage inteiramente no Debian

0

Existe alguma maneira de remover o pacote meta e todos os seus pacotes? Subconjunto de meta-pacotes são pacotes que não dependem do metapacote por todos os meios. É por isso que, se remover um meta-pacote, apenas o subconjunto de meta-pacotes do pacote não será removido.

Por exemplo, metapackage apache2 consiste em alguns pacotes que serão instalados se instalar apache2 . Eu usei o comando apt-get install apache2 no shell e synaptic e instalei alguns pacotes. Agora, se eu remover o meta-pacote apache2 via apt-get autoremove apache2 comando ou synaptic eu removerei apache2 pacote apenas e outros pacotes que são um subconjunto do meta-pacote não são removidos.

Na minha opinião, a melhor maneira é remover todos os pacotes dentro do metapacote. Como resolver o problema?

    
por YarLinux 07.05.2013 / 17:46

1 resposta

1

Até onde eu sei, apache2 não é um meta-pacote . Vários pacotes possuem dependências, portanto, instalar apache2 também fará com que outros pacotes sejam instalados, mas isso não os torna um meta-pacote.

De qualquer forma, não sei exatamente o que você está tentando alcançar, por isso, darei algumas opções:

  1. Se você deseja remover pacotes que não são mais necessários, por exemplo, coisas que foram instaladas por apache2 e não são mais necessárias agora que você a removeu, use autoremove :

    apt-get autoremove
    
  2. Se você realmente quiser remover todos os pacotes instalados por um verdadeiro metapacote, você pode fazer algo assim (usando o wicd metapackage como exemplo):

    i. Encontre os pacotes instalados pelo metapacote pesquisando no apt log:

    $ grep -A 3 wicd /var/log/apt/history.log
    Commandline: apt-get install wicd
    Install: rfkill:amd64 (0.4-1, automatic), wicd:amd64 (1.7.2.4-4), python-wicd:amd64 (1.7.2.4-4, automatic), wicd-daemon:amd64 (1.7.2.4-4, automatic), wicd-gtk:amd64 (1.7.2.4-4, automatic)
    End-Date: 2013-05-07  18:10:24
    

    ii. Você pode analisar isso para obter apenas os nomes dos pacotes:

    $ grep -A 3 wicd /var/log/apt/history.log | 
        perl -ne 's/Install:*// && do {
          @a=(/\s+([^\s]+?):/g); print "@a\n"
         }'  
      rfkill wicd python-wicd wicd-daemon wicd-gtk
    

    iii. Agora você pode removê-los (estou imprimindo o comando apt em vez de executá-lo para que você possa ver o que será desinstalado primeiro):

    $ grep -A 3 wicd /var/log/apt/history.log | 
        perl -ne 's/Install:*// && do {
          @a=(/\s+([^\s]+?):/g); print "apt-get remove @a\n"
         }'  
      apt-get remove  rfkill wicd python-wicd wicd-daemon wicd-gtk
    
por 07.05.2013 / 18:26