Ayer, gracias a un post de “Informatico de guardia” que por cierto, tiene un blog realmente interesante, me dispuse a realizar unas pruebas y optimizaciones sobre mi Arch Linux que han dado buenos resultados. De entrada, en el post que os menciono se comenta una interesante forma de monitorizar el arranque de nuestro linux y ver que procesos están ralentizando el inicio del sistema, se trata de BootChart. El programa nos muestra, ademas, gráficas del consumo de disco y cpu, el orden en el que se lanzan los procesos y mucha mas información.
En la entrada original disponéis de varios bench hechos en Ubuntu por lectores de su blog y el método para hacerlo en esa distribución, en Arch el método difiere pero pacman os da las instrucciones precisas al instalar bootchart así que sin problemas, si os surgiera alguno no tenéis mas que preguntar.
Optimizando el arranque (y el sistema en general):
El primer test de arranque me arrojo 42s en el inicio, así que claramente vi que podría mejorarse esa marca puesto que muchos de los bench que he visto estaban por debajo en cuanto al tiempo de arranque.
Tenemos varias opciones, la mas efectiva en cuanto al tiempo de arranque es anular el module autoload del rc.conf, pero tendremos que tener muy claros los módulos a cargar manualmente para que el equipo valla “como siempre”. A mi, de primeras pierdo el ratón, lo mirare mas adelante, ayer me quede sin tiempo…
Otra alternativa muy efectiva es lanzar los daemons en background, para que el segundo en ejecución no tenga que esperar a que termine el primero… esto es MUY efectivo pero es posible que algunos necesiten de otro proceso ya en ejecución así que lo mejor es ir probando cuales podemos cargar al unisono y cuales necesitan respetar cierto orden. El método es sencillo, simplemente abrimos el rc.conf y agregamos “@” a cada daemon que queramos arrancar por este método.
Otra herramienta que ha acelerado el proceso ha sido Prelink. El método es fácil, instalar y ejecutar… aconsejable meterlo en el cron.daily ya que si cambian las librerías hay que volver a “prelinkar” así que mejor que lo haga el chino…
Preload, un daemon que se encarga de monitorizar las aplicaciones que mas usamos e intentar tenerlas “preparadas” para su uso… esta en los repos así que instalar y agregarlo al rc.conf.
Otra cosita que he visto y que de momento no he podido probar es prefetch pero aun no he conseguido compilar un kernel y que arranque sin problemas así que de esta de momento me abstengo…
El resultado? 22 segundillos… no esta nada mal eh?
http://img410.imageshack.us/my.php?image=archlinuxbootchartvn2.png





Muchas gracias por postear esto, muy útil la información. En cuanto pueda lo intentaré con mi instalación actual de Arch, espero poder reducir por lo menos a la mitad el tiempo de arranque.