]> pere.pagekite.me Git - homepage.git/blob - blog/Debian_boots_quicker_and_quicker.html
Timestamp.
[homepage.git] / blog / Debian_boots_quicker_and_quicker.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html>
4 <head>
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">
7 </head>
8 <body>
9
10 <div class="title">
11 <h1>
12 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
13
14 </h1>
15
16 </div>
17
18
19 <div class="entry">
20 <div class="title">Debian boots quicker and quicker</div>
21 <div class="date">2009-06-24 21:40</div>
22 <div class="body">
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
26 funded
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>
33
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
36 boot:</p>
37
38 <ul>
39
40 <li>Use dash as /bin/sh.</li>
41
42 <li>Disable the init.d/hwclock*.sh scripts and make sure the hardware
43 clock is in UTC.</li>
44
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>
48
49 </ul>
50
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
53 Villegas</a>.
54
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
60 using this.</p>
61
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>
69 </div>
70
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>
72
73 </div>
74
75
76
77
78
79
80 <div id="sidebar">
81
82 <h2>Archive</h2>
83 <ul>
84
85 <li>2011
86 <ul>
87
88 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
89
90 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
91
92 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
93
94 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
95
96 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
97
98 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
99
100 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (5)</a></li>
101
102 </ul></li>
103
104 <li>2010
105 <ul>
106
107 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
108
109 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
110
111 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
112
113 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
114
115 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
116
117 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
118
119 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
120
121 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
122
123 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
124
125 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
126
127 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
128
129 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
130
131 </ul></li>
132
133 <li>2009
134 <ul>
135
136 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
137
138 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
139
140 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
141
142 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
143
144 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
145
146 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
147
148 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
149
150 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
151
152 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
153
154 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
155
156 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
157
158 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
159
160 </ul></li>
161
162 <li>2008
163 <ul>
164
165 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
166
167 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
168
169 </ul></li>
170
171 </ul>
172
173
174
175 <h2>Tags</h2>
176 <ul>
177
178 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (13)</a></li>
179
180 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
181
182 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
183
184 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (2)</a></li>
185
186 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (10)</a></li>
187
188 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (50)</a></li>
189
190 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (64)</a></li>
191
192 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (7)</a></li>
193
194 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (92)</a></li>
195
196 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (12)</a></li>
197
198 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (11)</a></li>
199
200 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (10)</a></li>
201
202 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (15)</a></li>
203
204 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (8)</a></li>
205
206 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (4)</a></li>
207
208 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
209
210 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (12)</a></li>
211
212 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (129)</a></li>
213
214 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (118)</a></li>
215
216 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
217
218 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (21)</a></li>
219
220 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (40)</a></li>
221
222 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
223
224 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (2)</a></li>
225
226 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (4)</a></li>
227
228 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
229
230 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (23)</a></li>
231
232 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (3)</a></li>
233
234 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (24)</a></li>
235
236 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (1)</a></li>
237
238 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (2)</a></li>
239
240 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (9)</a></li>
241
242 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (20)</a></li>
243
244 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (1)</a></li>
245
246 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (15)</a></li>
247
248 </ul>
249
250 </div>
251 </body>
252 </html>