¿Qué es el error Sub-process /usr/bin/dpkg returned an error code (1)?
Este fallo es uno de los problemas más frecuentes en distribuciones basadas en Debian y Ubuntu. Ocurre cuando el gestor de paquetes dpkg encuentra una interrupción o conflicto al intentar instalar, actualizar o eliminar un programa, dejando la base de datos de software en un estado inconsistente.
Causas principales del fallo de dpkg
- Descargas interrumpidas o paquetes corruptos en el sistema.
- Conflictos entre dependencias de repositorios PPA de terceros.
- Archivos de configuración o scripts de post-instalación defectuosos.
- Falta de espacio en el disco durante el proceso de descompresión.
Método 1: Reconfigurar los paquetes pendientes de dpkg
La solución más rápida consiste en forzar al sistema a procesar los paquetes que quedaron a medio instalar.
- Abre tu terminal de comandos.
- Ejecuta el comando:
sudo dpkg --configure -a - Si el proceso finaliza sin errores, limpia el caché de APT ejecutando:
sudo apt clean
Método 2: Forzar la reparación de dependencias rotas
Si la reconfiguración básica no funciona, puedes indicarle al gestor APT que busque y repare automáticamente los paquetes corruptos.
- Actualiza la lista de repositorios ejecutando:
sudo apt update --fix-missing - A continuación, fuerza la instalación de dependencias faltantes con:
sudo apt install -f - Prueba nuevamente a actualizar tu sistema con
sudo apt upgrade.
Método 3: Mover los archivos del paquete conflictivo en dpkg
Si el error indica el nombre de un paquete específico que causa la falla, puedes eliminar temporalmente sus scripts de control instalados.
- Identifica el nombre del paquete que genera el fallo en el mensaje de error de la terminal.
- Mueve sus archivos de control a una carpeta temporal ejecutando:
sudo mv /var/lib/dpkg/info/nombre-del-paquete.* /tmp/(sustituye 'nombre-del-paquete' por el nombre real). - Actualiza la base de datos de software:
sudo apt update - Reinstala el paquete afectado de forma limpia usando:
sudo apt install --reinstall nombre-del-paquete