]> pere.pagekite.me Git - homepage.git/blob - blog/tags/bootsystem/index.html
49d01d4dc8be4524f0ad4484621920f8893851d5
[homepage.git] / blog / tags / bootsystem / index.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: Entries Tagged bootsystem</title>
6 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css">
7 <link rel="alternate" title="RSS Feed" href="bootsystem.rss" type="application/rss+xml">
8 </head>
9 <body>
10
11 <div class="title">
12 <h1>
13 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
14
15 </h1>
16
17 </div>
18
19 <p>Entries tagged "bootsystem".</p>
20
21
22
23
24 <div class="entry">
25 <div class="title">
26 <a href="http://people.skolelinux.org/pere/blog/Parallellized_boot_is_now_the_default_in_Debian_unstable.html">Parallellized boot is now the default in Debian/unstable</a>
27 </div>
28 <div class="date">
29 2010-05-14 22:40
30 </div>
31
32 <div class="body">
33
34 <p>Since this evening, parallel booting is the default in
35 Debian/unstable for machines using dependency based boot sequencing.
36 Apparently the testing of concurrent booting has been wider than
37 expected, if I am to believe the
38 <a href="http://lists.debian.org/debian-devel/2010/05/msg00122.html">input
39 on debian-devel@</a>, and I concluded a few days ago to move forward
40 with the feature this weekend, to give us some time to detect any
41 remaining problems before Squeeze is frozen. If serious problems are
42 detected, it is simple to change the default back to sequential boot.
43 The upload of the new sysvinit package also activate a new upstream
44 version.</p>
45
46 More information about
47 <a href="http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot">dependency
48 based boot sequencing</a> is available from the Debian wiki. It is
49 currently possible to disable parallel booting when one run into
50 problems caused by it, by adding this line to /etc/default/rcS:</p>
51
52 <blockquote><pre>
53 CONCURRENCY=none
54 </pre></blockquote>
55
56 <p>If you report any problems with dependencies in init.d scripts to
57 the BTS, please usertag the report to get it to show up at
58 <a href="http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=initscripts-ng-devel@lists.alioth.debian.org">the
59 list of usertagged bugs related to this</a>.</p>
60
61 </div>
62 <div class="tags">
63
64
65
66 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/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
67
68 </div>
69 </div>
70 <div class="padding"></div>
71
72 <div class="entry">
73 <div class="title">
74 <a href="http://people.skolelinux.org/pere/blog/Parallellized_boot_seem_to_hold_up_well_in_Debian_testing.html">Parallellized boot seem to hold up well in Debian/testing</a>
75 </div>
76 <div class="date">
77 2010-05-27 23:55
78 </div>
79
80 <div class="body">
81
82 <p>A few days ago, parallel booting was enabled in Debian/testing.
83 The feature seem to hold up pretty well, but three fairly serious
84 issues are known and should be solved:
85
86 <p><ul>
87
88 <li>The wicd package seen to
89 <a href="http://bugs.debian.org/508289">break NFS mounting</a> and
90 <a href="http://bugs.debian.org/581586">network setup</a> when
91 parallel booting is enabled. No idea why, but the wicd maintainer
92 seem to be on the case.</li>
93
94 <li>The nvidia X driver seem to
95 <a href="http://bugs.debian.org/583312">have a race condition</a>
96 triggered more easily when parallel booting is in effect. The
97 maintainer is on the case.</li>
98
99 <li>The sysv-rc package fail to properly enable dependency based boot
100 sequencing (the shutdown is broken) when old file-rc users
101 <a href="http://bugs.debian.org/575080">try to switch back</a> to
102 sysv-rc. One way to solve it would be for file-rc to create
103 /etc/init.d/.legacy-bootordering, and another is to try to make
104 sysv-rc more robust. Will investigate some more and probably upload a
105 workaround in sysv-rc to help those trying to move from file-rc to
106 sysv-rc get a working shutdown.</li>
107
108 </ul></p>
109
110 <p>All in all not many surprising issues, and all of them seem
111 solvable before Squeeze is released. In addition to these there are
112 some packages with bugs in their dependencies and run level settings,
113 which I expect will be fixed in a reasonable time span.</p>
114
115 <p>If you report any problems with dependencies in init.d scripts to
116 the BTS, please usertag the report to get it to show up at
117 <a href="http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=initscripts-ng-devel@lists.alioth.debian.org">the
118 list of usertagged bugs related to this</a>.</p>
119
120 <p>Update: Correct bug number to file-rc issue.</p>
121
122 </div>
123 <div class="tags">
124
125
126
127 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/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
128
129 </div>
130 </div>
131 <div class="padding"></div>
132
133 <div class="entry">
134 <div class="title">
135 <a href="http://people.skolelinux.org/pere/blog/KDM_fail_at_boot_with_NVidia_cards___and_no_one_try_to_fix_it_.html">KDM fail at boot with NVidia cards - and no one try to fix it?</a>
136 </div>
137 <div class="date">
138 2010-06-01 17:05
139 </div>
140
141 <div class="body">
142
143 <p>It is strange to watch how a bug in Debian causing KDM to fail to
144 start at boot when an NVidia video card is used is handled. The
145 problem seem to be that the nvidia X.org driver uses a long time to
146 initialize, and this duration is longer than kdm is configured to
147 wait.</p>
148
149 <p>I came across two bugs related to this issue,
150 <a href="http://bugs.debian.org/583312">#583312</a> initially filed
151 against initscripts and passed on to nvidia-glx when it became obvious
152 that the nvidia drivers were involved, and
153 <a href="http://bugs.debian.org/524751">#524751</a> initially filed against
154 kdm and passed on to src:nvidia-graphics-drivers for unknown reasons.</p>
155
156 <p>To me, it seem that no-one is interested in actually solving the
157 problem nvidia video card owners experience and make sure the Debian
158 distribution work out of the box for these users. The nvidia driver
159 maintainers expect kdm to be set up to wait longer, while kdm expect
160 the nvidia driver maintainers to fix the driver to start faster, and
161 while they wait for each other I guess the users end up switching to a
162 distribution that work for them. I have no idea what the solution is,
163 but I am pretty sure that waiting for each other is not it.</p>
164
165 <p>I wonder why we end up handling bugs this way.</p>
166
167 </div>
168 <div class="tags">
169
170
171
172 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/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
173
174 </div>
175 </div>
176 <div class="padding"></div>
177
178 <div class="entry">
179 <div class="title">
180 <a href="http://people.skolelinux.org/pere/blog/Upstart_or_sysvinit___as_init_d_scripts_see_it.html">Upstart or sysvinit - as init.d scripts see it</a>
181 </div>
182 <div class="date">
183 2010-06-06 23:55
184 </div>
185
186 <div class="body">
187
188 <p>If Debian is to migrate to upstart on Linux, I expect some init.d
189 scripts to migrate (some of) their operations to upstart job while
190 keeping the init.d for hurd and kfreebsd. The packages with such
191 needs will need a way to get their init.d scripts to behave
192 differently when used with sysvinit and with upstart. Because of
193 this, I had a look at the environment variables set when a init.d
194 script is running under upstart, and when it is not.</p>
195
196 <p>With upstart, I notice these environment variables are set when a
197 script is started from rcS.d/ (ignoring some irrelevant ones like
198 COLUMNS):</p>
199
200 <blockquote><pre>
201 DEFAULT_RUNLEVEL=2
202 previous=N
203 PREVLEVEL=
204 RUNLEVEL=
205 runlevel=S
206 UPSTART_EVENTS=startup
207 UPSTART_INSTANCE=
208 UPSTART_JOB=rc-sysinit
209 </pre></blockquote>
210
211 <p>With sysvinit, these environment variables are set for the same
212 script.</p>
213
214 <blockquote><pre>
215 INIT_VERSION=sysvinit-2.88
216 previous=N
217 PREVLEVEL=N
218 RUNLEVEL=S
219 runlevel=S
220 </pre></blockquote>
221
222 <p>The RUNLEVEL and PREVLEVEL environment variables passed on from
223 sysvinit are not set by upstart. Not sure if it is intentional or not
224 to not be compatible with sysvinit in this regard.</p>
225
226 <p>For scripts needing to behave differently when upstart is used,
227 looking for the UPSTART_JOB environment variable seem to be a good
228 choice.</p>
229
230 </div>
231 <div class="tags">
232
233
234
235 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>.
236
237 </div>
238 </div>
239 <div class="padding"></div>
240
241 <div class="entry">
242 <div class="title">
243 <a href="http://people.skolelinux.org/pere/blog/Automatic_upgrade_testing_from_Lenny_to_Squeeze.html">Automatic upgrade testing from Lenny to Squeeze</a>
244 </div>
245 <div class="date">
246 2010-06-11 22:50
247 </div>
248
249 <div class="body">
250
251 <p>The last few days I have done some upgrade testing in Debian, to
252 see if the upgrade from Lenny to Squeeze will go smoothly. A few bugs
253 have been discovered and reported in the process
254 (<a href="http://bugs.debian.org/585410">#585410</a> in nagios3-cgi,
255 <a href="http://bugs.debian.org/584879">#584879</a> already fixed in
256 enscript and <a href="http://bugs.debian.org/584861">#584861</a> in
257 kdebase-workspace-data), and to get a more regular testing going on, I
258 am working on a script to automate the test.</p>
259
260 <p>The idea is to create a Lenny chroot and use tasksel to install a
261 Gnome or KDE desktop installation inside the chroot before upgrading
262 it. To ensure no services are started in the chroot, a policy-rc.d
263 script is inserted. To make sure tasksel believe it is to install a
264 desktop on a laptop, the tasksel tests are replaced in the chroot
265 (only acceptable because this is a throw-away chroot).</p>
266
267 <p>A naive upgrade from Lenny to Squeeze using aptitude dist-upgrade
268 currently always fail because udev refuses to upgrade with the kernel
269 in Lenny, so to avoid that problem the file /etc/udev/kernel-upgrade
270 is created. The bug report
271 <a href="http://bugs.debian.org/566000">#566000</a> make me suspect
272 this problem do not trigger in a chroot, but I touch the file anyway
273 to make sure the upgrade go well. Testing on virtual and real
274 hardware have failed me because of udev so far, and creating this file
275 do the trick in such settings anyway. This is a
276 <a href="http://www.linuxquestions.org/questions/debian-26/failed-dist-upgrade-due-to-udev-config_sysfs_deprecated-nonsense-804130/">known
277 issue</a> and the current udev behaviour is intended by the udev
278 maintainer because he lack the resources to rewrite udev to keep
279 working with old kernels or something like that. I really wish the
280 udev upstream would keep udev backwards compatible, to avoid such
281 upgrade problem, but given that they fail to do so, I guess
282 documenting the way out of this mess is the best option we got for
283 Debian Squeeze.</p>
284
285 <p>Anyway, back to the task at hand, testing upgrades. This test
286 script, which I call <tt>upgrade-test</tt> for now, is doing the
287 trick:</p>
288
289 <blockquote><pre>
290 #!/bin/sh
291 set -ex
292
293 if [ "$1" ] ; then
294 desktop=$1
295 else
296 desktop=gnome
297 fi
298
299 from=lenny
300 to=squeeze
301
302 exec &lt; /dev/null
303 unset LANG
304 mirror=http://ftp.skolelinux.org/debian
305 tmpdir=chroot-$from-upgrade-$to-$desktop
306 fuser -mv .
307 debootstrap $from $tmpdir $mirror
308 chroot $tmpdir aptitude update
309 cat > $tmpdir/usr/sbin/policy-rc.d &lt;&lt;EOF
310 #!/bin/sh
311 exit 101
312 EOF
313 chmod a+rx $tmpdir/usr/sbin/policy-rc.d
314 exit_cleanup() {
315 umount $tmpdir/proc
316 }
317 mount -t proc proc $tmpdir/proc
318 # Make sure proc is unmounted also on failure
319 trap exit_cleanup EXIT INT
320
321 chroot $tmpdir aptitude -y install debconf-utils
322
323 # Make sure tasksel autoselection trigger. It need the test scripts
324 # to return the correct answers.
325 echo tasksel tasksel/desktop multiselect $desktop | \
326 chroot $tmpdir debconf-set-selections
327
328 # Include the desktop and laptop task
329 for test in desktop laptop ; do
330 echo > $tmpdir/usr/lib/tasksel/tests/$test &lt;&lt;EOF
331 #!/bin/sh
332 exit 2
333 EOF
334 chmod a+rx $tmpdir/usr/lib/tasksel/tests/$test
335 done
336
337 DEBIAN_FRONTEND=noninteractive
338 DEBIAN_PRIORITY=critical
339 export DEBIAN_FRONTEND DEBIAN_PRIORITY
340 chroot $tmpdir tasksel --new-install
341
342 echo deb $mirror $to main > $tmpdir/etc/apt/sources.list
343 chroot $tmpdir aptitude update
344 touch $tmpdir/etc/udev/kernel-upgrade
345 chroot $tmpdir aptitude -y dist-upgrade
346 fuser -mv
347 </pre></blockquote>
348
349 <p>I suspect it would be useful to test upgrades with both apt-get and
350 with aptitude, but I have not had time to look at how they behave
351 differently so far. I hope to get a cron job running to do the test
352 regularly and post the result on the web. The Gnome upgrade currently
353 work, while the KDE upgrade fail because of the bug in
354 kdebase-workspace-data</p>
355
356 <p>I am not quite sure what kind of extract from the huge upgrade logs
357 (KDE 167 KiB, Gnome 516 KiB) it make sense to include in this blog
358 post, so I will refrain from trying. I can report that for Gnome,
359 aptitude report 760 packages upgraded, 448 newly installed, 129 to
360 remove and 1 not upgraded and 1024MB need to be downloaded while for
361 KDE the same numbers are 702 packages upgraded, 507 newly installed,
362 193 to remove and 0 not upgraded and 1117MB need to be downloaded</p>
363
364 <p>I am very happy to notice that the Gnome desktop + laptop upgrade
365 is able to migrate to dependency based boot sequencing and parallel
366 booting without a hitch. Was unsure if there were still bugs with
367 packages failing to clean up their obsolete init.d script during
368 upgrades, and no such problem seem to affect the Gnome desktop+laptop
369 packages.</p>
370
371 </div>
372 <div class="tags">
373
374
375
376 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/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
377
378 </div>
379 </div>
380 <div class="padding"></div>
381
382 <p style="text-align: right;"><a href="bootsystem.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS Feed" width="36" height="14"></a></p>
383
384
385
386
387 <div id="sidebar">
388
389 <h2>Archive</h2>
390 <ul>
391
392 <li>2010
393 <ul>
394
395 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
396
397 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
398
399 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
400
401 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
402
403 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
404
405 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (7)</a></li>
406
407 </ul></li>
408
409 <li>2009
410 <ul>
411
412 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
413
414 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
415
416 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
417
418 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
419
420 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
421
422 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
423
424 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
425
426 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
427
428 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
429
430 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
431
432 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
433
434 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
435
436 </ul></li>
437
438 <li>2008
439 <ul>
440
441 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
442
443 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
444
445 </ul></li>
446
447 </ul>
448
449
450
451 <h2>Tags</h2>
452 <ul>
453
454 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (11)</a></li>
455
456 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
457
458 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
459
460 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (5)</a></li>
461
462 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (25)</a></li>
463
464 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (25)</a></li>
465
466 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (36)</a></li>
467
468 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (1)</a></li>
469
470 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (6)</a></li>
471
472 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (2)</a></li>
473
474 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (1)</a></li>
475
476 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
477
478 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (5)</a></li>
479
480 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (67)</a></li>
481
482 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (75)</a></li>
483
484 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (12)</a></li>
485
486 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (11)</a></li>
487
488 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (10)</a></li>
489
490 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
491
492 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (8)</a></li>
493
494 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (3)</a></li>
495
496 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (12)</a></li>
497
498 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (1)</a></li>
499
500 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (10)</a></li>
501
502 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (1)</a></li>
503
504 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (6)</a></li>
505
506 </ul>
507
508 </div>
509 </body>
510 </html>