1 <!DOCTYPE html PUBLIC 
"-//W3C//DTD XHTML 1.0 Strict//EN" 
   2         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
   5   <title>Petter Reinholdtsen: Debian boots quicker and quicker
</title> 
   6   <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"http://people.skolelinux.org/pere/blog/style.css"> 
  12        <a href=
"http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen
</a> 
  20   <div class=
"title">Debian boots quicker and quicker
</div> 
  21   <div class=
"date">2009-
06-
24 21:
40</div> 
  23 <p>I spent Monday and tuesday this week in London with a lot of the
 
  24 people involved in the boot system on Debian and Ubuntu, to see if we
 
  25 could find more ways to speed up the boot system.  This was an Ubuntu
 
  27 <a href=
"https://wiki.ubuntu.com/FoundationsTeam/BootPerformance/DebianUbuntuSprint">developer
 
  28 gathering
</a>. It was quite productive.  We also discussed the future
 
  29 of boot systems, and ways to handle the increasing number of boot
 
  30 issues introduced by the Linux kernel becoming more and more
 
  31 asynchronous and event base.  The Ubuntu approach using udev and
 
  32 upstart might be a good way forward.  Time will show.
</p> 
  34 <p>Anyway, there are a few ways at the moment to speed up the boot
 
  35 process in Debian.  All of these should be applied to get a quick
 
  40 <li>Use dash as /bin/sh.
</li> 
  42 <li>Disable the init.d/hwclock*.sh scripts and make sure the hardware
 
  45 <li>Install and activate the insserv package to enable
 
  46    <a href=
"http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot">dependency
 
  47    based boot sequencing
</a>, and enable concurrent booting.
</li> 
  51 These points are based on the Google summer of code work done by
 
  52 <a href=
"http://initscripts-ng.alioth.debian.org/soc2006-bootsystem/">Carlos
 
  55 <p>Support for makefile-style concurrency during boot was uploaded to
 
  56 unstable yesterday.  When we tested it, we were able to cut 
6 seconds
 
  57 from the boot sequence.  It depend on very correct dependency
 
  58 declaration in all init.d scripts, so I expect us to find edge cases
 
  59 where the dependences in some scripts are slightly wrong when we start
 
  62 <p>On our IRC channel for this effort, #pkg-sysvinit, a new idea was
 
  63 introduced by Raphael Geissert today, one that could affect the
 
  64 startup speed as well.  Instead of starting some scripts concurrently
 
  65 from rcS.d/ and another set of scripts from rc2.d/, it would be
 
  66 possible to run a of them in the same process.  A quick way to test
 
  67 this would be to enable insserv and run 'mv /etc/rc2.d/S* /etc/rcS.d/;
 
  68 insserv'.  Will need to test if that work. :)
</p> 
  71   <div class=
"tags">Tags: 
<a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem
</a>, 
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>, 
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>.
</div> 
  88 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/01/">January (
2)
</a></li> 
  90 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/02/">February (
1)
</a></li> 
  92 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/03/">March (
3)
</a></li> 
  94 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/04/">April (
3)
</a></li> 
  96 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/05/">May (
9)
</a></li> 
  98 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/06/">June (
14)
</a></li> 
 100 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/07/">July (
12)
</a></li> 
 102 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/08/">August (
13)
</a></li> 
 104 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/09/">September (
7)
</a></li> 
 106 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/10/">October (
9)
</a></li> 
 108 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/11/">November (
10)
</a></li> 
 115 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/01/">January (
8)
</a></li> 
 117 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/02/">February (
8)
</a></li> 
 119 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/03/">March (
12)
</a></li> 
 121 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/04/">April (
10)
</a></li> 
 123 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/05/">May (
9)
</a></li> 
 125 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/06/">June (
3)
</a></li> 
 127 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/07/">July (
4)
</a></li> 
 129 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/08/">August (
3)
</a></li> 
 131 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/09/">September (
1)
</a></li> 
 133 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/10/">October (
2)
</a></li> 
 135 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/11/">November (
3)
</a></li> 
 137 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/12/">December (
3)
</a></li> 
 144 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/11/">November (
5)
</a></li> 
 146 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/12/">December (
7)
</a></li> 
 157  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (
12)
</a></li> 
 159  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/amiga">amiga (
1)
</a></li> 
 161  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/aros">aros (
1)
</a></li> 
 163  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (
10)
</a></li> 
 165  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian (
42)
</a></li> 
 167  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (
50)
</a></li> 
 169  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/english">english (
71)
</a></li> 
 171  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (
1)
</a></li> 
 173  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (
11)
</a></li> 
 175  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/kart">kart (
5)
</a></li> 
 177  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ldap">ldap (
8)
</a></li> 
 179  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lenker">lenker (
4)
</a></li> 
 181  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (
1)
</a></li> 
 183  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (
10)
</a></li> 
 185  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk (
90)
</a></li> 
 187  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug (
113)
</a></li> 
 189  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (
18)
</a></li> 
 191  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern (
25)
</a></li> 
 193  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reprap">reprap (
10)
</a></li> 
 195  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot (
4)
</a></li> 
 197  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rss">rss (
1)
</a></li> 
 199  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (
18)
</a></li> 
 201  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (
3)
</a></li> 
 203  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard (
16)
</a></li> 
 205  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (
1)
</a></li> 
 207  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/video">video (
15)
</a></li> 
 209  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (
1)
</a></li> 
 211  <li><a href=
"http://people.skolelinux.org/pere/blog/tags/web">web (
13)
</a></li>