Thursday, February 21, 2008

Boot Speed Ubuntu

I tried different tweaks from here. However, my boot speed was still slow, it was taking 2 minutes or so to go to gdm login. So, I was thinking how to increase it further.

I did the concurrency=Shell as mentioned in the post above. Still the boot speed was slow. I saw that there was a culprit which used to print "Reading files for boot" for close to 45 seconds during the boot, before it proceeded further. I was sure that it was one of the services which was creating problem. I was not able to locate which one though... so I left it at that suffering with 2 minutes for booting up.

Then one fine day, I saw my cpu usage remaining 100%, so I checked top and saw apport running on top. Now, what was this apport... some googling and got to the information that it is error reporting service ... I thought I will disable it. I disabled it and also avahi daemon (I frankly do not know what purpose it serves). I connect to my serves manually as I know about them. So, disabled that too. And next boot no line of "Reading files for boot" and my boot time went from 2 minutes to 45 seconds... that was great!!!! Nice find... thought would publish it.

Sunday, February 10, 2008

Concurrency=Shell error fix in Gutsy 7.10 Ubuntu

Well, I was trying to get my ubuntu gutsy to boot up with concurrency=shell... well for those of you who are not aware, when you boot up there are lot of init script which run. By default they run serially so if you have more than one processor only one thread runs during init i.e. boot. Concurrency=shell will create new shell and these scripts are run in parallel.

So, how you do it? Well change the /etc/init.d/rc and change concurrency=none to concurrency=shell.

Now, when you do it, there would be a problem with HAL. This happens as dbus and hal has same script order and hence creates a problem.

to fix this issue,

rename the file in /etc/rc2.d/S12hal to etc/rc2.d/S13hal
rename the file in /etc/rc3.d/S12hal to etc/rc2.d/S13hal

And that it... you are all set... reboot and you will definitely see change in the boot up time.. Give it a try.

If things do not workout then just change the concurrency=shell to concurrency=none.