1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns=
"http://www.w3.org/1999/xhtml" dir=
"ltr">
5 <meta http-equiv=
"Content-Type" content=
"text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen: Debian boots quicker and quicker
</title>
7 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"http://people.skolelinux.org/pere/blog/vim.css" />
13 <a href=
"http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen
</a>
21 <div class=
"title">Debian boots quicker and quicker
</div>
22 <div class=
"date">24th June
2009</div>
23 <div class=
"body"><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>
89 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/01/">January (
7)
</a></li>
91 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/02/">February (
10)
</a></li>
93 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/03/">March (
17)
</a></li>
95 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/04/">April (
12)
</a></li>
97 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/05/">May (
12)
</a></li>
99 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/06/">June (
20)
</a></li>
101 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/07/">July (
17)
</a></li>
103 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/08/">August (
6)
</a></li>
105 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/09/">September (
9)
</a></li>
107 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/10/">October (
5)
</a></li>
114 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/01/">January (
16)
</a></li>
116 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/02/">February (
6)
</a></li>
118 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/03/">March (
6)
</a></li>
120 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/04/">April (
7)
</a></li>
122 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/05/">May (
3)
</a></li>
124 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/06/">June (
2)
</a></li>
126 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/07/">July (
7)
</a></li>
128 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/08/">August (
6)
</a></li>
130 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/09/">September (
4)
</a></li>
132 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/10/">October (
2)
</a></li>
134 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/11/">November (
3)
</a></li>
136 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/12/">December (
1)
</a></li>
143 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/01/">January (
2)
</a></li>
145 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/02/">February (
1)
</a></li>
147 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/03/">March (
3)
</a></li>
149 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/04/">April (
3)
</a></li>
151 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/05/">May (
9)
</a></li>
153 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/06/">June (
14)
</a></li>
155 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/07/">July (
12)
</a></li>
157 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/08/">August (
13)
</a></li>
159 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/09/">September (
7)
</a></li>
161 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/10/">October (
9)
</a></li>
163 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/11/">November (
13)
</a></li>
165 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/12/">December (
12)
</a></li>
172 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/01/">January (
8)
</a></li>
174 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/02/">February (
8)
</a></li>
176 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/03/">March (
12)
</a></li>
178 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/04/">April (
10)
</a></li>
180 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/05/">May (
9)
</a></li>
182 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/06/">June (
3)
</a></li>
184 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/07/">July (
4)
</a></li>
186 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/08/">August (
3)
</a></li>
188 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/09/">September (
1)
</a></li>
190 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/10/">October (
2)
</a></li>
192 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/11/">November (
3)
</a></li>
194 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/12/">December (
3)
</a></li>
201 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/11/">November (
5)
</a></li>
203 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/12/">December (
7)
</a></li>
214 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (
13)
</a></li>
216 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/amiga">amiga (
1)
</a></li>
218 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/aros">aros (
1)
</a></li>
220 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (
2)
</a></li>
222 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (
12)
</a></li>
224 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bsa">bsa (
2)
</a></li>
226 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian (
57)
</a></li>
228 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (
113)
</a></li>
230 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/digistan">digistan (
9)
</a></li>
232 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/docbook">docbook (
7)
</a></li>
234 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (
4)
</a></li>
236 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/english">english (
153)
</a></li>
238 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (
18)
</a></li>
240 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (
12)
</a></li>
242 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (
8)
</a></li>
244 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (
8)
</a></li>
246 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/intervju">intervju (
31)
</a></li>
248 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/kart">kart (
17)
</a></li>
250 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ldap">ldap (
8)
</a></li>
252 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lenker">lenker (
4)
</a></li>
254 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (
1)
</a></li>
256 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (
25)
</a></li>
258 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk (
201)
</a></li>
260 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug (
145)
</a></li>
262 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (
5)
</a></li>
264 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/open311">open311 (
2)
</a></li>
266 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (
35)
</a></li>
268 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern (
49)
</a></li>
270 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/raid">raid (
1)
</a></li>
272 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reprap">reprap (
11)
</a></li>
274 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rfid">rfid (
2)
</a></li>
276 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot (
4)
</a></li>
278 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rss">rss (
1)
</a></li>
280 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ruter">ruter (
4)
</a></li>
282 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (
2)
</a></li>
284 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (
23)
</a></li>
286 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (
4)
</a></li>
288 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (
2)
</a></li>
290 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard (
38)
</a></li>
292 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (
2)
</a></li>
294 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (
4)
</a></li>
296 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (
10)
</a></li>
298 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/valg">valg (
7)
</a></li>
300 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/video">video (
34)
</a></li>
302 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (
3)
</a></li>
304 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/web">web (
25)
</a></li>
310 <p style=
"text-align: right">
311 Created by
<a href=
"http://steve.org.uk/Software/chronicle">Chronicle v4.4
</a>