Ubuntu y Debian utilizan paquetes para aumentar las capacidades del sistema, permitiendo a los usuarios hacer más con sus máquinas. Sin embargo, por muy bueno que sea este sistema de paquetes, las cosas pueden romperse. Ya sea por una mala instalación, una mala configuración, o si algo externo modificó los archivos después de la instalación, los paquetes pueden a veces ir mal y dejar de funcionar, haciéndolos ‘rotos’. Esto también puede afectar a apt-get, el gestor de paquetes integrado, lo que puede hacer que no pueda instalar ningún paquete adicional, actualizarlo o incluso eliminar alguno por completo.
En este tutorial, repasaremos varios métodos para arreglar sus paquetes rotos tanto en Ubuntu 16.04 como en Debian 9. Dado que este problema puede ocurrir debido a varias razones, existen varias soluciones, algunas de las cuales pueden o no funcionar en su máquina. Por lo tanto, es mejor ver qué paquete específico se rompió y por qué, lo que le ayudará a decidir qué método seguir primero.
Tabla de contenidos
Método 1: Usar apt-get
Más a menudo, un paquete roto que se rompió después de ser instalado puede ser relativamente fácil de arreglar, gracias a una herramienta incorporada dentro de apt-get. Ejecutar los siguientes comandos tratará de arreglar cualquier paquete roto actualmente instalado en su sistema:
sudo apt-get update --fix-missing
sudo apt-get install -f
(la opción -f es la abreviatura de fix-broken.)
Trate de ver si el primer comando arregla su problema antes de ejecutar el segundo comando. Dale unos momentos para que intente arreglar cualquier error que pueda encontrar. Si funciona, intente utilizar el paquete que no funcionaba – es probable que ya esté arreglado. En caso de que aún no esté arreglado, pase a la siguiente solución.
Método 2: Usando dpkg y apt-get
Esta solución le ayudará si un paquete de software se rompió mientras se instalaba. Puede intentar usar el método anterior antes de continuar, ya que puede ayudar. Primero, limpiamos apt-get e intentamos usar dpkg para configurar cualquier paquete que lo necesite:
sudo dpkg --configure -asudo apt-get cleansudo apt-get update
Después de esto, mira si el paquete se ha arreglado. Si no lo ha hecho, es posible que tenga que eliminar los archivos de bloqueo. Los archivos de bloqueo se utilizan para mantener los recursos disponibles para ciertos programas – ayuda a evitar que otros programas accedan a los archivos al mismo tiempo. Esto se puede hacer simplemente borrando la lista de archivos de bloqueo:
sudo rm /var/lib/apt/lists/lock
Después de esto, intente y ejecute los comandos anteriores una vez más. A partir de ahí, intente reinstalar el paquete para ver si ahora se puede instalar con éxito.
Método 3: Usar dpkg para la eliminación forzada
A veces, en raras ocasiones, los comandos anteriores no funcionarán, y un paquete roto no se podrá arreglar. En este caso, tendrá que eliminar el paquete manualmente y con fuerza. Este método requiere que ya sepa qué paquete está roto.
Puede intentar primero eliminar el paquete problemático normalmente a través de apt-get introduciendo el siguiente comando:
sudo apt-get remove
Probablemente no tenga éxito, pero vale la pena intentarlo antes de eliminarlo a la fuerza.
Dependiendo de los errores que obtenga al tratar de eliminar el paquete normalmente, podría ser capaz de identificar el paquete roto usando dpkg y grep:
dpkg -l | grep ^..r
Este comando lista todos los paquetes, luego grep lista cualquier resultado que contenga la bandera ‘r’ en el tercer campo, que significa «reinst-required» (reinstalación requerida). Si el paquete roto aparece, podrá eliminarlo.
Ejecute el siguiente comando para eliminar por la fuerza el paquete de su máquina. No olvides introducir tu contraseña para autorizar el borrado. Reemplace con el nombre del paquete roto.
sudo dpkg --remove --force-remove-reinstreq
Una vez hecho esto, limpie y actualice apt-get:
sudo apt-get cleansudo apt-get update
Después de eso, intente instalar el paquete desde cero. Ahora debería instalarse normalmente.
Otras soluciones
Estos métodos son los mejores para arreglar o eliminar un paquete roto de su sistema – pero, a veces no será suficiente. En casos raros, el sistema no verá el paquete roto en absoluto, pero todavía impedirá que su apt-get funcione normalmente. En estos casos, ir manualmente y borrar los archivos suele ser la mejor solución. Sin embargo, el proceso para borrar estos archivos varía de un paquete a otro, y puede ser arriesgado. Por lo tanto, pruebe primero estas soluciones antes de intentar eliminar los archivos de su sistema.
Es de esperar que al seguir estos métodos haya arreglado o eliminado con éxito cualquier paquete roto que se encuentre en su sistema. Por supuesto, no necesita arreglar los paquetes rotos usted mismo si utiliza uno de nuestros servicios VPS Linux Gestionados, en cuyo caso puede simplemente pedir a nuestros administradores Linux expertos que lo hagan por usted. Ellos están disponibles 24/7, y le ayudarán a arreglar sus paquetes rotos inmediatamente.