
Estoy intentando desinstalar completamente mysql para reinstalarlo más tarde. Después de desinstalar todos los paquetes relacionados con mysql, mysql-common parece permanecer en un estado roto.
$ 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
Pero ejecutando 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.
O con --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)
Además, eliminé todos los directorios y archivos relacionados con MySQL.
¿Cómo puedo deshacerme de este paquete roto que persiste?
Respuesta1
Algunos paquetes no se pueden desinstalar si algunas dependencias han desaparecido o si algunos archivos de configuración se han eliminado por algún motivo. Terminará con un paquete que no estará completamente instalado ni desinstalado por completo.
La solución, en este caso, está en sudo apt-get install
el paquete. Si es necesario, hazlo sudo apt-get install --reinstall [package]
. Los archivos faltantes se agregarán al sistema y las dependencias faltantes se instalarán sobre la marcha. Luego el paquete se puede desinstalar completamente de la forma habitual: sudo apt-get remove [package]
.
Si apt-get
se niega a reinstalar el paquete debido a otros problemas (de dependencia), solo puede apt-get
descargar el paquete y usarlo dpkg
directamente para instalarlo:
apt-get download mysql-common
sudo dpkg -i mysql-common_*.deb
sudo apt-get install -f
A veces puedes omitir la descarga porque Apt tiende a mantener un archivo de los paquetes previamente descargados e instalados /var/cache/apt/archives/
para que puedas comenzar directamente desde el segundo paso:
sudo dpkg -i /var/cache/apt/archives/mysql-common_*.deb