InicioLinuxCómo reducir el tiempo de arranque en Linux

Cómo reducir el tiempo de arranque en Linux

Linux2/23/2011

142fc496eac1104b24ae30fdcb1cffa1
En mi caso, usaré Ubuntu como base para llevar a cabo las modificaciones. Antes de comenzar la faena, es necesario tener un punto de referencia para saber si los cambios que estamos haciendo son para mejor (reducen el tiempo) o para peor (aumentan el tiempo). Podríamos usar un cronómetro manual (el del reloj, por ejemplo), pero perderíamos precisión, así que es preferible usar un cronómetro más exacto. Para ello instalaremos Bootchart, una aplicación que analiza el proceso de arranque de tu máquina, midiendo tiempos, y finalmente crea un gráfico para exponer el análisis.

Para instalarlo sólo hace falta ejecutar este comando:

sudo apt-get install bootchart


Una vez instalado Bootchart, empezará a realizar los análisis la próxima vez que arranques el ordenador. Genera una imágenes en formato PNG en la carpeta /var/log/bootchart como esta:



En la cabecera de la imagen verás datos relativos al kernel, el hardware y la fecha del análisis, junto con el tiempo que tardó la máquina en arrancar. En este caso, 37'36 segundos. También verás el gráfico propiamente dicho, con el nombre del proceso, su duración y estado, y el tipo de operaciones que ha ejecutado (CPU o I/O). Bastante completito, la verdad.

Cabe mencionar un detalle que seguramente os ocurra. Tras hacer alguna modificación en el arranque, es más que seguro que el tiempo de arranque se vea duplicado la siguiente vez que arranques. ¿A qué se debe esto? Simplemente se debe a la presencia de ureadahead durante el proceso de arranque.

¿Qué es Ureadahead? Tal y como explica uno de sus desarrolladores, para arrancar Ubuntu necesitamos leer datos desde el disco duro para volcarlos en la memoria (entre 100 y 200 MB). Desafortunadamente, la parte más lenta de tu maravilloso ordenador es el disco duro. No sólo son lentos para leer datos sino también para encontrarlos, por lo que podemos perder mucho tiempo durante el arranque simplemente esperando a que el disco duro encuentre los datos que necesite y los vuelque en la memoria.

Lo que hace ureadahead es averiguar qué piezas de qué ficheros realmente son necesarios, y volcar desde el disco hasta la memoria de una sola vez. De esta manera, no necesitamos tiempo para buscarlo todo, y puesto que ya está en memoria, no desperdiciamos ni de lejos tanto tiempo durante el arranque.

El hecho de que se duplique el tiempo de arranque se debe a que, cada vez que un paquete que se instala o actualiza contiene un archivo en /etc/init o /etc/init.d, ureadahead ejecuta de nuevo el proceso descrito anteriormente.

Por lo tanto, para ver si realmente los cambios efectuados han sido para bien, deberíamos fiarnos de la segunda (o sucesivas) veces que arrancásemos, es decir, un arranque en el que ureadahead no tenga que re-averiguar nada.

Te recuerdo que no me hago responsable de las consecuencias de hacer estas modificaciones en tu sistema. Estos cambios, como todos, conllevan cierto riesgo, y tú eres quien decide hacerlos o no. Dicho esto, estas son las medidas que puedes llevar a cabo para mejorar el arranque

Arrancar en modo texto (sin Plymouth) y ajustar la resolución


Es lógico que si el ordenador no necesita mostrar gráficos por pantalla, el arranque será algo más rápido. Para ello, edita el archivo de configuración del GRUB:

sudo gedit /etc/default/grub

Y elimina las palabras quiet splash del parámetro GRUB_CMDLINE_LINUX_DEFAULT.

También se recomienda ajustar la resolución a la que usamos normalmente en nuestra pantalla, cambiando el parámetro GRUB_GFXMODE, por ejemplo:

GRUB_GFXMODE=1366x768


Seguidamente ejecuta esto para que los cambios surtan efecto:

sudo update-grub

Optimizar la carga de módulos


Por defecto se cargan la mayoría de los drivers del sistema, pero es preferible que se carguen sólo aquellos necesarios. Para ellos hay que cambiar el parámetro MODULES=most por MODULES=dep en el archivo /etc/initramfs-tools/initramfs.conf y ejecutar este comando para que los cambios surtan efecto:

sudo update-initramfs -k all -u


Habilitar la ejecución concurrente de los scripts init.d


Si dispones de más de 1 CPU, puedes habilitar la concurrencia en el arranque cambiando el parámetro CONCURRENCY=none por CONCURRENCY=startpar en el archivo /etc/init.d/rc e instalar el siguiente paquete:

sudo apt-get install insserv

Reducir el número de servicios habilitados


Al igual que en Windows, en Linux están habilitados una serie de servicios por defecto, según las necesidades típicas de los usuarios. Nunca viene de mal echar un vistazo los servicios que se ejecutan durante el arranque y los que están habilitados, para deshabilitar aquellos que no usamos. Para esta tarea usaremos Sysv-rc-conf.

sudo apt-get install sysv-rc-conf
sudo sysv-rc-conf




Como puedes ver en la captura, puedes marcar y desmarcar los servicios. Ten cuidado con aquellos esenciales. Te recomiendo deshabilitar aquellos que sepas en qué consisten y que sepas de seguro que no los necesitas. Yo tengo habilitados: acpi-support, cpufrequtils, fancontrol, grub-common, killprocs, lm-sensors, loadcpufreqs, networking, pulseaudio, rc.local, reboot, sendsigs, single, sudo, umountntfs, umountroot, unattended, urandom, x11-common. Como ves, muchos servicios están relacionados con cosas propias de portátiles (sensores y demás).

Reducir el número de aplicaciones que se cargan al inicio


El número y tamaño de los programas que se ejecutan al inicio también influye en el tiempo de arranque. Al igual que hicimos con los servicios, podemos deshabilitar aquellos programas que no necesitamos que se ejecuten en el inicio. Para ello no hay más que echar un vistazo a la lista que se encuentra en Sistema → Preferencias → Aplicaciones al inicio.



Habilitar el inicio de sesión automático


Esta es una manera de reducir considerablemente el tiempo desde que arrancas hasta que tienes un escritorio utilizable. Para ello dirígete a Sistema → Administración → Pantalla de acceso → Pulsas "Desbloquear" → Marcas "Acceder como" <usuario> "automáticamente".

Asignar una dirección IP manual


Si nuestra máquina se conecta a alguna red, es preferible que la asignación de la IP sea manual, así ahorraremos algo de tiempo también. Para ello no hay más que ir a Sistema → Preferencias → Conexiones de red, y hacer los cambios pertinentes en las conexiones deseadas.







Datos archivados del Taringa! original
0puntos
658visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
3visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

j
jjm66🇦🇷
Usuario
Puntos0
Posts1,916
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.