1. Disable unneeded services.
Depending on how you use them in your system, some services are not needed. Do you use Linux for typical computer uses? Then you may not need services like sendmail, httpd, etc. For example, Ubuntu comes with services for managing Bluetooth devices, but personally you may not need such devices, so if this is the case, go to the Administration menu, choose Services, and disable all that you don’t use.
2. Disable unneeded kernel modules.
If your computer only connects to the internet using a wired Ethernet or LAN, you don’t need to load the Wireless kernel module. Of course, it is a bit harder since you need to recompile the kernel after selecting only the modules you need. A good way to know which modules are currently being loaded on your system is by using Bootchart. This program generates information about what happens when you start your system.
3. Use more compact desktop environment instead of KDE or GNOME.
It is especially true if you have old or slow machines; instead of waiting 30 or 60 extra seconds while starting KDE or GNOME, why not settle for 10 seconds with Enlightenment or XFCE?.
4. Use a text-based logging system text instead of GUI.
Some Linux machines boot at level 3 instead of 5. This will halt the process at text-based logging, where you need to put your username and password and run ‘startx’ on your desktop environment. Logins under GUI are nice, but it increases the load time and may cause headaches when trying to recover in case of X-Windows failure.
5. Use a lighter distribution.
Instead of using a bulky Fedora, Ubuntu or OpenSUSE, why not try Arch, Gentoo, or Puppy Linux? Booting time is considerably less with these distros.
6. Use OpenBIOS.
If you know how to upgrade your firmware, you should consider migrating to an OpenBIOS. It is recommended to use an open source firmware that allows Linux to initialize your PC hardware. Still, if you don’t use OpenBIOS, it is still necessary to adjust the booting sequence properly.
7. Avoid DHCP.
If you’re in a home network or small business, consider assigning fixed IP to each PC. It is not necessary to connect to the DHCP server to obtain an IP address. Don’t forget to configure /etc/resolve.conf properly when choosing a DNS server.
8. Don’t use hotplug.
Hotplug is a system that makes it easier to connect new devices and immediately use them. If you do not need this feature, delete it. This will reduce the loading time of your system. In many systems, it consumes a lot of resources.
9. If you have guts, try initng.
It serves as a substitute for a sysvinit system and guarantees a decrease of booting time in UNIX-based systems. If you want to see how it works, you can try it in the LiveCD Pingwinek.
10. If you use Debian try this tip.
For Debian users, there is a very simple hack that you can use to make your startup scripts work in parallel. If you open the script /etc/init.d/rc, you’ll see “CONCURRENCY=none” at line 24. Edit it to “CONCURRENCY=shell” and you will get a noticeable reduction in booting time.