Mostrando entradas con la etiqueta Ubuntu. Mostrar todas las entradas
Mostrando entradas con la etiqueta Ubuntu. Mostrar todas las entradas

13 abril 2017

¿Arranque lento en Linux? Revisa tu archivo fstab

Tengo un disco SSD de 250GB, con lo que el arranque de cualquiera de las distribuciones que tengo es rapidísimo (entre 5 y 10 segundos, y no exagero).

Desde hacía unas semanas había notado que el arranque de Ubuntu era muy lento para mis costumbres: alrededor de 1 minuto desde que lo seleccionaba en el Grub hasta que me pedía el usuario/contraseña.

Así que hoy me he puesto a investigar.

He llegado a la conclusión de que debía ser "algo" de lo que se carga antes de iniciar completamente el sistema.

He revisado el archivo /etc/fstab que es donde se definen las particiones y los montajes correspondientes, y ha aparecido la petaca.

Lo primero de todo ha sido revisar cómo tengo las particiones y qué es lo que tengo en cada una de ellas, ya que no me acordaba. 

El comando lsblk -fm me da la información que estaba buscando, y de una forma muy esquemática y agrupada

Como puede verse en la imagen, tengo 2 discos duros: /dev/sda y /dev/sdb

El primero (/dev/sda) es el rápido, el ssd, donde tengo instalados los sistemas operativos. Las distintas particiones si identifican como veis en la imagen.

El otro disco (/dev/sdb) lo uso de forma común para todas las distros, montando automáticamente las particiones creadas, y accesibles desde todos los sistemas, ahorrando espacio y teniendo todo a mano.

Podemos ver el denominado UUID (identificador único universal) para cada partición. Este dato es el que suele usar el sistema operativo por defecto en la instalación, ya que, según dicen los expertos es más 'robusto' referirse a las particiones por este identificador que por otros (por ejemplo /dev/sdx, o a través de sus etiquetas -label-...).


Cuando lo he revisado, he visto que en mi /etc/fstab tenía 2 referencias distintas a la "swap", con 2 uuid distintos, pero si miráis en la primera imagen sólo tengo una partición "swap", lo que estaba originando que el arranque se demorara mucho por estar intentando montar una partición que no existía.

Recordé entonces que hace varias semanas, cuando todavía tenía la 16.10 de ubuntu, redimensioné algunas particiones (entre ellas la swap) para reducirlas y hacer hueco a la última distribución que instalé, y por dicho motivo, la nueva "swap" tenía una UUID diferente.

Estas situaciones pueden también generarse por la instalación de nuevas distribuciones, a través de USB, ya que algunas veces, el sistema cambia el orden de /dev/sdX (siendo 'X' la letra que identifica a uno u otro disco).

Dado que la beta 17.04 de Ubuntu la instalé a través de update-manager -d, se conoce que el sistema no borró el /etc/fstab antiguo y lo único que hizo fue añadir la nueva swap, pero dejó la referencia de la vieja, que es la que no encontraba.

Por comodidad de identificación para mí, dado que una partición primaria estática identificada como  /dev/sda2 siempre va a ser /dev/sda2, y una /dev/sda5 (donde actualmente tengo montada la partición de intercambio) siempre va a ser una /dev/sda5, he eliminado la fila con la UUID errónea y he cambiado las referencias al UUID por la numeración de la partición primaria correspondiente.

En la imagen veis que he comentado la fila marcada en azul, y he añadido la misma fila (remarcada en rojo), pero llamando al dispositivo por su nombre de partición....

... E voilá;  el sistema vuelve a arrancar en 6 segundos!!

02 abril 2017

Eliminar Kernel antiguos en Debian, Ubuntu y derivados

Los usuarios de cualquier distro sabemos que con las diversas actualizaciones pueden acumularse imágenes del kernel en nuestro arranque, y que mucha veces nos ocupan espacio innecesario.

En Ubuntu, para limpiar entradas antiguas lo tenemos fácil:

  1. Vemos qué versión estamos usando
  2. Listamos las cabeceras (headers) que tenemos instaladas, para eliminar los antiguos que ya no nos interesan
  3. Lo mismo hacemos con las imágenes del kernel (image), para ver cuántas tenemos instaladas
  4. Después de cada paso, vamos eliminado los antiguos
Manos a la obra:

uname -r

En mi caso me devuelve lo siguiente:




Ya sabemos el kernel que estamos usando. IMPORTANTE: No borrar éste.

Ahora veamos cuántos 'kernel (linux-image) y cabeceras (linux-headers)' distintos tenemos:

dpkg --get-selections | grep -E "linux-image|linux-headers"

En la imagen de la derecha veis que tengo varios kernel y varias cabeceras, de las veces que voy actualizando.

Voy a dejar únicamente las correspondientes a la rama 4.18 (estoy editando este post antiguo en Agosto-18 y ya vamos por la 5ª revisión del kernel 4.18).

sudo apt remove --purge linux-headers-4.15 linux-headers-4.17


Ponemos 'S' y pulsamos 'INTRO'.... y ya está.

Lo mismo haremos con las imágenes del kernel


sudo apt remove --purge linux-image-unsigned-4.17

Como veis, esta acción seleccionará todos los "image" de kernel 4.17:



Igual que antes, pulsamos 'S' e Intro.... y el kernel se eliminará, liberando espacio.

Conviene siempre que tengáis las 2 últimas (cabeceras e imágen), por si una falla, para que podáis arrancar con la anterior.

Último post

Preparando un espacio de trabajo

            Ahora que tengo tiempo, retomo el blog. Por comodidad (y por capricho) he elegido la siguiente configuración: He optado por un ...