Grub profile: mejorando el arranque de Ubuntu

Autor: Armonth | El martes 13 de noviembre del 2007 @ 22:16.

Leo a Ricardo Galli comentando un "viejo" (lo descubrí en Dapper) truco que puede servir para acortar el arranque de Ubuntu significativamente (en un equipo me ha llegado a reducir ¡15 segundos!), viejo pero sigue siendo efectivo y poco conocido.

Al cargar GRUB (el cargador de sistemas operativos usado para elegir entre Ubuntu, Windows o lo que tengas instalado) hay que hacer lo siguiente:

  • Posiciona el selector sobre el kernel que arrancas.
  • Presiona "e" para editar.
  • Posiciona el cursor sobre las líneas donde están las opciones.
  • Presiona "e" para editar
  • Agrega al final la palabra "profile" (dejando un espacio con las anteriores), luego dale al enter.
  • Cuando vuelva a la pantalla anterior presiona "b" para que arranque.
  • Espera un poco más que hará el índice.
  • Et voilà

Por si no quedase claro, la línea es parecida a:

kernel /vmlinuz-2.6.17-1-686 root=/dev/hda2 ro single

Y debe quedar como:

kernel /vmlinuz-2.6.17-1-686 root=/dev/hda2 ro single profile

Explicación técnica

Las distribuciones modernas utilizan un demonio "readahead", normalmente llamado así o "preload", un demonio de éste tipo se encarga de monitorizar las aplicaciones (servicios en el caso que nos toca) que el usuario ejecuta y analiza los datos para poner los binarios de los programas en memoria RAM y acelerar con ello los procesos.

Ubuntu mantiene un índice, normalmente en /etc/readahead/boot, que sirve para cargar de golpe todos los servicios como por ejemplo cupsd para la impresión o syslogd para los registros en memoria RAM (o en alguna intermedia como la caché de los discos duros) y acelerar con ello el arranque.

El problema radica en que ese índice es el que viene por defecto: si hemos instalado más servicios que arrancan al principio no saldrán en el índice y por tanto no los cargará hasta que se requiera su ejecución.

Añadir el "profile" a la línea de arranque del GRUB obligará a éste a reconstruir el índice. Esto lo hará una sola vez y el arranque en esa carga será más lento pero los posteriores serán algo más rápidos.

Comentarios