Cómo liberar espacio en el sector Boot en Ubuntu

Si alguna vez has intentado instalar actualizaciones de seguridad del kernel Linux y te ha salido un prompt indicándote que no hay espacio suficiente en el disco y te hace la recomendación de liberar espacio en Boot, en estas líneas te mostrare como puedes recuperar espacio en la carpeta /boot en Ubuntu y distribuciones derivadas al eliminar los Kernels antiguos.

hacer-espacio-particion-boot-en-linux

Cada vez que se instalan actualizaciones del Kernel, en el sistema se mantienen las versiones anteriores, a menos que las eliminemos de manera manual.  Luego de varias actualizaciones continuas puede que el espacio en la carpeta boot sea muy poco y debido a eso no sea posible instalar nuevos paquetes.

Entonces, primero debemos tener claro porque nos quedamos sin espacio en la carpeta boot.  Si tenemos un sistema de particiones en el que no está habilitado el sistema LVM, y tenemos una sola partición, no habrá ningún problema, pero en cambio si tenemos un sistema instalado con un esquema de LVM, la carpeta /boot está en una partición aparte y con un espacio restringido y simplemente llegara ese momento en el que nos quedemos sin espacio en esa ubicación y tendremos que liberar espacio allí para poder continuar instalando esas actualizaciones de seguridad del kernel.

Generalmente podemos emplear un apt-get con la opción de autoremove que nos permita detectar y eliminar del sistema todos esos paquetes y/o dependencias antiguas.  Sería algo asi:

$ sudo apt-getautoremove

La mayoría de las veces este comando suele resolver ese problema sin ningún inconveniente, pero al tratarse de los kernels no es tan sencillo, ya que no siempre detecta esos paquetes antiguos para luego eliminarlos, y debemos tomar el camino manual.

Antes de tomar cartas en el problema, debemos identificar todas esas versiones obsoletas del kernel  que están almacenadas en nuestro sistema usando este código.

$ sudodpkg –get-selections | greplinux-image

A continuación te muestro un ejemplo de el resultado que arrojara el sistema, claro no debes tener en cuenta los números de las versiones, eso cambiara de acuerdo a los datos propios de cada sistema.

linux-image-3.19.0-33-genericdeinstall

linux-image-3.19.0-37-generic            install

linux-image-3.19.0-39-generic            install

linux-image-3.19.0-41-generic            install

linux-image-extra-3.19.0-33-genericdeinstall

linux-image-extra-3.19.0-37-generic      install

linux-image-extra-3.19.0-39-generic      install

linux-image-extra-3.19.0-41-generic      install

Ya cuando tengamos establecido los paquetes relacionados con las versiones antiguas, podemos comenzar a borrarlos manualmente, en el caso señalado anteriormente son los paquetes correspondientes a la versión 3.19.0-33.  Por cuestiones de seguridad es recomendable dejar al menos 2 versiones anteriores a la actual o solo eliminar la más antigua y mantener las demás.

Ahora bien, podemos hacer eso tanto desde la terminal, como desde algún administrador de paquetes gráfico, como Synaptic o para los usuarios de Ubuntu el Ubuntu Software Center.

Usando la terminal

Para eliminar los kernels antiguos desde la terminal ejecutamos el siguiente comando.

$ sudo apt-get remove –purge linux-image-3.19.0-33-generic linux-image-extra-3.19.0-33-generic

Después de ejecutar ese comando, ya el sistema debería contar con espacio suficiente para poder instalar las actualizaciones relacionadas a la nueva versión.  También es recomendable actualizar el gestor de arranqueGrub para que reconozca correctamente los cambios que realizamos en las versiones del kernel.

$ sudo update-grub

De todos modos, esto se hace automáticamente luego de hacer la instalación de alguna actualización de kernel, pero después de eliminar los paquetes, no está de sobra el conocer cómo hacerlo de forma manual.  Debemos tener presente que si eliminamos los paquetes relativos a la versión más antigua y aun falta espacio para las actualizaciones nuevas, procedemos a realizar el proceso otra vez y eliminamos otra versión.

Usando Ubuntu Software Center

Eliminar los antiguos paquetes de las actualizaciones también lo podemos realizar desde algún gestor de paquetes grafico, para los usuarios de Ubuntu les explicare como poder hacerlo utilizando el Ubuntu Software Centerque es la aplicación con la que podemos administrar aplicaciones y paquetes de forma gráfica en Ubuntu.

Si accedemos al Ubuntu Software Center desde el Dash, encontraremos en el menú superior varias opciones, ahí nos desplazaremos hasta encontrar las aplicaciones que están instaladas.

ubuntu-software-center-instalado1

Ya cuando estemos ahí, nos dirigiremos a la parte inferior y haremos clic en “mostrar (cantidad) elementos técnicos” es ahí donde visualizaremos el contenido en forma de paquetes y así será más sencillo ver el total de paquetes instalados en el sistema.  Si en el buscador que está en la parte superior escribes “Linux” deberá mostrar una lista con todos los paquetes que contengan esa palabra y que generalmente son los paquetes relativos al kernel.

ubuntu-software-center-mostrar-elementos-tecnicos

Los paquetes que buscaremos son los paquetes de tipo linux-image-numerodeversion-genericy linux-image-extra-numerodeversion-generic.  Ya cuando los identifiquemos de acuerdo al número de visión más antigua podemos borrarlos.

ubuntu-software-center-kernel-linux

Esto es todo en cuando al uso de Ubuntu Software Center para eliminar paquetes de kernel antiguos, pero puedes usar el gestor gráfico de paquetes de tu preferencia, si quieres usar Synaptic o Muon, también puedes utilizarlo en el caso de KDE.