Pregunta:
Tengo un VPS delgado que ejecuta Ubuntu 14.04 con actualizaciones de seguridad automáticas. Ha llenado la partición / boot con muchas actualizaciones del kernel. Estoy tratando de eliminar los más antiguos, pero me encuentro con un error de dependencias "no satisfechas" que me exige que arregle otro paquete antes de poder continuar. Desafortunadamente, la dependencia no satisfecha quiere instalar un nuevo kernel en la partición que está 100% llena.
$ sudo apt-get remove [an old linux-image* package]
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
linux-image-extra-3.13.0-88-generic : Depends: linux-image-3.13.0-88-generic but it is not going to be installed
linux-image-generic : Depends: linux-image-3.13.0-88-generic but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
Con la partición llena, no hay forma de que apt-get -f install
corrija nada. ¿Hay alguna manera de decirle a apt-get
que no busque dependencias no satisfechas en la base de datos, que no tienen nada que ver con los paquetes que necesito eliminar? Una vez que libero algo de espacio, también puedo resolver los paquetes rotos.
Mi solución alternativa es liberar espacio manualmente moviendo algunos kernels fuera del camino (a /kernels
), solucionar el problema de dependencia, eliminar algunos paquetes de kernel y mover /kernels/*
hacia atrás si no puedo indicarle a apt-get
que coopere de otra manera .
EDITAR
Intenté apt-get -f remove PACKAGENAME
, pero apt-get -f remove PACKAGENAME
el error dep. Pero apt-get -f autoremove
ignoró los problemas de apt-get -f autoremove
. Sin -f, autoremove golpea el error de dep. Con él, se encontraron algunos núcleos para su eliminación y está trabajando en ello. Entonces, aunque mi problema inmediato se resuelve, aún me gustaría saber si el apt-get -f remove PACKAGENAME
puede tener la misma capacidad de ignorar problemas de dependencia no relacionados.
Respuesta:
dpkg --remove
elimina los paquetes sin quejarse de la instalación fallida. Eso le da espacio en disco para hacer apt-get -f autoremove