]> pere.pagekite.me Git - homepage.git/blob - blog/archive/2010/06/index.html
Generated.
[homepage.git] / blog / archive / 2010 / 06 / 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 from June 2010</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="06.rss" type="application/rss+xml">
8 </head>
9 <body>
10 <!-- XML FEED -->
11
12 <div class="title">
13 <h1>
14 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
15
16 </h1>
17
18 </div>
19
20 <p>Entries from June 2010.</p>
21
22
23 <div class="entry">
24 <div class="title">
25 <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>
26 </div>
27 <div class="date">
28 2010-06-01 17:05
29 </div>
30
31 <div class="body">
32
33 <p>It is strange to watch how a bug in Debian causing KDM to fail to
34 start at boot when an NVidia video card is used is handled. The
35 problem seem to be that the nvidia X.org driver uses a long time to
36 initialize, and this duration is longer than kdm is configured to
37 wait.</p>
38
39 <p>I came across two bugs related to this issue,
40 <a href="http://bugs.debian.org/583312">#583312</a> initially filed
41 against initscripts and passed on to nvidia-glx when it became obvious
42 that the nvidia drivers were involved, and
43 <a href="http://bugs.debian.org/524751">#524751</a> initially filed against
44 kdm and passed on to src:nvidia-graphics-drivers for unknown reasons.</p>
45
46 <p>To me, it seem that no-one is interested in actually solving the
47 problem nvidia video card owners experience and make sure the Debian
48 distribution work out of the box for these users. The nvidia driver
49 maintainers expect kdm to be set up to wait longer, while kdm expect
50 the nvidia driver maintainers to fix the driver to start faster, and
51 while they wait for each other I guess the users end up switching to a
52 distribution that work for them. I have no idea what the solution is,
53 but I am pretty sure that waiting for each other is not it.</p>
54
55 <p>I wonder why we end up handling bugs this way.</p>
56
57 </div>
58 <div class="tags">
59
60
61
62 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>.
63
64 </div>
65 </div>
66 <div class="padding"></div>
67
68 <div class="entry">
69 <div class="title">
70 <a href="http://people.skolelinux.org/pere/blog/Togsatsing_p___norsk__mot_sykkel.html">Togsatsing på norsk, mot sykkel</a>
71 </div>
72 <div class="date">
73 2010-06-02 23:45
74 </div>
75
76 <div class="body">
77
78 <p>Det står dårlig til med toget når en finner på å la det
79 <a href="http://www.aftenposten.no/nyheter/iriks/article3677060.ece">kappkjøre
80 med sykkel</a>... Jeg tror det trengs strukturendringer for å få
81 fikset på togproblemene i Norge.</p>
82
83 <p>Mon tro hva toglinje mellom Narvik og Tromsø ville hatt slags
84 effekt på området der?</p>
85
86 </div>
87 <div class="tags">
88
89
90
91 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>.
92
93 </div>
94 </div>
95 <div class="padding"></div>
96
97 <div class="entry">
98 <div class="title">
99 <a href="http://people.skolelinux.org/pere/blog/Sitesummary_tip__Listing_computer_hardware_models_used_at_site.html">Sitesummary tip: Listing computer hardware models used at site</a>
100 </div>
101 <div class="date">
102 2010-06-03 12:05
103 </div>
104
105 <div class="body">
106
107 <p>When using sitesummary at a site to track machines, it is possible
108 to get a list of the machine types in use thanks to the DMI
109 information extracted from each machine. The script to do so is
110 included in the sitesummary package, and here is example output from
111 the Skolelinux build servers:</p>
112
113 <blockquote><pre>
114 maintainer:~# /usr/lib/sitesummary/hardware-model-summary
115 vendor count
116 Dell Computer Corporation 1
117 PowerEdge 1750 1
118 IBM 1
119 eserver xSeries 345 -[8670M1X]- 1
120 Intel 2
121 [no-dmi-info] 3
122 maintainer:~#
123 </pre></blockquote>
124
125 <p>The quality of the report depend on the quality of the DMI tables
126 provided in each machine. Here there are Intel machines without model
127 information listed with Intel as vendor and mo model, and virtual Xen
128 machines listed as [no-dmi-info]. One can add -l as a command line
129 option to list the individual machines.</p>
130
131 <p>A larger list is
132 <a href="http://narvikskolen.no/sitesummary/">available from the the
133 city of Narvik</a>, which uses Skolelinux on all their shools and also
134 provide the basic sitesummary report publicly. In their report there
135 are ~1400 machines. I know they use both Ubuntu and Skolelinux on
136 their machines, and as sitesummary is available in both distributions,
137 it is trivial to get all of them to report to the same central
138 collector.</p>
139
140 </div>
141 <div class="tags">
142
143
144
145 Tags: <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>, <a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary</a>.
146
147 </div>
148 </div>
149 <div class="padding"></div>
150
151 <div class="entry">
152 <div class="title">
153 <a href="http://people.skolelinux.org/pere/blog/A_manual_for_standards_wars___.html">A manual for standards wars...</a>
154 </div>
155 <div class="date">
156 2010-06-06 14:15
157 </div>
158
159 <div class="body">
160
161 <p>Via the
162 <a href="http://feedproxy.google.com/~r/robweir/antic-atom/~3/QzU4RgoAGMg/weekly-links-10.html">blog
163 of Rob Weir</a> I came across the very interesting essay named
164 <a href="http://faculty.haas.berkeley.edu/shapiro/wars.pdf">The Art of
165 Standards Wars</a> (PDF 25 pages). I recommend it for everyone
166 following the standards wars of today.</p>
167
168 </div>
169 <div class="tags">
170
171
172
173 Tags: <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>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
174
175 </div>
176 </div>
177 <div class="padding"></div>
178
179 <div class="entry">
180 <div class="title">
181 <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>
182 </div>
183 <div class="date">
184 2010-06-06 23:55
185 </div>
186
187 <div class="body">
188
189 <p>If Debian is to migrate to upstart on Linux, I expect some init.d
190 scripts to migrate (some of) their operations to upstart job while
191 keeping the init.d for hurd and kfreebsd. The packages with such
192 needs will need a way to get their init.d scripts to behave
193 differently when used with sysvinit and with upstart. Because of
194 this, I had a look at the environment variables set when a init.d
195 script is running under upstart, and when it is not.</p>
196
197 <p>With upstart, I notice these environment variables are set when a
198 script is started from rcS.d/ (ignoring some irrelevant ones like
199 COLUMNS):</p>
200
201 <blockquote><pre>
202 DEFAULT_RUNLEVEL=2
203 previous=N
204 PREVLEVEL=
205 RUNLEVEL=
206 runlevel=S
207 UPSTART_EVENTS=startup
208 UPSTART_INSTANCE=
209 UPSTART_JOB=rc-sysinit
210 </pre></blockquote>
211
212 <p>With sysvinit, these environment variables are set for the same
213 script.</p>
214
215 <blockquote><pre>
216 INIT_VERSION=sysvinit-2.88
217 previous=N
218 PREVLEVEL=N
219 RUNLEVEL=S
220 runlevel=S
221 </pre></blockquote>
222
223 <p>The RUNLEVEL and PREVLEVEL environment variables passed on from
224 sysvinit are not set by upstart. Not sure if it is intentional or not
225 to not be compatible with sysvinit in this regard.</p>
226
227 <p>For scripts needing to behave differently when upstart is used,
228 looking for the UPSTART_JOB environment variable seem to be a good
229 choice.</p>
230
231 </div>
232 <div class="tags">
233
234
235
236 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>.
237
238 </div>
239 </div>
240 <div class="padding"></div>
241
242 <div class="entry">
243 <div class="title">
244 <a href="http://people.skolelinux.org/pere/blog/Skolelinux_er_laget_for_sentraldrifting__naturligvis.html">Skolelinux er laget for sentraldrifting, naturligvis</a>
245 </div>
246 <div class="date">
247 2010-06-09 12:30
248 </div>
249
250 <div class="body">
251
252 <p>Det er merkelig hvordan myter om Skolelinux overlever. En slik
253 myte er at Skolelinux ikke kan sentraldriftes og ha sentralt plasserte
254 tjenermaskiner. I siste Computerworld Norge er
255 <a href="http://www.idg.no/computerworld/article169432.ece">IT-sjef
256 Viggo Billdal i Steinkjer intervjuet</a>, og forteller uten
257 blygsel:</p>
258
259 <blockquote><p>Vi hadde Skolelinux, men det har vi sluttet med. Vi testet
260 om det lønte seg med Microsoft eller en åpen plattform. Vi fant ut at
261 Microsoft egentlig var totalt sett bedre egnet. Det var store
262 driftskostnader med Skolelinux, blant annet på grunn av
263 desentraliserte servere. Det var komplisert, så vi gikk vekk fra det
264 og bruker nå bare Windows.</p></blockquote>
265
266 <p>En <a
267 href="https://init.linpro.no/pipermail/skolelinux.no/bruker/2010-June/009101.html">rask
268 sjekk</a> mot den norske brukerlista i Skolelinuxprosjektet forteller
269 at Steinkjers forsøk foregikk fram til 2004/2005, og at Røysing skole
270 i Steinkjer skal ha vært svært fornøyd med Skolelinux men at kommunen
271 overkjørte skolen og krevde at de gikk over til Windows. Et søk på
272 nettet sendte meg til
273 <a href="http://www.dn.no/multimedia/archive/00090/Dagens_it_nr__18_90826a.pdf">Dagens
274 IT nr. 18 2005</a> hvor en kan lese på side 18:</p>
275
276 <blockquote><p>Inge Tømmerås ved Røysing skole i Steinkjer kjører ennå
277 Microsoft, men forteller at kompetanseutfordringen med Skolelinux ikke
278 var så stor. ­ Jeg syntes Skolelinux var utrolig lett å drifte uten
279 forkunnskaper. Men man må jo selvsagt ha tilgang på ekstern kompetanse
280 til installasjoner og maskinvarefeil, sier Tømmerås.</p></blockquote>
281
282 <p>Som systemarkitekten bak Skolelinux, kan jeg bare riste på hodet
283 over påstanden om at Skolelinux krever desentraliserte tjenere.
284 Skolelinux-arkitekturen er laget for sentralisert drift og plassering
285 av tjenerne lokalt eller sentralt alt etter behov og nettkapasitet.
286 Den er modellert på nettverks- og tjenerløsningen som brukes på
287 Universitetet i Tromsø og Oslo, der jeg jobber med utvikling av
288 driftstjenester. Dette er det heldigvis noen som har fått med seg, og
289 jeg er glad for å kunne sitere fra en kommentar på den overnevnte
290 artikkelen. Min venn og gamle kollega Sturle Sunde forteller der:
291
292 <blockquote>
293 <p>I Flora kommune køyrer vi Skulelinux på skular med alt frå 15 til
294 meir enn 500 elevar. Dei store skulane har eigen tenar, for det er
295 mest praktisk. Eg, som er driftsansvarleg for heile nettet, ser
296 sjeldan dei tenarane fysisk, men at dei står der gjer skulane mindre
297 avhengige av eksterne linjer som er trege eller dyre. Dei minste
298 skulane har ikkje eigen tenar. Å bruke sentral tenar er heller ikkje
299 noko problem. Småskulane klarar seg fint med 1 mbit-linje til ein
300 sentral tenar eller tenaren på ein større skule.</p>
301
302 <p>Det beste med Skulelinux er halvtjukke klientar. Dei treng ikkje
303 harddisk og brukar minimalt med ressursar på tenaren fordi dei køyrer
304 programma lokalt. Eit klasserom med 30 sju-åtte år gamle maskiner har
305 mykje meir CPU og RAM totalt enn nokon moderne tenar til under
306 millionen. Det trengst to kommandoar på den sentrale tenaren for å
307 oppdatere alle klientane, både tynne og halvtjukke. Vi har ingen
308 problem med diskar som ryk heller, som var eit problem før fordi
309 elevane sat og sparka i maskinene. Og dei krev lite bandbreidde i
310 nettet, so det er fullt mogleg å køyre slike på småskular med trege
311 linjer mot tenaren på ein større skule.</p>
312
313 <p>Flora kommune har nesten 800 Linux-maskiner i sitt skulenett, og
314 ein person som tek seg av drift av heile nettet, inkludert tenarar,
315 klientar, operativsystem, programvare, heimekontorløysing og
316 administrasjon av brukarar.</p>
317
318 <p>No skal det seiast at vi ikkje køyrer rein Skulelinux ut av
319 boksen. Vi har gjort ein del tilpassingar mot noko Novell-greier som
320 var der frå før, og som har komplisert installasjonen vår. Etter at
321 oppsettet var gjort har løysinga vore stabil og kravd minimalt med
322 arbeid.</p>
323 </blockquote>
324
325 <p>Jeg vet at Narvik, Harstad og Oslo er kommuner der Skolelinux
326 sentraldriftes med sentrale tjenere. Det forteller meg at Steinkjers
327 IT-sjef neppe bør skylde på Skolelinux-løsningen for sine 5 år gamle
328 minner.</p>
329
330 </div>
331 <div class="tags">
332
333
334
335 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>.
336
337 </div>
338 </div>
339 <div class="padding"></div>
340
341 <div class="entry">
342 <div class="title">
343 <a href="http://people.skolelinux.org/pere/blog/Automatic_upgrade_testing_from_Lenny_to_Squeeze.html">Automatic upgrade testing from Lenny to Squeeze</a>
344 </div>
345 <div class="date">
346 2010-06-11 22:50
347 </div>
348
349 <div class="body">
350
351 <p>The last few days I have done some upgrade testing in Debian, to
352 see if the upgrade from Lenny to Squeeze will go smoothly. A few bugs
353 have been discovered and reported in the process
354 (<a href="http://bugs.debian.org/585410">#585410</a> in nagios3-cgi,
355 <a href="http://bugs.debian.org/584879">#584879</a> already fixed in
356 enscript and <a href="http://bugs.debian.org/584861">#584861</a> in
357 kdebase-workspace-data), and to get a more regular testing going on, I
358 am working on a script to automate the test.</p>
359
360 <p>The idea is to create a Lenny chroot and use tasksel to install a
361 Gnome or KDE desktop installation inside the chroot before upgrading
362 it. To ensure no services are started in the chroot, a policy-rc.d
363 script is inserted. To make sure tasksel believe it to install a
364 desktop on a laptop, the tasksel tests are replaced in the chroot
365 (only acceptable because this is a throw-away chroot).</p>
366
367 <p>A naive upgrade from Lenny to Squeeze using aptitude dist-upgrade
368 currently always fail because udev refuses to upgrade with the kernel
369 in Lenny, so to avoid that problem the file /etc/udev/kernel-upgrade
370 is created. The bug report
371 <a href="http://bugs.debian.org/566000">#566000</a> make me suspect
372 this problem do not trigger in a chroot, but I touch the file anyway
373 to make sure the upgrade go well. Testing on virtual and real
374 hardware have failed me because of udev so far, and creating this file
375 do the trick in such settings anyway. This is a
376 <a href="http://www.linuxquestions.org/questions/debian-26/failed-dist-upgrade-due-to-udev-config_sysfs_deprecated-nonsense-804130/">known
377 issue</a> and the current udev behaviour is intended by the udev
378 maintainer because he lack the resources to rewrite udev to keep
379 working with old kernels or something like that. I really wish the
380 udev upstream would keep udev backwards compatible, to avoid such
381 upgrade problem, but given that they fail to do so, I guess
382 documenting the way out of this mess is the best option we got for
383 Debian Squeeze.</p>
384
385 <p>Anyway, back to the task at hand, testing upgrades. This test
386 script, which I call <tt>upgrade-test</tt> for now, is doing the
387 trick:</p>
388
389 <blockquote><pre>
390 #!/bin/sh
391 set -ex
392
393 if [ "$1" ] ; then
394 desktop=$1
395 else
396 desktop=gnome
397 fi
398
399 from=lenny
400 to=squeeze
401
402 exec &lt; /dev/null
403 unset LANG
404 mirror=http://ftp.skolelinux.org/debian
405 tmpdir=chroot-$from-upgrade-$to-$desktop
406 fuser -mv .
407 debootstrap $from $tmpdir $mirror
408 chroot $tmpdir aptitude update
409 cat > $tmpdir/usr/sbin/policy-rc.d &lt;&lt;EOF
410 #!/bin/sh
411 exit 101
412 EOF
413 chmod a+rx $tmpdir/usr/sbin/policy-rc.d
414 exit_cleanup() {
415 umount $tmpdir/proc
416 }
417 mount -t proc proc $tmpdir/proc
418 # Make sure proc is unmounted also on failure
419 trap exit_cleanup EXIT INT
420
421 chroot $tmpdir aptitude -y install debconf-utils
422
423 # Make sure tasksel autoselection trigger. It need the test scripts
424 # to return the correct answers.
425 echo tasksel tasksel/desktop multiselect $desktop | \
426 chroot $tmpdir debconf-set-selections
427
428 # Include the desktop and laptop task
429 for test in desktop laptop ; do
430 echo > $tmpdir/usr/lib/tasksel/tests/$test &lt;&lt;EOF
431 #!/bin/sh
432 exit 2
433 EOF
434 chmod a+rx $tmpdir/usr/lib/tasksel/tests/$test
435 done
436
437 DEBIAN_FRONTEND=noninteractive
438 DEBIAN_PRIORITY=critical
439 export DEBIAN_FRONTEND DEBIAN_PRIORITY
440 chroot $tmpdir tasksel --new-install
441
442 echo deb $mirror $to main > $tmpdir/etc/apt/sources.list
443 chroot $tmpdir aptitude update
444 touch $tmpdir/etc/udev/kernel-upgrade
445 chroot $tmpdir aptitude -y dist-upgrade
446 fuser -mv
447 </pre></blockquote>
448
449 <p>I suspect it would be useful to test upgrades with both apt-get and
450 with aptitude, but I have not had time to look at how they behave
451 differently so far. I hope to get a cron job running to do the test
452 regularly and post the result on the web. The Gnome upgrade currently
453 work, while the KDE upgrade fail because of the bug in
454 kdebase-workspace-data</p>
455
456 <p>I am not quite sure what kind of extract from the huge upgrade logs
457 (KDE 167 KiB, Gnome 516 KiB) it make sense to include in this blog
458 post, so I will refrain from trying. I can report that for Gnome,
459 aptitude report 760 packages upgraded, 448 newly installed, 129 to
460 remove and 1 not upgraded and 1024MB need to be downloaded while for
461 KDE the same numbers are 702 packages upgraded, 507 newly installed,
462 193 to remove and 0 not upgraded and 1117MB need to be downloaded</p>
463
464 <p>I am very happy to notice that the Gnome desktop + laptop upgrade
465 is able to migrate to dependency based boot sequencing and parallel
466 booting without a hitch. Was unsure if there were still bugs with
467 packages failing to clean up their obsolete init.d script during
468 upgrades, and no such problem seem to affect the Gnome desktop+laptop
469 packages.</p>
470
471 </div>
472 <div class="tags">
473
474
475
476 Tags: <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>.
477
478 </div>
479 </div>
480 <div class="padding"></div>
481
482 <p style="text-align: right;"><a href="06.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS Feed" width="36" height="14"></a></p>
483
484
485
486 <div id="sidebar">
487
488 <h2>Archive</h2>
489 <ul>
490
491 <li>2010
492 <ul>
493
494 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
495
496 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
497
498 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
499
500 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
501
502 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
503
504 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (7)</a></li>
505
506 </ul></li>
507
508 <li>2009
509 <ul>
510
511 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
512
513 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
514
515 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
516
517 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
518
519 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
520
521 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
522
523 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
524
525 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
526
527 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
528
529 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
530
531 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
532
533 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
534
535 </ul></li>
536
537 <li>2008
538 <ul>
539
540 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
541
542 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
543
544 </ul></li>
545
546 </ul>
547
548
549
550 <h2>Tags</h2>
551 <ul>
552
553 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (11)</a></li>
554
555 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
556
557 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
558
559 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (4)</a></li>
560
561 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (25)</a></li>
562
563 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (25)</a></li>
564
565 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (36)</a></li>
566
567 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (1)</a></li>
568
569 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (6)</a></li>
570
571 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (2)</a></li>
572
573 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (1)</a></li>
574
575 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
576
577 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (5)</a></li>
578
579 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (67)</a></li>
580
581 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (75)</a></li>
582
583 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (12)</a></li>
584
585 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (11)</a></li>
586
587 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (10)</a></li>
588
589 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
590
591 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (8)</a></li>
592
593 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (3)</a></li>
594
595 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (12)</a></li>
596
597 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (1)</a></li>
598
599 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (10)</a></li>
600
601 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (1)</a></li>
602
603 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (6)</a></li>
604
605 </ul>
606
607 </div>
608 </body>
609 </html>