]> 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="https://people.skolelinux.org/pere/blog/style.css" />
8 <link rel="stylesheet" type="text/css" media="screen" href="https://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="https://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="https://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="https://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="https://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="https://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="https://people.skolelinux.org/pere/blog/tags/dld">dld</a>, <a href="https://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="https://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="https://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="https://people.skolelinux.org/pere/blog/tags/multimedia">multimedia</a>, <a href="https://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="https://people.skolelinux.org/pere/blog/tags/video">video</a>, <a href="https://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="https://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>2023
351 <ul>
352
353 <li><a href="https://people.skolelinux.org/pere/blog/archive/2023/01/">January (3)</a></li>
354
355 <li><a href="https://people.skolelinux.org/pere/blog/archive/2023/02/">February (1)</a></li>
356
357 <li><a href="https://people.skolelinux.org/pere/blog/archive/2023/04/">April (2)</a></li>
358
359 <li><a href="https://people.skolelinux.org/pere/blog/archive/2023/05/">May (3)</a></li>
360
361 <li><a href="https://people.skolelinux.org/pere/blog/archive/2023/06/">June (1)</a></li>
362
363 <li><a href="https://people.skolelinux.org/pere/blog/archive/2023/08/">August (1)</a></li>
364
365 <li><a href="https://people.skolelinux.org/pere/blog/archive/2023/09/">September (1)</a></li>
366
367 <li><a href="https://people.skolelinux.org/pere/blog/archive/2023/10/">October (1)</a></li>
368
369 <li><a href="https://people.skolelinux.org/pere/blog/archive/2023/11/">November (4)</a></li>
370
371 <li><a href="https://people.skolelinux.org/pere/blog/archive/2023/12/">December (1)</a></li>
372
373 </ul></li>
374
375 <li>2022
376 <ul>
377
378 <li><a href="https://people.skolelinux.org/pere/blog/archive/2022/02/">February (1)</a></li>
379
380 <li><a href="https://people.skolelinux.org/pere/blog/archive/2022/03/">March (3)</a></li>
381
382 <li><a href="https://people.skolelinux.org/pere/blog/archive/2022/04/">April (2)</a></li>
383
384 <li><a href="https://people.skolelinux.org/pere/blog/archive/2022/06/">June (2)</a></li>
385
386 <li><a href="https://people.skolelinux.org/pere/blog/archive/2022/07/">July (1)</a></li>
387
388 <li><a href="https://people.skolelinux.org/pere/blog/archive/2022/09/">September (1)</a></li>
389
390 <li><a href="https://people.skolelinux.org/pere/blog/archive/2022/10/">October (1)</a></li>
391
392 <li><a href="https://people.skolelinux.org/pere/blog/archive/2022/12/">December (1)</a></li>
393
394 </ul></li>
395
396 <li>2021
397 <ul>
398
399 <li><a href="https://people.skolelinux.org/pere/blog/archive/2021/01/">January (2)</a></li>
400
401 <li><a href="https://people.skolelinux.org/pere/blog/archive/2021/02/">February (1)</a></li>
402
403 <li><a href="https://people.skolelinux.org/pere/blog/archive/2021/05/">May (1)</a></li>
404
405 <li><a href="https://people.skolelinux.org/pere/blog/archive/2021/06/">June (1)</a></li>
406
407 <li><a href="https://people.skolelinux.org/pere/blog/archive/2021/07/">July (3)</a></li>
408
409 <li><a href="https://people.skolelinux.org/pere/blog/archive/2021/08/">August (1)</a></li>
410
411 <li><a href="https://people.skolelinux.org/pere/blog/archive/2021/09/">September (1)</a></li>
412
413 <li><a href="https://people.skolelinux.org/pere/blog/archive/2021/10/">October (1)</a></li>
414
415 <li><a href="https://people.skolelinux.org/pere/blog/archive/2021/12/">December (1)</a></li>
416
417 </ul></li>
418
419 <li>2020
420 <ul>
421
422 <li><a href="https://people.skolelinux.org/pere/blog/archive/2020/02/">February (2)</a></li>
423
424 <li><a href="https://people.skolelinux.org/pere/blog/archive/2020/03/">March (2)</a></li>
425
426 <li><a href="https://people.skolelinux.org/pere/blog/archive/2020/04/">April (2)</a></li>
427
428 <li><a href="https://people.skolelinux.org/pere/blog/archive/2020/05/">May (3)</a></li>
429
430 <li><a href="https://people.skolelinux.org/pere/blog/archive/2020/06/">June (2)</a></li>
431
432 <li><a href="https://people.skolelinux.org/pere/blog/archive/2020/07/">July (1)</a></li>
433
434 <li><a href="https://people.skolelinux.org/pere/blog/archive/2020/09/">September (1)</a></li>
435
436 <li><a href="https://people.skolelinux.org/pere/blog/archive/2020/10/">October (1)</a></li>
437
438 <li><a href="https://people.skolelinux.org/pere/blog/archive/2020/11/">November (1)</a></li>
439
440 </ul></li>
441
442 <li>2019
443 <ul>
444
445 <li><a href="https://people.skolelinux.org/pere/blog/archive/2019/01/">January (4)</a></li>
446
447 <li><a href="https://people.skolelinux.org/pere/blog/archive/2019/02/">February (3)</a></li>
448
449 <li><a href="https://people.skolelinux.org/pere/blog/archive/2019/03/">March (3)</a></li>
450
451 <li><a href="https://people.skolelinux.org/pere/blog/archive/2019/05/">May (2)</a></li>
452
453 <li><a href="https://people.skolelinux.org/pere/blog/archive/2019/06/">June (5)</a></li>
454
455 <li><a href="https://people.skolelinux.org/pere/blog/archive/2019/07/">July (2)</a></li>
456
457 <li><a href="https://people.skolelinux.org/pere/blog/archive/2019/08/">August (1)</a></li>
458
459 <li><a href="https://people.skolelinux.org/pere/blog/archive/2019/09/">September (1)</a></li>
460
461 <li><a href="https://people.skolelinux.org/pere/blog/archive/2019/11/">November (1)</a></li>
462
463 <li><a href="https://people.skolelinux.org/pere/blog/archive/2019/12/">December (4)</a></li>
464
465 </ul></li>
466
467 <li>2018
468 <ul>
469
470 <li><a href="https://people.skolelinux.org/pere/blog/archive/2018/01/">January (1)</a></li>
471
472 <li><a href="https://people.skolelinux.org/pere/blog/archive/2018/02/">February (5)</a></li>
473
474 <li><a href="https://people.skolelinux.org/pere/blog/archive/2018/03/">March (5)</a></li>
475
476 <li><a href="https://people.skolelinux.org/pere/blog/archive/2018/04/">April (3)</a></li>
477
478 <li><a href="https://people.skolelinux.org/pere/blog/archive/2018/06/">June (2)</a></li>
479
480 <li><a href="https://people.skolelinux.org/pere/blog/archive/2018/07/">July (5)</a></li>
481
482 <li><a href="https://people.skolelinux.org/pere/blog/archive/2018/08/">August (3)</a></li>
483
484 <li><a href="https://people.skolelinux.org/pere/blog/archive/2018/09/">September (3)</a></li>
485
486 <li><a href="https://people.skolelinux.org/pere/blog/archive/2018/10/">October (5)</a></li>
487
488 <li><a href="https://people.skolelinux.org/pere/blog/archive/2018/11/">November (2)</a></li>
489
490 <li><a href="https://people.skolelinux.org/pere/blog/archive/2018/12/">December (4)</a></li>
491
492 </ul></li>
493
494 <li>2017
495 <ul>
496
497 <li><a href="https://people.skolelinux.org/pere/blog/archive/2017/01/">January (4)</a></li>
498
499 <li><a href="https://people.skolelinux.org/pere/blog/archive/2017/02/">February (3)</a></li>
500
501 <li><a href="https://people.skolelinux.org/pere/blog/archive/2017/03/">March (5)</a></li>
502
503 <li><a href="https://people.skolelinux.org/pere/blog/archive/2017/04/">April (2)</a></li>
504
505 <li><a href="https://people.skolelinux.org/pere/blog/archive/2017/06/">June (5)</a></li>
506
507 <li><a href="https://people.skolelinux.org/pere/blog/archive/2017/07/">July (1)</a></li>
508
509 <li><a href="https://people.skolelinux.org/pere/blog/archive/2017/08/">August (1)</a></li>
510
511 <li><a href="https://people.skolelinux.org/pere/blog/archive/2017/09/">September (3)</a></li>
512
513 <li><a href="https://people.skolelinux.org/pere/blog/archive/2017/10/">October (5)</a></li>
514
515 <li><a href="https://people.skolelinux.org/pere/blog/archive/2017/11/">November (3)</a></li>
516
517 <li><a href="https://people.skolelinux.org/pere/blog/archive/2017/12/">December (4)</a></li>
518
519 </ul></li>
520
521 <li>2016
522 <ul>
523
524 <li><a href="https://people.skolelinux.org/pere/blog/archive/2016/01/">January (3)</a></li>
525
526 <li><a href="https://people.skolelinux.org/pere/blog/archive/2016/02/">February (2)</a></li>
527
528 <li><a href="https://people.skolelinux.org/pere/blog/archive/2016/03/">March (3)</a></li>
529
530 <li><a href="https://people.skolelinux.org/pere/blog/archive/2016/04/">April (8)</a></li>
531
532 <li><a href="https://people.skolelinux.org/pere/blog/archive/2016/05/">May (8)</a></li>
533
534 <li><a href="https://people.skolelinux.org/pere/blog/archive/2016/06/">June (2)</a></li>
535
536 <li><a href="https://people.skolelinux.org/pere/blog/archive/2016/07/">July (2)</a></li>
537
538 <li><a href="https://people.skolelinux.org/pere/blog/archive/2016/08/">August (5)</a></li>
539
540 <li><a href="https://people.skolelinux.org/pere/blog/archive/2016/09/">September (2)</a></li>
541
542 <li><a href="https://people.skolelinux.org/pere/blog/archive/2016/10/">October (3)</a></li>
543
544 <li><a href="https://people.skolelinux.org/pere/blog/archive/2016/11/">November (8)</a></li>
545
546 <li><a href="https://people.skolelinux.org/pere/blog/archive/2016/12/">December (5)</a></li>
547
548 </ul></li>
549
550 <li>2015
551 <ul>
552
553 <li><a href="https://people.skolelinux.org/pere/blog/archive/2015/01/">January (7)</a></li>
554
555 <li><a href="https://people.skolelinux.org/pere/blog/archive/2015/02/">February (6)</a></li>
556
557 <li><a href="https://people.skolelinux.org/pere/blog/archive/2015/03/">March (1)</a></li>
558
559 <li><a href="https://people.skolelinux.org/pere/blog/archive/2015/04/">April (4)</a></li>
560
561 <li><a href="https://people.skolelinux.org/pere/blog/archive/2015/05/">May (3)</a></li>
562
563 <li><a href="https://people.skolelinux.org/pere/blog/archive/2015/06/">June (4)</a></li>
564
565 <li><a href="https://people.skolelinux.org/pere/blog/archive/2015/07/">July (6)</a></li>
566
567 <li><a href="https://people.skolelinux.org/pere/blog/archive/2015/08/">August (2)</a></li>
568
569 <li><a href="https://people.skolelinux.org/pere/blog/archive/2015/09/">September (2)</a></li>
570
571 <li><a href="https://people.skolelinux.org/pere/blog/archive/2015/10/">October (9)</a></li>
572
573 <li><a href="https://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
574
575 <li><a href="https://people.skolelinux.org/pere/blog/archive/2015/12/">December (3)</a></li>
576
577 </ul></li>
578
579 <li>2014
580 <ul>
581
582 <li><a href="https://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
583
584 <li><a href="https://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
585
586 <li><a href="https://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
587
588 <li><a href="https://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
589
590 <li><a href="https://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
591
592 <li><a href="https://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
593
594 <li><a href="https://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
595
596 <li><a href="https://people.skolelinux.org/pere/blog/archive/2014/08/">August (2)</a></li>
597
598 <li><a href="https://people.skolelinux.org/pere/blog/archive/2014/09/">September (5)</a></li>
599
600 <li><a href="https://people.skolelinux.org/pere/blog/archive/2014/10/">October (6)</a></li>
601
602 <li><a href="https://people.skolelinux.org/pere/blog/archive/2014/11/">November (3)</a></li>
603
604 <li><a href="https://people.skolelinux.org/pere/blog/archive/2014/12/">December (5)</a></li>
605
606 </ul></li>
607
608 <li>2013
609 <ul>
610
611 <li><a href="https://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
612
613 <li><a href="https://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
614
615 <li><a href="https://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
616
617 <li><a href="https://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
618
619 <li><a href="https://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
620
621 <li><a href="https://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
622
623 <li><a href="https://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
624
625 <li><a href="https://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
626
627 <li><a href="https://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
628
629 <li><a href="https://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
630
631 <li><a href="https://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
632
633 <li><a href="https://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
634
635 </ul></li>
636
637 <li>2012
638 <ul>
639
640 <li><a href="https://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
641
642 <li><a href="https://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
643
644 <li><a href="https://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
645
646 <li><a href="https://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
647
648 <li><a href="https://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
649
650 <li><a href="https://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
651
652 <li><a href="https://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
653
654 <li><a href="https://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
655
656 <li><a href="https://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
657
658 <li><a href="https://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
659
660 <li><a href="https://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
661
662 <li><a href="https://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
663
664 </ul></li>
665
666 <li>2011
667 <ul>
668
669 <li><a href="https://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
670
671 <li><a href="https://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
672
673 <li><a href="https://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
674
675 <li><a href="https://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
676
677 <li><a href="https://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
678
679 <li><a href="https://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
680
681 <li><a href="https://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
682
683 <li><a href="https://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
684
685 <li><a href="https://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
686
687 <li><a href="https://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
688
689 <li><a href="https://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
690
691 <li><a href="https://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
692
693 </ul></li>
694
695 <li>2010
696 <ul>
697
698 <li><a href="https://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
699
700 <li><a href="https://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
701
702 <li><a href="https://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
703
704 <li><a href="https://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
705
706 <li><a href="https://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
707
708 <li><a href="https://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
709
710 <li><a href="https://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
711
712 <li><a href="https://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
713
714 <li><a href="https://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
715
716 <li><a href="https://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
717
718 <li><a href="https://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
719
720 <li><a href="https://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
721
722 </ul></li>
723
724 <li>2009
725 <ul>
726
727 <li><a href="https://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
728
729 <li><a href="https://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
730
731 <li><a href="https://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
732
733 <li><a href="https://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
734
735 <li><a href="https://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
736
737 <li><a href="https://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
738
739 <li><a href="https://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
740
741 <li><a href="https://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
742
743 <li><a href="https://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
744
745 <li><a href="https://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
746
747 <li><a href="https://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
748
749 <li><a href="https://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
750
751 </ul></li>
752
753 <li>2008
754 <ul>
755
756 <li><a href="https://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
757
758 <li><a href="https://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
759
760 </ul></li>
761
762 </ul>
763
764
765
766 <h2>Tags</h2>
767 <ul>
768
769 <li><a href="https://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (19)</a></li>
770
771 <li><a href="https://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
772
773 <li><a href="https://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
774
775 <li><a href="https://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
776
777 <li><a href="https://people.skolelinux.org/pere/blog/tags/betalkontant">betalkontant (9)</a></li>
778
779 <li><a href="https://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (12)</a></li>
780
781 <li><a href="https://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (17)</a></li>
782
783 <li><a href="https://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
784
785 <li><a href="https://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (3)</a></li>
786
787 <li><a href="https://people.skolelinux.org/pere/blog/tags/debian">debian (197)</a></li>
788
789 <li><a href="https://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (159)</a></li>
790
791 <li><a href="https://people.skolelinux.org/pere/blog/tags/debian-handbook">debian-handbook (9)</a></li>
792
793 <li><a href="https://people.skolelinux.org/pere/blog/tags/digistan">digistan (11)</a></li>
794
795 <li><a href="https://people.skolelinux.org/pere/blog/tags/dld">dld (18)</a></li>
796
797 <li><a href="https://people.skolelinux.org/pere/blog/tags/docbook">docbook (32)</a></li>
798
799 <li><a href="https://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
800
801 <li><a href="https://people.skolelinux.org/pere/blog/tags/english">english (455)</a></li>
802
803 <li><a href="https://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
804
805 <li><a href="https://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (14)</a></li>
806
807 <li><a href="https://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (34)</a></li>
808
809 <li><a href="https://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (9)</a></li>
810
811 <li><a href="https://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (20)</a></li>
812
813 <li><a href="https://people.skolelinux.org/pere/blog/tags/h264">h264 (20)</a></li>
814
815 <li><a href="https://people.skolelinux.org/pere/blog/tags/intervju">intervju (43)</a></li>
816
817 <li><a href="https://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (16)</a></li>
818
819 <li><a href="https://people.skolelinux.org/pere/blog/tags/kart">kart (23)</a></li>
820
821 <li><a href="https://people.skolelinux.org/pere/blog/tags/kodi">kodi (6)</a></li>
822
823 <li><a href="https://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
824
825 <li><a href="https://people.skolelinux.org/pere/blog/tags/lego">lego (5)</a></li>
826
827 <li><a href="https://people.skolelinux.org/pere/blog/tags/lenker">lenker (8)</a></li>
828
829 <li><a href="https://people.skolelinux.org/pere/blog/tags/linuxcnc">linuxcnc (5)</a></li>
830
831 <li><a href="https://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (2)</a></li>
832
833 <li><a href="https://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
834
835 <li><a href="https://people.skolelinux.org/pere/blog/tags/madewithcc">madewithcc (3)</a></li>
836
837 <li><a href="https://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
838
839 <li><a href="https://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (46)</a></li>
840
841 <li><a href="https://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (15)</a></li>
842
843 <li><a href="https://people.skolelinux.org/pere/blog/tags/noark5">noark5 (24)</a></li>
844
845 <li><a href="https://people.skolelinux.org/pere/blog/tags/norsk">norsk (323)</a></li>
846
847 <li><a href="https://people.skolelinux.org/pere/blog/tags/nuug">nuug (198)</a></li>
848
849 <li><a href="https://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (40)</a></li>
850
851 <li><a href="https://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
852
853 <li><a href="https://people.skolelinux.org/pere/blog/tags/opensnitch">opensnitch (4)</a></li>
854
855 <li><a href="https://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (75)</a></li>
856
857 <li><a href="https://people.skolelinux.org/pere/blog/tags/personvern">personvern (114)</a></li>
858
859 <li><a href="https://people.skolelinux.org/pere/blog/tags/raid">raid (2)</a></li>
860
861 <li><a href="https://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
862
863 <li><a href="https://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
864
865 <li><a href="https://people.skolelinux.org/pere/blog/tags/rfid">rfid (3)</a></li>
866
867 <li><a href="https://people.skolelinux.org/pere/blog/tags/robot">robot (17)</a></li>
868
869 <li><a href="https://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
870
871 <li><a href="https://people.skolelinux.org/pere/blog/tags/ruter">ruter (7)</a></li>
872
873 <li><a href="https://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
874
875 <li><a href="https://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (60)</a></li>
876
877 <li><a href="https://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
878
879 <li><a href="https://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (5)</a></li>
880
881 <li><a href="https://people.skolelinux.org/pere/blog/tags/standard">standard (75)</a></li>
882
883 <li><a href="https://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (7)</a></li>
884
885 <li><a href="https://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (14)</a></li>
886
887 <li><a href="https://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (65)</a></li>
888
889 <li><a href="https://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (5)</a></li>
890
891 <li><a href="https://people.skolelinux.org/pere/blog/tags/usenix">usenix (2)</a></li>
892
893 <li><a href="https://people.skolelinux.org/pere/blog/tags/valg">valg (9)</a></li>
894
895 <li><a href="https://people.skolelinux.org/pere/blog/tags/verkidetfri">verkidetfri (21)</a></li>
896
897 <li><a href="https://people.skolelinux.org/pere/blog/tags/video">video (80)</a></li>
898
899 <li><a href="https://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
900
901 <li><a href="https://people.skolelinux.org/pere/blog/tags/web">web (42)</a></li>
902
903 </ul>
904
905
906 </div>
907 <p style="text-align: right">
908 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
909 </p>
910
911 </body>
912 </html>