Solución a: “Unable to correct problems, you have held broken packages” en Debian, Ubuntu y derivados
¿Al instalar o actualizar paquetes con apt
, te aparece este mensaje?
E: Unable to correct problems, you have held broken packages.
Este error significa que APT detectó paquetes con dependencias insatisfechas o retenidos, lo que impide continuar con la instalación. Suele ocurrir por paquetes dañado, repositorios incompatibles o instalaciones interrumpidas.
¿Qué lo produce?
- Dependencias requeridas no disponibles o incompatibles (mismatch version)
- Repositorios externos o PPAs no compatibles con tu versión de Ubuntu/Debian
- Instalaciones anteriores interrumpidas o paquetes marcados como “hold”
Cómo solucionarlo paso a paso
1. Actualizá la caché e intentá un fix básico
sudo apt update --fix-missing
sudo apt install -f
sudo dpkg --configure -a
Estos comandos corrigen dependencias faltantes y configuraciones pendientes.
2. Verificá paquetes marcados como “held”
dpkg -l | grep ^h
apt-mark showhold
Si aparecen, liberalos con:
sudo apt-mark unhold nombre_paquete
3. Identificá dependencias insatisfechas
sudo apt-get check
Podés ver paquetes con errores e identificar cuál causa el conflicto.
4. Remová e reinstalá paquetes problemáticos
sudo apt remove nombre_paquete
sudo apt autoremove
sudo apt install nombre_paquete
Esto es útil cuando un paquete causa un conflicto versionado.
5. Usá Synaptic para reparar paquetes rotos
Instalá Synaptic y usá la opción “Fix Broken Packages”:
sudo apt install synaptic
synaptic
Esta herramienta gráfica a veces detecta y repara lo que la terminal no puede.
6. Forzar reinstalación de versiones compatibles (si es necesario)
En casos de mismatched versions por PPAs, podés forzar una versión específica:
sudo apt install paquete=versión_deseada
Esto restaura dependencias compatibles.
Buenas prácticas para evitar este error
- Evitar agregar repositorios no compatibles con tu versión del sistema operativo.
- Actualizar regularmente y evitar cancelar instalaciones en curso.
- Utilizar siempre comandos APT recomendados antes de agregar paquetes externos.
Conclusión
El mensaje “Unable to correct problems, you have held broken packages” no siempre es grave. Con los pasos adecuados —actualizar caché, reparar dependencias, liberar paquetes retenidos o reinstalarlos— podés normalizar el sistema. En casos complicados, usar Synaptic o forzar versiones compatibles puede ayudarte a resolverlo sin reinstalar el sistema.
¿Te sirvió esta guía? Compartila y explorá más contenidos útiles en NotiLinux.com.