]> 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>2013
86 <ul>
87
88 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
89
90 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
91
92 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
93
94 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
95
96 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (4)</a></li>
97
98 </ul></li>
99
100 <li>2012
101 <ul>
102
103 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
104
105 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
106
107 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
108
109 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
110
111 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
112
113 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
114
115 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
116
117 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
118
119 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
120
121 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
122
123 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
124
125 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
126
127 </ul></li>
128
129 <li>2011
130 <ul>
131
132 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
133
134 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
135
136 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
137
138 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
139
140 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
141
142 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
143
144 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
145
146 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
147
148 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
149
150 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
151
152 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
153
154 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
155
156 </ul></li>
157
158 <li>2010
159 <ul>
160
161 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
162
163 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
164
165 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
166
167 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
168
169 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
170
171 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
172
173 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
174
175 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
176
177 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
178
179 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
180
181 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
182
183 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
184
185 </ul></li>
186
187 <li>2009
188 <ul>
189
190 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
191
192 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
193
194 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
195
196 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
197
198 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
199
200 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
201
202 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
203
204 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
205
206 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
207
208 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
209
210 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
211
212 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
213
214 </ul></li>
215
216 <li>2008
217 <ul>
218
219 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
220
221 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
222
223 </ul></li>
224
225 </ul>
226
227
228
229 <h2>Tags</h2>
230 <ul>
231
232 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (13)</a></li>
233
234 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
235
236 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
237
238 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
239
240 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (7)</a></li>
241
242 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (12)</a></li>
243
244 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
245
246 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (73)</a></li>
247
248 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (125)</a></li>
249
250 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (10)</a></li>
251
252 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (9)</a></li>
253
254 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
255
256 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (190)</a></li>
257
258 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (21)</a></li>
259
260 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (12)</a></li>
261
262 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (11)</a></li>
263
264 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (11)</a></li>
265
266 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (33)</a></li>
267
268 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (6)</a></li>
269
270 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (18)</a></li>
271
272 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (8)</a></li>
273
274 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (6)</a></li>
275
276 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
277
278 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (25)</a></li>
279
280 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (232)</a></li>
281
282 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (152)</a></li>
283
284 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (8)</a></li>
285
286 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
287
288 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (44)</a></li>
289
290 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (65)</a></li>
291
292 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (1)</a></li>
293
294 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
295
296 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (2)</a></li>
297
298 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (7)</a></li>
299
300 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
301
302 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (4)</a></li>
303
304 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
305
306 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (29)</a></li>
307
308 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
309
310 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (4)</a></li>
311
312 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (42)</a></li>
313
314 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (3)</a></li>
315
316 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (7)</a></li>
317
318 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (15)</a></li>
319
320 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (1)</a></li>
321
322 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (7)</a></li>
323
324 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (38)</a></li>
325
326 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
327
328 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (26)</a></li>
329
330 </ul>
331
332
333 </div>
334 <p style="text-align: right">
335 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
336 </p>
337
338 </body>
339 </html>