]> pere.pagekite.me Git - homepage.git/blob - blog/archive/2011/11/index.html
Generated.
[homepage.git] / blog / archive / 2011 / 11 / 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 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: entries from November 2011</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 <link rel="alternate" title="RSS Feed" href="11.rss" type="application/rss+xml" />
10 </head>
11 <body>
12 <!-- XML FEED -->
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 <h3>Entries from November 2011.</h3>
23
24 <div class="entry">
25 <div class="title">
26 <a href="http://people.skolelinux.org/pere/blog/Automatically_upgrading_server_firmware_on_Dell_PowerEdge.html">Automatically upgrading server firmware on Dell PowerEdge</a>
27 </div>
28 <div class="date">
29 21st November 2011
30 </div>
31 <div class="body">
32 <p>At work we have heaps of servers. I believe the total count is
33 around 1000 at the moment. To be able to get help from the vendors
34 when something go wrong, we want to keep the firmware on the servers
35 up to date. If the firmware isn't the latest and greatest, the
36 vendors typically refuse to start debugging any problems until the
37 firmware is upgraded. So before every reboot, we want to upgrade the
38 firmware, and we would really like everyone handling servers at the
39 university to do this themselves when they plan to reboot a machine.
40 For that to happen we at the unix server admin group need to provide
41 the tools to do so.</p>
42
43 <p>To make firmware upgrading easier, I am working on a script to
44 fetch and install the latest firmware for the servers we got. Most of
45 our hardware are from Dell and HP, so I have focused on these servers
46 so far. This blog post is about the Dell part.</P>
47
48 <p>On the Dell FTP site I was lucky enough to find
49 <a href="ftp://ftp.us.dell.com/catalog/Catalog.xml.gz">an XML file</a>
50 with firmware information for all 11th generation servers, listing
51 which firmware should be used on a given model and where on the FTP
52 site I can find it. Using a simple perl XML parser I can then
53 download the shell scripts Dell provides to do firmware upgrades from
54 within Linux and reboot when all the firmware is primed and ready to
55 be activated on the first reboot.</p>
56
57 <p>This is the Dell related fragment of the perl code I am working on.
58 Are there anyone working on similar tools for firmware upgrading all
59 servers at a site? Please get in touch and lets share resources.</p>
60
61 <p><pre>
62 #!/usr/bin/perl
63 use strict;
64 use warnings;
65 use File::Temp qw(tempdir);
66 BEGIN {
67 # Install needed RHEL packages if missing
68 my %rhelmodules = (
69 'XML::Simple' => 'perl-XML-Simple',
70 );
71 for my $module (keys %rhelmodules) {
72 eval "use $module;";
73 if ($@) {
74 my $pkg = $rhelmodules{$module};
75 system("yum install -y $pkg");
76 eval "use $module;";
77 }
78 }
79 }
80 my $errorsto = 'pere@hungry.com';
81
82 upgrade_dell();
83
84 exit 0;
85
86 sub run_firmware_script {
87 my ($opts, $script) = @_;
88 unless ($script) {
89 print STDERR "fail: missing script name\n";
90 exit 1
91 }
92 print STDERR "Running $script\n\n";
93
94 if (0 == system("sh $script $opts")) { # FIXME correct exit code handling
95 print STDERR "success: firmware script ran succcessfully\n";
96 } else {
97 print STDERR "fail: firmware script returned error\n";
98 }
99 }
100
101 sub run_firmware_scripts {
102 my ($opts, @dirs) = @_;
103 # Run firmware packages
104 for my $dir (@dirs) {
105 print STDERR "info: Running scripts in $dir\n";
106 opendir(my $dh, $dir) or die "Unable to open directory $dir: $!";
107 while (my $s = readdir $dh) {
108 next if $s =~ m/^\.\.?/;
109 run_firmware_script($opts, "$dir/$s");
110 }
111 closedir $dh;
112 }
113 }
114
115 sub download {
116 my $url = shift;
117 print STDERR "info: Downloading $url\n";
118 system("wget --quiet \"$url\"");
119 }
120
121 sub upgrade_dell {
122 my @dirs;
123 my $product = `dmidecode -s system-product-name`;
124 chomp $product;
125
126 if ($product =~ m/PowerEdge/) {
127
128 # on RHEL, these pacakges are needed by the firwmare upgrade scripts
129 system('yum install -y compat-libstdc++-33.i686 libstdc++.i686 libxml2.i686 procmail');
130
131 my $tmpdir = tempdir(
132 CLEANUP => 1
133 );
134 chdir($tmpdir);
135 fetch_dell_fw('catalog/Catalog.xml.gz');
136 system('gunzip Catalog.xml.gz');
137 my @paths = fetch_dell_fw_list('Catalog.xml');
138 # -q is quiet, disabling interactivity and reducing console output
139 my $fwopts = "-q";
140 if (@paths) {
141 for my $url (@paths) {
142 fetch_dell_fw($url);
143 }
144 run_firmware_scripts($fwopts, $tmpdir);
145 } else {
146 print STDERR "error: Unsupported Dell model '$product'.\n";
147 print STDERR "error: Please report to $errorsto.\n";
148 }
149 chdir('/');
150 } else {
151 print STDERR "error: Unsupported Dell model '$product'.\n";
152 print STDERR "error: Please report to $errorsto.\n";
153 }
154 }
155
156 sub fetch_dell_fw {
157 my $path = shift;
158 my $url = "ftp://ftp.us.dell.com/$path";
159 download($url);
160 }
161
162 # Using ftp://ftp.us.dell.com/catalog/Catalog.xml.gz, figure out which
163 # firmware packages to download from Dell. Only work for Linux
164 # machines and 11th generation Dell servers.
165 sub fetch_dell_fw_list {
166 my $filename = shift;
167
168 my $product = `dmidecode -s system-product-name`;
169 chomp $product;
170 my ($mybrand, $mymodel) = split(/\s+/, $product);
171
172 print STDERR "Finding firmware bundles for $mybrand $mymodel\n";
173
174 my $xml = XMLin($filename);
175 my @paths;
176 for my $bundle (@{$xml->{SoftwareBundle}}) {
177 my $brand = $bundle->{TargetSystems}->{Brand}->{Display}->{content};
178 my $model = $bundle->{TargetSystems}->{Brand}->{Model}->{Display}->{content};
179 my $oscode;
180 if ("ARRAY" eq ref $bundle->{TargetOSes}->{OperatingSystem}) {
181 $oscode = $bundle->{TargetOSes}->{OperatingSystem}[0]->{osCode};
182 } else {
183 $oscode = $bundle->{TargetOSes}->{OperatingSystem}->{osCode};
184 }
185 if ($mybrand eq $brand && $mymodel eq $model && "LIN" eq $oscode)
186 {
187 @paths = map { $_->{path} } @{$bundle->{Contents}->{Package}};
188 }
189 }
190 for my $component (@{$xml->{SoftwareComponent}}) {
191 my $componenttype = $component->{ComponentType}->{value};
192
193 # Drop application packages, only firmware and BIOS
194 next if 'APAC' eq $componenttype;
195
196 my $cpath = $component->{path};
197 for my $path (@paths) {
198 if ($cpath =~ m%/$path$%) {
199 push(@paths, $cpath);
200 }
201 }
202 }
203 return @paths;
204 }
205 </pre>
206
207 <p>The code is only tested on RedHat Enterprise Linux, but I suspect
208 it could work on other platforms with some tweaking. Anyone know a
209 index like Catalog.xml is available from HP for HP servers? At the
210 moment I maintain a similar list manually and it is quickly getting
211 outdated.</p>
212
213 </div>
214 <div class="tags">
215
216
217 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
218
219
220 </div>
221 </div>
222 <div class="padding"></div>
223
224 <div class="entry">
225 <div class="title">
226 <a href="http://people.skolelinux.org/pere/blog/St_tt_Digitalt_Personvern_.html">Støtt Digitalt Personvern!</a>
227 </div>
228 <div class="date">
229 9th November 2011
230 </div>
231 <div class="body">
232 <p>Datalagringsdirektivet er et grotesk angrep på rettsstaten og da
233 det ble vedtatt i Stortinget ble det klart at alle som mener det
234 liberale demokrati bør forsvares måtte stå sammen for å kjempe tilbake
235 de totalitære strømninger i landet. Jeg ble derfor glad over å se at
236 den nyopprettede foreningen Digitalt Personvern startet innsamling
237 2011-10-18 for å gå til sak for å få prøvd lovligheten av direktivet.
238 Direktivet er så langt prøvd for retten i flere land, blant annet
239 Tsjekkia, Romania og Tyskland, og så vidt jeg vet har det hver gang
240 blitt kjent ulovlig av høyesterett eller forfatningsdomstolen i
241 landene. Jeg håper og tror det samme vil skje her i Norge.</p>
242
243 <p>Men for å finne ut av det må det finansiering til. Foreningen
244 Digitalt Personvern tror det trengs minst 2 millioner kroner for å gå
245 til sak og følge saken helt til ende, og i går fikk jeg endelig tid
246 til å overføre min skjerv. Jeg har overført 3000,- til kampanjen, og
247 oppfordrer hver og en av mine lesere å overføre minst like mye.</p>
248
249 <p>Besøk
250 <a href="http://www.digitaltpersonvern.no/bidra/">donasjonssiden</a>
251 til Digitalt Personvern for å finne kontonummer som kan brukes for å
252 bidra.</p>
253
254 <p>Jeg rekker ikke skrive så mye om hvorfor datalagringsdirektivet må
255 stoppes, så jeg nøyer meg denne gangen med en liten liste med lenker
256 til aktuelle artikler og innlegg om temaet.</p>
257
258 <ul>
259
260 <li><a href="http://www.uhuru.biz/?p=662">Skal Telenor forsvare statens
261 bevisregister i retten?</a> - bloggen til Jon Wessel-Aas,
262 bidragsyter til foreningen Digitalt Personvern</li>
263
264 <li><a href="http://voxpublica.no/2011/10/varslere-bør-støtte-kampanjen-digital-personvern/">Varslere
265 bør støtte kampanjen Digitalt Personvern</a> - Vox Publica</li>
266
267 <li><a href="http://www.digi.no/880520/georg-apenes-starter-%ABdigitalt-personvern%BB">Georg
268 Apenes starter «Digitalt personvern»</a> - Digi.no</li>
269
270 <li><a href="http://blogg.abrenna.com/foredrag-om-digitalt-personvern/">Foredrag
271 om Digitalt Personvern</a> - bloggen til Anders Brenna, styremedlem
272 i foreningen Digitalt Personvern</li>
273
274 <li><a href="http://www.nationen.no/2011/10/17/politikk/datalagringsdirektivet/eu/eu-direktiv/regjeringen/6990171/">Organisasjon
275 vil prøve datalagringsdirektivet for retten</a> - artikkel i Nationen</li>
276
277 <li><a href="http://people.skolelinux.org/pere/blog/Martin_Bekkelund__En_stille_b_nn_om_Datalagringsdirektivet.html">Martin
278 Bekkelund: En stille bønn om Datalagringsdirektivet</a> - min
279 blogg</li>
280
281 <li><a href="http://tversover.wordpress.com/2011/10/21/digitalt-personvern-i-praksis/">Digitalt
282 personvern i praksis</a> - bloggen til Espen Andersen</li>
283
284 <li><a href="http://www.dagbladet.no/2011/10/22/kultur/data_og_teknologi/datalagringsdirektivet/tekno/personvern/18692696/">Tar
285 kampen for personvernet til rettsalen</a> - Dagbladet</li>
286
287 </ul>
288
289 </div>
290 <div class="tags">
291
292
293 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/dld">dld</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern</a>.
294
295
296 </div>
297 </div>
298 <div class="padding"></div>
299
300 <div class="entry">
301 <div class="title">
302 <a href="http://people.skolelinux.org/pere/blog/Hvordan_enkelt_laste_ned_filmer_fra_NRK.html">Hvordan enkelt laste ned filmer fra NRK</a>
303 </div>
304 <div class="date">
305 5th November 2011
306 </div>
307 <div class="body">
308 <p>Ofte har jeg lyst til å laste ned et innslag fra NRKs nettsted for
309 å se det senere når jeg ikke er på nett, eller for å ha det
310 tilgjengelig når jeg en gang i fremtiden ønsker å referere til
311 innslaget selv om NRK har fjernet det fra sine nettsider. I dag fant
312 jeg et lite script som fikser jobben.</p>
313
314 <p>Scriptet er laget av Jan Henning Thorsen og tilgjengelig fra
315 <a href="http://jhthorsen.github.com/snippets/nrk-downloader/">github</a>,
316 og gjør det veldig enkelt å laste ned. Kjør <tt>nrk-downloader.sh
317 http://www1.nrk.no/nett-tv/klipp/582810</tt> for å hente ned et enkelt
318 innslag eller <tt>nrk-downloader.sh
319 http://www1.nrk.no/nett-tv/kategori/3521</tt> for å laste ned alle
320 episodene i en serie.</p>
321
322 <p>Det er ikke rakettforskning å laste ned NRK-"strømmer", og
323 tidligere gjorde jeg dette manuelt med mplayer. Scriptet til
324 Hr. Thorsen gjør det raskere og enklere for meg, men jeg vil ikke si
325 at det er en revolusjonerende løsning. Jeg mener jo fortsatt at
326 påstanden fra NRKs ansatte om at det er
327 <a href="http://people.skolelinux.org/pere/blog/Best___ikke_fortelle_noen_at_streaming_er_nedlasting___.html">vesensforskjellig
328 å legge tilgjengelig for nedlasting og for streaming</a> er
329 meningsløs.</p>
330
331 </div>
332 <div class="tags">
333
334
335 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/video">video</a>, <a href="http://people.skolelinux.org/pere/blog/tags/web">web</a>.
336
337
338 </div>
339 </div>
340 <div class="padding"></div>
341
342 <p style="text-align: right;"><a href="11.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS Feed" width="36" height="14" /></a></p>
343 <div id="sidebar">
344
345
346
347 <h2>Archive</h2>
348 <ul>
349
350 <li>2021
351 <ul>
352
353 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/01/">January (2)</a></li>
354
355 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/02/">February (1)</a></li>
356
357 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/05/">May (1)</a></li>
358
359 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/06/">June (1)</a></li>
360
361 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/07/">July (3)</a></li>
362
363 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/08/">August (1)</a></li>
364
365 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/09/">September (1)</a></li>
366
367 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/10/">October (1)</a></li>
368
369 </ul></li>
370
371 <li>2020
372 <ul>
373
374 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/02/">February (2)</a></li>
375
376 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/03/">March (2)</a></li>
377
378 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/04/">April (2)</a></li>
379
380 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/05/">May (3)</a></li>
381
382 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/06/">June (2)</a></li>
383
384 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/07/">July (1)</a></li>
385
386 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/09/">September (1)</a></li>
387
388 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/10/">October (1)</a></li>
389
390 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/11/">November (1)</a></li>
391
392 </ul></li>
393
394 <li>2019
395 <ul>
396
397 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/01/">January (4)</a></li>
398
399 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/02/">February (3)</a></li>
400
401 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/03/">March (3)</a></li>
402
403 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/05/">May (2)</a></li>
404
405 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/06/">June (5)</a></li>
406
407 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/07/">July (2)</a></li>
408
409 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/08/">August (1)</a></li>
410
411 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/09/">September (1)</a></li>
412
413 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/11/">November (1)</a></li>
414
415 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/12/">December (4)</a></li>
416
417 </ul></li>
418
419 <li>2018
420 <ul>
421
422 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/01/">January (1)</a></li>
423
424 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/02/">February (5)</a></li>
425
426 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/03/">March (5)</a></li>
427
428 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/04/">April (3)</a></li>
429
430 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/06/">June (2)</a></li>
431
432 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/07/">July (5)</a></li>
433
434 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/08/">August (3)</a></li>
435
436 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/09/">September (3)</a></li>
437
438 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/10/">October (5)</a></li>
439
440 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/11/">November (2)</a></li>
441
442 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/12/">December (4)</a></li>
443
444 </ul></li>
445
446 <li>2017
447 <ul>
448
449 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/01/">January (4)</a></li>
450
451 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/02/">February (3)</a></li>
452
453 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/03/">March (5)</a></li>
454
455 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/04/">April (2)</a></li>
456
457 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/06/">June (5)</a></li>
458
459 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/07/">July (1)</a></li>
460
461 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/08/">August (1)</a></li>
462
463 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/09/">September (3)</a></li>
464
465 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/10/">October (5)</a></li>
466
467 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/11/">November (3)</a></li>
468
469 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/12/">December (4)</a></li>
470
471 </ul></li>
472
473 <li>2016
474 <ul>
475
476 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/01/">January (3)</a></li>
477
478 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/02/">February (2)</a></li>
479
480 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/03/">March (3)</a></li>
481
482 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/04/">April (8)</a></li>
483
484 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/05/">May (8)</a></li>
485
486 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/06/">June (2)</a></li>
487
488 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/07/">July (2)</a></li>
489
490 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/08/">August (5)</a></li>
491
492 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/09/">September (2)</a></li>
493
494 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/10/">October (3)</a></li>
495
496 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/11/">November (8)</a></li>
497
498 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/12/">December (5)</a></li>
499
500 </ul></li>
501
502 <li>2015
503 <ul>
504
505 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/01/">January (7)</a></li>
506
507 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/02/">February (6)</a></li>
508
509 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/03/">March (1)</a></li>
510
511 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/04/">April (4)</a></li>
512
513 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/05/">May (3)</a></li>
514
515 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/06/">June (4)</a></li>
516
517 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/07/">July (6)</a></li>
518
519 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/08/">August (2)</a></li>
520
521 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/09/">September (2)</a></li>
522
523 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/10/">October (9)</a></li>
524
525 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
526
527 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/12/">December (3)</a></li>
528
529 </ul></li>
530
531 <li>2014
532 <ul>
533
534 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
535
536 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
537
538 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
539
540 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
541
542 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
543
544 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
545
546 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
547
548 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/08/">August (2)</a></li>
549
550 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/09/">September (5)</a></li>
551
552 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/10/">October (6)</a></li>
553
554 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/11/">November (3)</a></li>
555
556 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/12/">December (5)</a></li>
557
558 </ul></li>
559
560 <li>2013
561 <ul>
562
563 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
564
565 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
566
567 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
568
569 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
570
571 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
572
573 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
574
575 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
576
577 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
578
579 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
580
581 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
582
583 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
584
585 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
586
587 </ul></li>
588
589 <li>2012
590 <ul>
591
592 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
593
594 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
595
596 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
597
598 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
599
600 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
601
602 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
603
604 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
605
606 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
607
608 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
609
610 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
611
612 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
613
614 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
615
616 </ul></li>
617
618 <li>2011
619 <ul>
620
621 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
622
623 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
624
625 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
626
627 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
628
629 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
630
631 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
632
633 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
634
635 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
636
637 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
638
639 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
640
641 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
642
643 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
644
645 </ul></li>
646
647 <li>2010
648 <ul>
649
650 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
651
652 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
653
654 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
655
656 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
657
658 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
659
660 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
661
662 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
663
664 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
665
666 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
667
668 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
669
670 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
671
672 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
673
674 </ul></li>
675
676 <li>2009
677 <ul>
678
679 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
680
681 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
682
683 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
684
685 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
686
687 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
688
689 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
690
691 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
692
693 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
694
695 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
696
697 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
698
699 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
700
701 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
702
703 </ul></li>
704
705 <li>2008
706 <ul>
707
708 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
709
710 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
711
712 </ul></li>
713
714 </ul>
715
716
717
718 <h2>Tags</h2>
719 <ul>
720
721 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (16)</a></li>
722
723 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
724
725 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
726
727 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
728
729 <li><a href="http://people.skolelinux.org/pere/blog/tags/betalkontant">betalkontant (9)</a></li>
730
731 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (12)</a></li>
732
733 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (17)</a></li>
734
735 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
736
737 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
738
739 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (177)</a></li>
740
741 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (159)</a></li>
742
743 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian-handbook">debian-handbook (8)</a></li>
744
745 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (11)</a></li>
746
747 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (18)</a></li>
748
749 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (29)</a></li>
750
751 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
752
753 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (428)</a></li>
754
755 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
756
757 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (14)</a></li>
758
759 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (34)</a></li>
760
761 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (9)</a></li>
762
763 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (20)</a></li>
764
765 <li><a href="http://people.skolelinux.org/pere/blog/tags/h264">h264 (20)</a></li>
766
767 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (43)</a></li>
768
769 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (16)</a></li>
770
771 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (23)</a></li>
772
773 <li><a href="http://people.skolelinux.org/pere/blog/tags/kodi">kodi (4)</a></li>
774
775 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
776
777 <li><a href="http://people.skolelinux.org/pere/blog/tags/lego">lego (5)</a></li>
778
779 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (8)</a></li>
780
781 <li><a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (2)</a></li>
782
783 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
784
785 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
786
787 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (42)</a></li>
788
789 <li><a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (13)</a></li>
790
791 <li><a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5 (23)</a></li>
792
793 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (319)</a></li>
794
795 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (198)</a></li>
796
797 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (40)</a></li>
798
799 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
800
801 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (75)</a></li>
802
803 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (113)</a></li>
804
805 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (2)</a></li>
806
807 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
808
809 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
810
811 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (3)</a></li>
812
813 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (13)</a></li>
814
815 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
816
817 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (7)</a></li>
818
819 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
820
821 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (59)</a></li>
822
823 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
824
825 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (5)</a></li>
826
827 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (71)</a></li>
828
829 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (7)</a></li>
830
831 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (14)</a></li>
832
833 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (61)</a></li>
834
835 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (5)</a></li>
836
837 <li><a href="http://people.skolelinux.org/pere/blog/tags/usenix">usenix (2)</a></li>
838
839 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (9)</a></li>
840
841 <li><a href="http://people.skolelinux.org/pere/blog/tags/verkidetfri">verkidetfri (19)</a></li>
842
843 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (75)</a></li>
844
845 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
846
847 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (42)</a></li>
848
849 </ul>
850
851
852 </div>
853 <p style="text-align: right">
854 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
855 </p>
856
857 </body>
858 </html>