Linux booting optimizations

This is a smal guide that I use myself in new or current Debian GNU/Linux installations, to reduce a bit (about some seconds), the overall booting time.

To start, we need a way to measure the time that our system needs to boot up.

  • Bootchart: It measures time required to boot the system, and displays it in a graphical way.
    • $sudo apt-get install bootchart
    • Edit /etc/grub/menu.lst, and add "init=/sbin/bootchartd" to the kopt line.
    • $sudo update-grub
    • Edit /etc/bootchartd.conf and set "AUTO_STOP_LOGGER" to "yes"

Now some basic "safe" optimizations. Optimizations that you can do without breaking the system.

  • ReadAhead: It preloads all files required to boot at the begining of the boot process. (Note: If you have preload installed it must be dissables when the first run is done.)
    • $sudo apt-get install readahead
    • If preload is installed, temporally dissable it by adding "exit 0" at the beggining to /etc/init.d/preload
    • Enable profile on first run: $sudo touch /etc/readahead/profile-once
    • reboot system (yes you need to reboot, sorry, is one of these exceptions when you need to reboot Linux.)
  • preload: It learns with system libraries are most used, and preloads them on demand.
    • $sudo apt-get install preload
  • dash: By default the OS ships with bash that is extremely slow, thus all init shell scripts run very slow. Dash is a faster shell implementation. I saw an increase of 6 seconds in my experiments.
    • $sudo apt-get install dash
    • Install dash as default sh interpreter: $sudo dpkg-reconfigure dash
  • You need an e-amail server?: By default the OS will ship with a full e-mail server, because some desktop applications an other stuff depend on it. Debian comes with Exim, the light version by default. This means that you will have an extra useless process consuming resources at boot time, and during execution. You can't remove it because it's needed, but you can replace it with a null mailer implementation. So there are two possible packages avaliable depending on your e-mail needs. Of course if you really need a full e-mail server in you computer, then you may continue with wathever you have.
    So, we have ssmtp and esmtp-run

    • ssmtp: This mailer will deliver all mail to a remote e-mail server, it does not do local mail delivery it's only usefull when you already have an e-mail server in your network.
      • $sudo apt-get install ssmtp
      • Configure your remote e-mail server. $sudo dpkg-reconfigure ssmtp
    • esmtp: Same as ssmtp, but does local mail delibery. If you don't have a remote mail server to use, just use localhost as a mail server, it will try to deliver mail to it, but since there is no service running it will fail, thus it will only do local delibery. This is perfect for a laptop where I'm only interesting on recieving locally system generated mails, I don't want my laptop to send e-mails outside. (In fact most Linux distros ship by default with an e-mail server that will do remote delivery by default, altough it's only listenning on localhost, I see that as a possible security threat that any user could exploit, altough nowadays most e-mail servers will reject those e-mails.).
      • $sudo apt-get install esmtp-run
  • quiet saves time also. The "quiet" kernel parameter it's usually enabled on most distros, but if it is not enabled in your distro, it's poosible to save some time. Just check that "quiet" is present in "defoptions" of your /boot/grub/menu.lst configuration file.
  • remove some useless garbage: Some completely useless services, that only waste ram, and time. (Always check when you remove something from your system, that you are not deinstalling your entire operating system due to dependencies. I at least know a case of someone that wanted to unistall mysql but unistalled the entire os, because the os had dependencies over mysql?? (This only happens on Ubuntu, Debian does not have this problem ;-P )
    • Who needs "inetd", I don't use anything that it provides. $sudo apt-get --purge remove openbsd-inetd
    • WTF is avahi? More useless garbage. I remove it as soon as I install a new system. $sudo apt-get --purge remove avahi-daemon avahi-autoipd
    • localepurge: Why do you need your os avaliable in 560 and more languages? Them waste disk space.
      • $sudo apt-get install localepurge
      • Configure it to the locales that you want to keep $sudo dpkg-reconfigure localepurge
      • And free about 1Gigabyte or more of space. $sudo localepurge
    • orphaner: Remove unused orphaned system libraries.
      • $sudo apt-get install deborphan
      • Remove all unused garbage: $sudo orphaner
    • autoremove unused stuff: Remove all those packages that were installed but are currently not used and we don't want them in our system.
      • $sudo apt-get --purge autoremove
    • remove unused config files: Unistalled packages will drop a lot of garbage in the /etc directory, so remove it.
      • $sudo dpkg --purge `dpkg --get-selections | grep deinstall | cut -f1`

Some dangerous optimizations. These optimizations may break your system into an unboatable status, and also require lot of user intervention to configure.

  • insserv: Reorders the init scripts. May break some thing that need to be manually fixed.
  • runit: Another init system, requires a lot of time to configure and get a boatable, system. NOT recomended for currently installed systems. Should be implemented on new systems, with lot of patience. I personally do not have enough patience and/or time to configure runit.

That's all for today.

Eco

Anaven caminant per la muntanya un pare amb el seu fill. De sobte, el fill cau, es fa mal i crida:

"Aaaaaaaaaaahhhhhhhhhh!!!"

Sorprès, escolta una veu repetint en algun lloc de la muntanya:

"Aaaaaaaaaaahhhhhhhhhh!!!"

Amb curiositat, el nen crida: "QUI HI HA?"

Rep una resposta: "QUI HI HA?"

Enutjat amb la resposta, el nen crida: "COVARD!!"

I rep de resposta: "COVARD!!"

El nen mira al seu pare i li pregunta: "Què passa?"

El pare somriu i li respon: "Fill meu, posa atenció"

Llavors, el pare crida a la muntanya: "T'ADMIRO"

I la veu li respon: "T'ADMIRO"

De nou, l'home crida: "ETS UN CAMPIÓ!!"

I la veu li respon: "ETS UN CAMPIÓ!!

De nou, el pare crida: "ESTÀS PLE D'ÈXITS!!"

I la veu li respon: "ESTÀS PLE D'ÈXITS!!"

El nen estava meravellat, però no ho entenia.

Així, el pare li va explicar: "La gent ho anomena ECO, però en realitat és... LA VIDA...!!!

Et retorna tot el que dius o fas...

Si no t'agrada el que reps de tornada, revisa molt bé el que estàs donant.

Si vols un somriure, dóna un somriure. Si desitges la felicitat, dóna felicitat a qui t'envolta.

Autor: La Vida

Las tres rejas

El joven discípulo de un filósofo sabio lo visita y le dice:

- Maestro, un amigo tuyo estuvo hablando de vos con malevolencia.

-¡Espera! Lo interrumpe el filósofo ¿Ya hiciste pasar por las tres rejas lo que vas a contarme?

-¿Las tres rejas?

-Sí. La primera es la VERDAD. ¿Estás seguro de que lo que quieres decirme es absolutamente cierto?

-No. Lo oí comentar a unos vecinos.

-Al menos lo habrás hecho pasar por la segunda reja, que es la BONDAD. ¿Es bueno para alguien lo que me vas a decir?

-No, en realidad no. Al contrario...

-La última reja es la NECESIDAD. ¿Es necesario hacerme saber lo que tanto te inquieta?

-A decir verdad, no.

Entonces, dijo el sabio sonriendo, si no es VERDAD, ni BUENO, ni NECESARIO, sepultémoslo en el olvido.

Autor: Anónimo

Piedras

Un experto asesor de empresas de Gestión del Tiempo quiso sorprender a los asistentes a su conferencia. Sacó de debajo del escritorio un frasco grande de boca ancha. Lo colocó sobre la mesa, junto a una bandeja con piedras del tamaño de un puño y preguntó:

-¿Cuantas piedras piensan que caben en el frasco?

Después de que los asistentes hicieran sus conjeturas, empezó a meter piedras hasta que llenó el frasco.
Luego preguntó:
-¿Está lleno?

Todo el mundo lo miró y asintió. Entonces sacó de debajo de la mesa un cubo con gravilla. Metió parte de la gravilla en el frasco y lo agitó. Las piedrecillas penetraron por los espacios que dejaban las piedras grandes.
El experto sonrió con ironía y repitió:
-¿Está lleno?

Esta vez los oyentes dudaron:
-Tal vez no.
-¡Bien!

Y puso en la mesa un cubo con arena que comenzó a volcar en el frasco. La arena se filtraba en los pequeños recovecos que dejaban las piedras y la grava.
-¿Está bien lleno? preguntó de nuevo.
-¡No!, exclamaron los asistentes.

Bien, dijo, y cogió una jarra de agua de un litro que comenzó a verter en el frasco.
El frasco aún no rebosaba. - Bueno, ¿qué hemos demostrado?, preguntó.
Un alumno respondió:
- Que no importa lo llena que esté tu agenda, si lo intentas, siempre puedes hacer que quepan más cosas.
-¡No!, concluyó el experto: lo que esta lección nos enseña es que si no colocas las piedras grandes primero, nunca podrás colocarlas después. ¿Cuáles son las piedras grandes en tu vida?. ¿Tus hijos, tus amigos, tus sueños, tu salud, la persona amada? ¿o son tu trabajo, tus reuniones, tus viajes de negocios, el poder o el dinero? La elección es tuya. Una vez te hayas decidido..., pon esas piedras primero. El resto encontrará su lugar.

Autor: Anónimo

Els claus

Aquesta és la història d'un noiet que tenia molt mal caràcter. El pare li va donar una bossa de claus i li va dir que cada vegada que perdés la paciència hauria de clavar un clau darrere la porta.

El primer dia, el noi va clavar 37 claus darrere la porta. Les setmanes que van seguir, a mesura que ell aprenia a controlar el geni, clavava cada vegada menys claus darrere la porta. Descobria que era més fàcil controlar el geni que clavar claus darrere la porta.

Va arribar el dia en què va poder controlar el seu caràcter durant tot el dia. Després d'informar el seu pare, aquest li va dir que retirés un clau cada dia que assolís controlar el seu caràcter. Els dies van passar i el jove finalment va poder anunciar al seu pare que no quedaven més claus per retirar de la porta.

El seu pare li va agafar la mà i el va dur fins a la porta. Li va dir:

- Has treballat dur, fill meu, però mira tots aquests forats a la porta. Mai més no serà la mateixa. Cada vegada que perds la paciència, deixes cicatrius exactament com les que veus aquí.

Pots insultar algú i enretirar el que s'ha dit, però de la manera com li ho diguis l'enfonsarà, i la cicatriu perdurarà per sempre. Una ofensa verbal és tan nociva com una ofensa física. Els amics són joies precioses. Ens fan riure i ens animen a seguir endavant. Ens escolten amb atenció, i sempre estan a punt per obrir-nos el seu cor.

Els amics són joies precioses.

Autor: Anónimo?

Where the Hell is Matt?


(También esta en versión de calidad superior en YouTube)