Tabla de contenido
Una vez más aquí. En esta ocasión vengo a dejar un pequeño TIP debido a un portátil que me han dejado. El caso es que el dueño se quejaba de que su Ubuntu tardaba una vida en iniciarse y que si podía hacerle algo, sin llegar a formatear el disco. Buscando un poco me encontré con la pequeña herramienta llamada systemd-analyze y que sirve para decirnos a los usuarios el tiempo que tarda en arrancar el sistema. Con este solo comando, el tiempo de arranque se puede comprobar de forma rápida y no solo eso ya que utilizando alguna opción más se puede ver cuáles son los procesos que más retrasan el arranque.
Cabe mencionar que ninguna mejora de software o hardware ha ayudado a agilizar el arranque del sistema como lo han hecho las unidades SSD, por lo que si no tienes el sistema instalado en una de estas unidades, verás que tus tiempos se parecerán más a los que voy a mostrar más abajo. Esto es debido a que el portátil con el estoy escribiendo este artículo, es uno con sus 9 años y que suelo utilizar para probar programas y cosillas, por lo que tiene un buen puñado de servicios activos.
Comprueba cuanto tarda en arrancar el sistema
Sin más, puedes comprobar cuánto tarda en arrancar tu sistema con el siguiente comando:
systemd-analyze
Como digo, la imagen se explica por sí sola: la primera cifra se refiere a lo que ha tardado en arrancar el kernel y la segunda al espacio de usuario, aunque hay una tercera que matiza lo que se ha tardado en levantar el sistema gráfico.
Y si quieres saber cuáles son los servicios que más demoran el arranque, solo hay que escribir el anterior comando con la opción blame:
systemd-analyze blame
Crear una imagen con el resultado de systemd-analyze
Como una imagen vale más que mil palabras, si escribimos la siguiente orden:
systemd-analyze plot > archivo.svg
Vamos a crear un archivo .SVG en el directorio home, con un gráfico que nos va a indicar el tiempo de carga de cada uno de los servicios.
Desactiva los servicios
Lo único que nos queda es estudiar que servicio no son necesarios en nuestro caso y desactivarlos con el siguiente comando:
systemctl disable nombre.service
El comando disable permite desactivar aquellos servicios que se inicien de forma automática, pero no evita que se inicien de forma manual. Para eso existe otra opción, pero bueno, aquí hay que tener cuidado con lo que se toca, lo mejor es informarse acerca de qué hace cada servicio antes de desactivarlos.
Esta medición de systemd tiene en cuenta el tiempo transcurrido desde que inicia el cargador de arranque hasta que aparece la pantalla de inicio de sesión. Además de la curiosidad, puede ayudar a determinar si algún servicio está ralentizando el arranque para tomar cartas en el asunto. Insisto en que hay que tener cuidado con lo que se toca.
Por supuesto, me parece evidente, pero quiero aclarar que esto solo funciona en sistema que usen systemd. Y como en la práctica son la amplia mayoría de distribuciones GNU/Linux, pues eso.