Mysql-common não pode ser desinstalado

Mysql-common não pode ser desinstalado

Estou tentando desinstalar completamente o mysql para reinstalá-lo mais tarde, depois de desinstalar todos os pacotes relacionados ao mysql, o mysql-common parece permanecer em um estado quebrado.

$ sudo dpkg -l | grep mysql
pc  mysql-common                                  5.6.28-0ubuntu0.15.10.1                      all          MySQL database common files, e.g. /etc/mysql/my.cnf

Mas executando o apt-get remove

$ sudo apt-get remove mysql-common
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package 'mysql-common' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 36 not upgraded.

Ou com --purge

$ sudo apt-get remove --purge mysql-common
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
  mysql-common*
0 upgraded, 0 newly installed, 1 to remove and 36 not upgraded.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 199090 files and directories currently installed.)
Removing mysql-common (5.6.28-0ubuntu0.15.10.1) ...
Purging configuration files for mysql-common (5.6.28-0ubuntu0.15.10.1) ...
update-alternatives: error: no alternatives for my.cnf
dpkg: error processing package mysql-common (--purge):
 subprocess installed post-removal script returned error exit status 2
Errors were encountered while processing:
 mysql-common
E: Sub-process /usr/bin/dpkg returned an error code (1)

Além disso, removi todos os diretórios e arquivos relacionados ao MySQL.

Como posso me livrar desse pacote quebrado e persistente?

Responder1

Alguns pacotes não podem ser desinstalados se algumas dependências desaparecerem ou se alguns arquivos de configuração tiverem sido excluídos por algum motivo. Você acabará com um pacote que não está completamente instalado nem completamente desinstalado.

A solução, neste caso, está no sudo apt-get installpacote. Se necessário, faça sudo apt-get install --reinstall [package]. Os arquivos ausentes serão adicionados ao sistema e quaisquer dependências ausentes serão instaladas instantaneamente. Em seguida, o pacote pode ser desinstalado completamente da maneira usual: sudo apt-get remove [package].

Se apt-getse recusar a reinstalar o pacote devido a outros problemas (de dependência), você só poderá usar apt-getpara baixar o pacote e usá-lo dpkgdiretamente para instalá-lo:

apt-get download mysql-common
sudo dpkg -i mysql-common_*.deb
sudo apt-get install -f

Às vezes você pode pular o download porque o Apt tende a manter um arquivo de pacotes baixados e instalados anteriormente /var/cache/apt/archives/para que você possa começar diretamente a partir do segundo passo:

sudo dpkg -i /var/cache/apt/archives/mysql-common_*.deb

informação relacionada