Como removo apenas um pacote específico com o apt-get?

16

Acabei de instalar o MySQL-server e todas as suas dependências, entre outras necessidades. Mas quando foi para configurar o mysql-server, ele falhou em fazer isso e emitiu um erro. Qual erro não é relevante aqui, pois consegui localizar o problema como um problema de dependência entre o mysql-server e o mysql-common. O mysql-common precisa ser removido.

Mas quando vou a

apt-get purge remove mysql-common 

Ele automaticamente quer remover tudo associado a ele também, incluindo todas as dependências do mysql, até mesmo o apache2 e o php5.

Então, qual argumento precisa ser adicionado ao comando apt-get para desinstalar APENAS UM pacote, deixando todos os outros intactos.

    
por insomnia 09.08.2012 / 22:47

2 respostas

18

o apt-get não permite que você faça isso, já que é uma etapa potencialmente perigosa para um sistema de gerenciamento de pacotes permitir.

Contanto que você saiba que pode haver consequências, use dpkg com a opção --remove para fazer isso. Por exemplo:

sudo dpkg --remove mysql-common
  

Observação : No meu sistema 12.04 com apache2, php5, mysql-server instalado separadamente, usando apt-get para remover mysql-common NÃO deseja remover apache2 ou php5 .

Do comentário da insônia: Se você precisar anular a decisão do sistema de dependências, você pode (com muito cuidado e ter certeza de que sabe o que está fazendo) usar --force-depends adicional.

sudo dpkg --remove --force-depends mysql-common
    
por ish 09.08.2012 / 22:52
0

Se alguém gostaria de saber que existe o comando 2014 debian its:

dpkg --force-all -r name_of_package

Mudou um pouco

Existe um monte de argumentos --force- então, por causa da depency, verifique-os melhor:

dpkg --force-help
    
por Michal Sapsa 13.09.2014 / 17:40

Tags