]> pere.pagekite.me Git - homepage.git/blob - blog/What_should_start_from__etc_rcS_d__in_Debian____almost_nothing.html
Generated.
[homepage.git] / blog / What_should_start_from__etc_rcS_d__in_Debian____almost_nothing.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 xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen: What should start from /etc/rcS.d/ in Debian? - almost nothing</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" />
9
10
11 </head>
12 <body>
13 <div class="title">
14 <h1>
15 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
16
17 </h1>
18
19 </div>
20
21
22 <div class="entry">
23 <div class="title">What should start from /etc/rcS.d/ in Debian? - almost nothing</div>
24 <div class="date">30th July 2011</div>
25 <div class="body"><p>In the Debian boot system, several packages include scripts that
26 are started from /etc/rcS.d/. In fact, there is a bite more of them
27 than make sense, and this causes a few problems. What kind of
28 problems, you might ask. There are at least two problems. The first
29 is that it is not possible to recover a machine after switching to
30 runlevel 1. One need to actually reboot to get the machine back to
31 the expected state. The other is that single user boot will sometimes
32 run into problems because some of the subsystems are activated before
33 the root login is presented, causing problems when trying to recover a
34 machine from a problem in that subsystem. A minor additional point is
35 that moving more scripts out of rcS.d/ and into the other rc#.d/
36 directories will increase the amount of scripts that can run in
37 parallel during boot, and thus decrease the boot time.</p>
38
39 <p>So, which scripts should start from rcS.d/. In short, only the
40 scripts that _have_ to execute before the root login prompt is
41 presented during a single user boot should go there. Everything else
42 should go into the numeric runlevels. This means things like
43 lm-sensors, fuse and x11-common should not run from rcS.d, but from
44 the numeric runlevels. Today in Debian, there are around 115 init.d
45 scripts that are started from rcS.d/, and most of them should be moved
46 out. Do your package have one of them? Please help us make single
47 user and runlevel 1 better by moving it.</p>
48
49 <p>Scripts setting up the screen, keyboard, system partitions
50 etc. should still be started from rcS.d/, but there is for example no
51 need to have the network enabled before the single user login prompt
52 is presented.</p>
53
54 <p>As always, things are not so easy to fix as they sound. To keep
55 Debian systems working while scripts migrate and during upgrades, the
56 scripts need to be moved from rcS.d/ to rc2.d/ in reverse dependency
57 order, ie the scripts that nothing in rcS.d/ depend on can be moved,
58 and the next ones can only be moved when their dependencies have been
59 moved first. This migration must be done sequentially while we ensure
60 that the package system upgrade packages in the right order to keep
61 the system state correct. This will require some coordination when it
62 comes to network related packages, but most of the packages with
63 scripts that should migrate do not have anything in rcS.d/ depending
64 on them. Some packages have already been updated, like the sudo
65 package, while others are still left to do. I wish I had time to work
66 on this myself, but real live constrains make it unlikely that I will
67 find time to push this forward.</p>
68 </div>
69
70 <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>
71
72
73 </div>
74
75
76
77
78 <div id="sidebar">
79
80
81
82 <h2>Archive</h2>
83 <ul>
84
85 <li>2015
86 <ul>
87
88 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/01/">January (7)</a></li>
89
90 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/02/">February (6)</a></li>
91
92 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/03/">March (1)</a></li>
93
94 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/04/">April (4)</a></li>
95
96 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/05/">May (3)</a></li>
97
98 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/06/">June (4)</a></li>
99
100 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/07/">July (6)</a></li>
101
102 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/08/">August (2)</a></li>
103
104 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/09/">September (2)</a></li>
105
106 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/10/">October (9)</a></li>
107
108 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
109
110 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/12/">December (2)</a></li>
111
112 </ul></li>
113
114 <li>2014
115 <ul>
116
117 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
118
119 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
120
121 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
122
123 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
124
125 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
126
127 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
128
129 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
130
131 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/08/">August (2)</a></li>
132
133 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/09/">September (5)</a></li>
134
135 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/10/">October (6)</a></li>
136
137 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/11/">November (3)</a></li>
138
139 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/12/">December (5)</a></li>
140
141 </ul></li>
142
143 <li>2013
144 <ul>
145
146 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
147
148 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
149
150 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
151
152 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
153
154 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
155
156 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
157
158 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
159
160 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
161
162 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
163
164 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
165
166 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
167
168 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
169
170 </ul></li>
171
172 <li>2012
173 <ul>
174
175 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
176
177 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
178
179 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
180
181 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
182
183 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
184
185 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
186
187 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
188
189 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
190
191 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
192
193 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
194
195 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
196
197 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
198
199 </ul></li>
200
201 <li>2011
202 <ul>
203
204 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
205
206 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
207
208 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
209
210 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
211
212 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
213
214 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
215
216 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
217
218 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
219
220 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
221
222 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
223
224 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
225
226 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
227
228 </ul></li>
229
230 <li>2010
231 <ul>
232
233 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
234
235 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
236
237 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
238
239 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
240
241 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
242
243 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
244
245 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
246
247 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
248
249 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
250
251 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
252
253 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
254
255 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
256
257 </ul></li>
258
259 <li>2009
260 <ul>
261
262 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
263
264 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
265
266 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
267
268 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
269
270 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
271
272 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
273
274 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
275
276 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
277
278 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
279
280 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
281
282 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
283
284 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
285
286 </ul></li>
287
288 <li>2008
289 <ul>
290
291 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
292
293 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
294
295 </ul></li>
296
297 </ul>
298
299
300
301 <h2>Tags</h2>
302 <ul>
303
304 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (13)</a></li>
305
306 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
307
308 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
309
310 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
311
312 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (9)</a></li>
313
314 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (15)</a></li>
315
316 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
317
318 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
319
320 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (115)</a></li>
321
322 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (154)</a></li>
323
324 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (10)</a></li>
325
326 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (15)</a></li>
327
328 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (20)</a></li>
329
330 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
331
332 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (297)</a></li>
333
334 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
335
336 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (12)</a></li>
337
338 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (25)</a></li>
339
340 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (9)</a></li>
341
342 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (16)</a></li>
343
344 <li><a href="http://people.skolelinux.org/pere/blog/tags/h264">h264 (20)</a></li>
345
346 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (42)</a></li>
347
348 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (11)</a></li>
349
350 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (19)</a></li>
351
352 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
353
354 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (8)</a></li>
355
356 <li><a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (2)</a></li>
357
358 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
359
360 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
361
362 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (36)</a></li>
363
364 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (272)</a></li>
365
366 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (177)</a></li>
367
368 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (22)</a></li>
369
370 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
371
372 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (58)</a></li>
373
374 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (92)</a></li>
375
376 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (1)</a></li>
377
378 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
379
380 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
381
382 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (3)</a></li>
383
384 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (9)</a></li>
385
386 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
387
388 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (4)</a></li>
389
390 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
391
392 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (44)</a></li>
393
394 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
395
396 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (4)</a></li>
397
398 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (48)</a></li>
399
400 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (3)</a></li>
401
402 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (10)</a></li>
403
404 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (36)</a></li>
405
406 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (2)</a></li>
407
408 <li><a href="http://people.skolelinux.org/pere/blog/tags/usenix">usenix (2)</a></li>
409
410 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (8)</a></li>
411
412 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (54)</a></li>
413
414 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
415
416 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (37)</a></li>
417
418 </ul>
419
420
421 </div>
422 <p style="text-align: right">
423 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
424 </p>
425
426 </body>
427 </html>