Speed Up Boot Time

Are there any easy special tricks to speed up the boot time?
Coming from Linux Mint (GNOME), I could get to the Desktop from cold in less than 25 secs.
Now in openSuse 11.3 (KDE4.5) it takes more than twice that.

Is this a function of KDE or have Ubuntu done something that openSuse hasn’t to speed up the boot?

KDE and GNOME are desktop environments, they start after the actual boot process.

Current SuSE versions still use the classic SysVinit-boot, which waits for each process to finish before starting the next one, while Ubuntu (and its derivates like Mint) uses upstart, which is able to handle jobs parallel. I think with the next version openSUSE will also use an alternative to SysVinit, until then all you can do to minimize boottime is disabling certain services (for example with YaSTs runlevel editor). However, one should have quite a good idea about the respective services before dealing with them, also the saved time is not that very spectacular.

I think Linux Mint likely uses initramfs (or dracut) instead of initrd which openSUSE uses. I believe both initramfs and dracut promise to offer a faster boot than the initrd that openSUSE uses.

There is discussion developers as to the merits of changing from initrd to initramfs or dracut, but this far from what I have read, this ‘push’ / ‘discussion’ is developer driven, and not user driven. To understand the advantages of one method vs the other requires average to advanced Linux knowledge, and it is not a subject area that most of us delve into.

Here is a link to a Unbuntu article on comparing initrd to initramfs and another Ubuntu article on intramfs. Talk is dracut will be an improvement over initrdfs.

Best I know, neither of these (initramfs nor dracut) are something one easily backports into an existing openSUSE version.

Ahh … an interesting read … this mention of ‘upstart’ appears it could be more relevant to boot time than what I posted on initramfs and dracut.

There is also a blog entry by Andreas Jaeger here on systemd: this openSUSE Lizards with the intention of using Systemd is a replacement for SystemV init in a future openSUSE release: upstart - event-based init daemon

opticyclic wrote:
> Is this a function of KDE or have Ubuntu done something that openSuse
> hasn’t to speed up the boot?

one thing i think ubuntu does is load only the services its user set
are likely to use…but, openSUSE has a different, and more advanced
set of users…so, more services are loaded by default…of course
that takes some time…

of course, your question is on the mark because compared to Ubuntu’s
gnome, KDE4 is positively an oinker…put a stop watch on how long it
takes to finish the stuff from initiation of Gnome loading, and
compare it to KDE’s time and i guess you will find a large
proportion of that “more than twice”…

install an openSUSE with Gnome and trim down to the services loaded by
Ubuntu and i guess you will be a lot closer to the same speed…that
is to say, they may well have a few seconds advantage to a
comparable system…


DenverD
CAVEAT: http://is.gd/bpoMD [posted via NNTP w/openSUSE 10.3]
I feel annoyed that I can’t put my wide range of languages on stupid
Facebook. For example, I speak Sarcasm, fluently spoken and written,
and Various Forms of Geek…

IMHO the OP may differ from what the others think “booting” is. Gropiuskalle has allready pointed to this and his and oldcpu’s posts are about boot.

DenverD and maybe the OP are talking about starting of a desktop environment which is definitely not boot, but only done after login of one (or more ?) users in the GUI (and the system is then finished with booting).

Maybe the OP should decide where he wants the speedup and reword his question so we all talk about the same phenomenon.

Indeed, if one wants a fast desktop boot, then install LXDE. … Mind you having typed that, I note from grub to desktop, Ubuntu-1010 is about twice as fast to boot as openSUSE-11.4 M5’s LXDE. But once runnnig, because of the kernel enhancements, I find openSUSE 11.4 M5’s LXDE is marginally faster than Ubuntu 1010’s LXDE.

Still, if speed is a real factor, then IMHO one should not be looking at openSUSE nor looking at Ubuntu.

On 2010-12-26 20:36, gropiuskalle wrote:

> Current SuSE versions still use the classic SysVinit-boot, which waits
> for each process to finish before starting the next one, while Ubuntu
> (and its derivates like Mint) uses upstart, which is able to handle jobs
> parallel.

Not entirely correct, openSUSE also start those processes in parallel,
since 11.0 at least.


Cheers / Saludos,

Carlos E. R.
(from 11.2 x86_64 “Emerald” at Telcontar)

On 2010-12-26 19:36, opticyclic wrote:
>
> Are there any easy special tricks to speed up the boot time?
> Coming from Linux Mint (GNOME), I could get to the Desktop from cold in
> less than 25 secs.
> Now in openSuse 11.3 (KDE4.5) it takes more than twice that.

Are you speaking of boot up time or desktop startup time? They are
different things.

For strictly boot time something can be done, for desktop not that I know.


Cheers / Saludos,

Carlos E. R.
(from 11.2 x86_64 “Emerald” at Telcontar)

For me, “booting” is the whole process from pressing the “on” button to getting to a usable Desktop.
Therefore, I include the Desktop Environment in “booting”.
However, the time to the login screen takes the most time and not much happens after login so maybe the Desktop Environment isn’t so important.
Then again, maybe more graphically intense Desktop Environments need more services started as part of the boot so maybe it is important :slight_smile:

Nope.

The fact that you may have automatic login on, does not mean that there is no login, or that login becomes part of the boot process. Of couse you may call things as you like, but misunderstandings will then be aby=undant.

On 2010-12-26 22:36, oldcpu wrote:
> Still, if speed is a real factor, then IMHO one should not be looking
> at openSUSE nor looking at Ubuntu.

I don’t boot, I hibernate. I go from cold to full desktop, all apps opened
in about one minute.


Cheers / Saludos,

Carlos E. R.
(from 11.2 x86_64 “Emerald” at Telcontar)

On 2010-12-26 23:06, opticyclic wrote:
>
> For me, “booting” is the whole process from pressing the “on” button to
> getting to a usable Desktop.

Not in linux.


Cheers / Saludos,

Carlos E. R.
(from 11.2 x86_64 “Emerald” at Telcontar)

Thanks for the help so far.
DenverD and oldpc seemed understood what the question meant and answered it with the sort of information I was looking for.
Interesting reads!

The crucial phrase
“I could get to the Desktop from cold in less than 25 secs.”
was supposed to highlight that I was interested in the whole process of turning the computer on.

I even tried to clarify it when asked; explaining what was being referred to in this context - but I guess the internet is lowering the level of some peoples grammatical knowledge. :wink:

I take your point, but KDE ksysguard daemon (ksysguardd) is in /etc/init.d though…

I couldn’t find a page on the wiki describing the System Services.
What is the difference between the YaST module and the Service Manager in the System Settings?
Is there a documented list of defaults anywhere that I can compare my current system to?

I know it wont make a huge difference modifying, but I am quite interested in what happens during the startup process and the interdependencies etc.

Hi
You can get a feel for the boot process to runlevel 3 by installing
bootchartd via YaST or zypper. Set the system to start at runlevel 3 via
editing the entry in /etc/inittab.

Then reboot the system and add the following command in the grub
options;


init=/sbin/bootchartd

Once it’s booted to runlevel 3, login as your user, run the command
startx and in /etc will be a bootchartd.png graphic. You can then look
at what may need tweaking. Then once you have sorted it all, then set
the system to boot to runlevel 5 again.

http://www.bootchart.org/index.html


Cheers Malcolm °¿° (Linux Counter #276890)
SUSE Linux Enterprise Desktop 11 (i586) Kernel 2.6.32.24-0.2-pae
up 3 days 1:04, 2 users, load average: 0.08, 0.05, 0.04
ASUS eeePC 1000HE ATOM N280 1.66GHz | GPU Mobile 945GM/GMS/GME

I take your point, but KDE ksysguard daemon (ksysguardd) is in /etc/init.d though…

Not switched on here, though I admit I do not know if this was by default from the install.

Of course after install I walked through all services in YaST > System > Systemservices (Runlevel) to check if they are needed. Primary for not having not needed services listening at IP ports (I rather check this instead of running the firewall, but you could do both).

I couldn’t find a page on the wiki describing the System Services.
What is the difference between the YaST module and the Service Manager in the System Settings?
Is there a documented list of defaults anywhere that I can compare my current system to?

I any case the YaST mudule is about the system and has basicaly nothing to do with the desktops that are going to run GUI login.

What you call “Service Manager in the System Settings” I think is from the KDE System settings (I have a dutch translation here and guess what the original text was) > Adcnced > KDE system services. As it says, it is basicaly about KDE, not about the system.

I admit that the KDE developers, developing for many Operating Systems (including Windows) do not develop with YaST in mind. Thus they tend now and then to create management tools for the system, just to make things easier for the KDE user. You will recognize this because when you want to configure there the root password is needed.

I think part of the part of the confusion here is due to the fact that you do not have a clear view on how an operating system like Linux is build. It is a multi user system. That means that there is a clear dividing line between the system and the user sessions.

The system:
. boots end shuts down;
. has services running (the starting and stopping of these is generaly seen as part of the boot and shutdown sequences);
. is managed by root;
. all this without any user login in!

The user sessions:
. start with a login (in a terminal/console CLI or in the GUI);
. ends with a logout;
. can have many enviroinments like different shells for the CLI and different desktops for the GUI;
. there can be several sessions running at the same time, started by different users, and having different of those environments.

When you understand the idea behind this, you will understand that a KDE configuration is done by user x for his usage of KDE and has no influence on another user using KDE, let alone another users using Gnome at the same time or at different times.

Thus when you want to speed things in general, you must look as the different components:
. The boot/shutdown sequence (I allways wonder why people complain about boot times. one also has to wait for a proper shutdown or not?). Here knowledge about the system and the power of root is needed. Now it may be that apart from being an end-user on the system you (as humann being) also are the System Manager (root). But allways keep in mind that these are two different roles that should not be mixed. Typing the root password changes your role!
. The login process of a particular (or several) users. Looking at this could go (for a GUI) into deciding if you realy need all those desktop effects. Also when you have the restore desktop function on, the startup could involve the start of many applications (that were left running on logout). Ask yourself if it is honest to add the start of Amarok, three FF windows, Skype and half a dozen others to the login time.

Hope the above helps in getting more iinsight in the wonderfull world of Unix/Linux.

I’m not sure what you are referring to. Could you point me to a more detailed source on that topic?

[quote=“gropiuskalle,post:17,topic:60150”]

I’m not sure what you are referring to. Could you point me to a more detailed source on that topic?[/QUOTE]

I believe robin_listas was thinking of openSUSE-10.3, thou I confess sometimes I get confused as to exactly what feature was added to what new release? I note these two historical articles on 10.3

Edit - and some more here on more than just openSUSE.

If robin_listas was referring to those improvements, one should notice that they have not changed the basic approach of SysVinit (handling one job after each other instead of parallelizing them when possible); the mentioned improvements were gained by removing certain services, customizing boot-scripts and the like, in short: by using the options SysVinit offers. However, they are still not running parallel.

I happen to agree with robin_listas, although I may have the openSUSE version wrong as to when the parallelization implementation started. There is parallization in the openSUSE boot. I simply do not have a precise reference I can show you, as this happened quite some time back.

For example, take a look at slide 12 here:

Faster boot

  • We have parallel boot already
  • Check that all running services should really run
  • Check that no single service is a bottle-neck
  • Change boot concept?

There IS parallel process running upon boot.

Let me take a reverse tact here, as you appear to be skeptical. Why is it you believe there is NOT parallel process running?