¿Tarda en arrancar tu distribución?
Systemd es el gestor de arranque, o administrador del sistema y de servicios para Linux, que actualmente utilizan muchas distribuciones GNU/Linux, como Debian, Ubuntu, openSUSE, Fedora o Arch Linux. La duración de los procesos de arranque del sistema puede variar dependiendo de múltiples factores entre los que se encuentra el hardware (características de los componentes del ordenador como CPU, GPU, tipo de disco local donde se encuentre el sistema, etc), y el software (distribución y versión de esta, escritorio, aplicaciones, etc), e, incluso, en unas mismas condiciones puede haber variaciones, unas veces de muy corta duración y otras un tanto más prolongadas debido a diversos factores.
Systemd-analyze
Systemd dispone de una herramienta llamada systemd-analyze, que permite evaluar el proceso de arranque con el fin de mostrar qué unidades están ocasionando una demora en el proceso de arranque. Estas unidades a las que nos referiremos a lo largo del texto hacen referencia fundamentalmente a servicios (.service), puntos de montaje (.mount), dispositivos (.device) o sockets (.socket). Una vez obtenida esta información se podría optimizar el sistema para minimizar el tiempo de arranque.
Esta herramienta, que utilizaremos en terminal, dispone de varios comandos que nos informan de la duración de los procesos con más o menos detalle. Veamos:
Comprobar cuánto tarda en arrancar tu sistema con el siguiente comando:
systemd-analyze
Y si quieres saber cuáles son los servicios que más demoran el arranque, le añades la siguiente opción:
systemd-analyze blame
Nota: presionar la tecla “q” cuando finalice de listar para salir.
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. En total, 9,2 segundos. Y en el siguiente comando se muestran los servicios que más tiempo han consumido.
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 y tomar cartas en el asunto (¡ojo con lo que tocas!). Aquí tienes toda la información sobre este comando.
Por supuesto, no hace falta decir que esto solo funciona en sistema que usen systemd, ¿verdad? Y como en la práctica son la amplia mayoría de distribuciones GNU/Linux…
Obtener información directa durante el arranque del sistema
Durante el arranque del sistema, cuando se muestra Bootsplash, presionamos “Flecha abajo” de las teclas de dirección, entonces se nos mostrarán las líneas de texto del proceso de arranque del sistema. Aquí podemos detectar algún error. La mayoría de las líneas estarán precedidas por “OK” en verde, pero también podría aparecer alguna unidad con “FAILED” que indica que esa unidad no se ha cargado.
Inicio de systemd en Fedora 17
Algunas aplicaciones gráficas
Estas aplicaciones en principio las podemos utilizar para informarnos del estado de las distintas unidades (habilitada, activa, inactiva, etc), pero también podemos ejecutar algunas ordenes (como activar o desactivas la carga de una unidad durante el arranque o su detención y recarga en una sesión, etc), que como veremos se pueden también ejecutar por terminal con systemctl. En cualquier caso, no creo que sea conveniente hacer nada hasta que estemos bien documentados y sepamos a ciencia cierta que es lo que tenemos que hacer, si es qué hay algo que hacer en este sentido.
● Systemadm o “systemd System Manager”. Lo encontraremos en “Sistema” del lanzador de aplicaciones, tras instalar el paquete systemd-ui.
● Systemd-kcm. Es un módulo de “Preferencias del sistema” en el apartado “Administración del sistema” del entorno de escritorio KDE Plasma 5. Hay que instalar el paquete kde-config-systemd.
● Administrador de servicios en el grupo de “Sistema” de YaST, esa tremenda herramienta gráfica que contribuye sobremanera a la singularidad de openSUSE.
Comments