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">
5 <meta http-equiv=
"Content-Type" content=
"text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen
</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=
"http://people.skolelinux.org/pere/blog/index.rss" type=
"application/rss+xml" />
14 <a href=
"http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen
</a>
23 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html">Idea for storing trusted timestamps in a Noark
5 archive
</a></div>
24 <div class=
"date"> 7th June
2017</div>
25 <div class=
"body"><p><em>This is a copy of
26 <a href=
"https://lists.nuug.no/pipermail/nikita-noark/2017-June/000297.html">an
27 email I posted to the nikita-noark mailing list
</a>. Please follow up
28 there if you would like to discuss this topic. The background is that
29 we are making a free software archive system based on the Norwegian
30 <a href=
"https://www.arkivverket.no/forvaltning-og-utvikling/regelverk-og-standarder/noark-standarden">Noark
31 5 standard
</a> for government archives.
</em></p>
33 <p>I've been wondering a bit lately how trusted timestamps could be
35 <a href=
"https://en.wikipedia.org/wiki/Trusted_timestamping">Trusted
36 timestamps
</a> can be used to verify that some information
37 (document/file/checksum/metadata) have not been changed since a
38 specific time in the past. This is useful to verify the integrity of
39 the documents in the archive.
</p>
41 <p>Then it occured to me, perhaps the trusted timestamps could be
42 stored as dokument variants (ie dokumentobjekt referered to from
43 dokumentbeskrivelse) with the filename set to the hash it is
46 <p>Given a "dokumentbeskrivelse" with an associated "dokumentobjekt",
47 a new dokumentobjekt is associated with "dokumentbeskrivelse" with the
48 same attributes as the stamped dokumentobjekt except these
53 <li>format -
> "RFC3161"
54 <li>mimeType -
> "application/timestamp-reply"
55 <li>formatDetaljer -
> "<source URL for timestamp service>"
56 <li>filenavn -
> "<sjekksum>.tsr"
60 <p>This assume a service following
61 <a href=
"https://tools.ietf.org/html/rfc3161">IETF RFC
3161</a> is
62 used, which specifiy the given MIME type for replies and the .tsr file
63 ending for the content of such trusted timestamp. As far as I can
64 tell from the Noark
5 specifications, it is OK to have several
65 variants/renderings of a dokument attached to a given
66 dokumentbeskrivelse objekt. It might be stretching it a bit to make
67 some of these variants represent crypto-signatures useful for
68 verifying the document integrity instead of representing the dokument
71 <p>Using the source of the service in formatDetaljer allow several
72 timestamping services to be used. This is useful to spread the risk
73 of key compromise over several organisations. It would only be a
74 problem to trust the timestamps if all of the organisations are
77 <p>The following oneliner on Linux can be used to generate the tsr
78 file. $input is the path to the file to checksum, and $sha256 is the
79 SHA-
256 checksum of the file (ie the "
<sjekksum>.tsr" value mentioned
83 openssl ts -query -data "$inputfile" -cert -sha256 -no_nonce \
84 | curl -s -H "Content-Type: application/timestamp-query" \
85 --data-binary "@-" http://zeitstempel.dfn.de
> $sha256.tsr
86 </pre></blockquote></p>
88 <p>To verify the timestamp, you first need to download the public key
89 of the trusted timestamp service, for example using this command:
</p>
93 https://pki.pca.dfn.de/global-services-ca/pub/cacert/chain.txt
94 </pre></blockquote></p>
96 <p>Note, the public key should be stored alongside the timestamps in
97 the archive to make sure it is also available
100 years from now. It
98 is probably a good idea to standardise how and were to store such
99 public keys, to make it easier to find for those trying to verify
100 documents
100 or
1000 years from now. :)
</p>
102 <p>The verification itself is a simple openssl command:
</p>
105 openssl ts -verify -data $inputfile -in $sha256.tsr \
106 -CAfile ca-cert.txt -text
107 </pre></blockquote></p>
109 <p>Is there any reason this approach would not work? Is it somehow against
110 the Noark
5 specification?
</p>
115 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard
</a>.
120 <div class=
"padding"></div>
123 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/N_r_nynorskoversettelsen_svikter_til_eksamen___.html">Når nynorskoversettelsen svikter til eksamen...
</a></div>
124 <div class=
"date"> 3rd June
2017</div>
125 <div class=
"body"><p><a href=
"http://www.aftenposten.no/norge/Krever-at-elever-ma-fa-annullert-eksamen-etter-rot-med-oppgavetekster-622459b.html">Aftenposten
126 melder i dag
</a> om feil i eksamensoppgavene for eksamen i politikk og
127 menneskerettigheter, der teksten i bokmåls og nynorskutgaven ikke var
128 like. Oppgaveteksten er gjengitt i artikkelen, og jeg ble nysgjerring
129 på om den fri oversetterløsningen
130 <a href=
"https://www.apertium.org/">Apertium
</a> ville gjort en bedre
131 jobb enn Utdanningsdirektoratet. Det kan se slik ut.
</p>
133 <p>Her er bokmålsoppgaven fra eksamenen:
</p>
136 <p>Drøft utfordringene knyttet til nasjonalstatenes og andre aktørers
137 rolle og muligheter til å håndtere internasjonale utfordringer, som
138 for eksempel flykningekrisen.
</p>
140 <p>Vedlegge er eksempler på tekster som kan gi relevante perspektiver
143 <li>Flykningeregnskapet
2016, UNHCR og IDMC
144 <li>«Grenseløst Europa for fall» A-Magasinet,
26. november
2015
149 <p>Dette oversetter Apertium slik:
</p>
152 <p>Drøft utfordringane knytte til nasjonalstatane sine og rolla til
153 andre aktørar og høve til å handtera internasjonale utfordringar, som
154 til dømes *flykningekrisen.
</p>
156 <p>Vedleggja er døme på tekster som kan gje relevante perspektiv på
160 <li>*Flykningeregnskapet
2016, *UNHCR og *IDMC
</li>
161 <li>«*Grenseløst Europa for fall» A-Magasinet,
26. november
2015</li>
166 <p>Ord som ikke ble forstått er markert med stjerne (*), og trenger
167 ekstra språksjekk. Men ingen ord er forsvunnet, slik det var i
168 oppgaven elevene fikk presentert på eksamen. Jeg mistenker dog at
169 "andre aktørers rolle og muligheter til ..." burde vært oversatt til
170 "rolla til andre aktørar og deira høve til ..." eller noe slikt, men
171 det er kanskje flisespikking. Det understreker vel bare at det alltid
172 trengs korrekturlesning etter automatisk oversettelse.
</p>
177 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll
</a>.
182 <div class=
"padding"></div>
185 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Epost_inn_som_arkivformat_i_Riksarkivarens_forskrift_.html">Epost inn som arkivformat i Riksarkivarens forskrift?
</a></div>
186 <div class=
"date">27th April
2017</div>
187 <div class=
"body"><p>I disse dager, med frist
1. mai, har Riksarkivaren ute en høring på
188 sin forskrift. Som en kan se er det ikke mye tid igjen før fristen
189 som går ut på søndag. Denne forskriften er det som lister opp hvilke
190 formater det er greit å arkivere i
191 <a href=
"http://www.arkivverket.no/arkivverket/Offentleg-forvalting/Noark/Noark-5">Noark
192 5-løsninger
</a> i Norge.
</p>
194 <p>Jeg fant høringsdokumentene hos
195 <a href=
"https://www.arkivrad.no/aktuelt/riksarkivarens-forskrift-pa-horing">Norsk
196 Arkivråd
</a> etter å ha blitt tipset på epostlisten til
197 <a href=
"https://github.com/hiOA-ABI/nikita-noark5-core">fri
198 programvareprosjektet Nikita Noark5-Core
</a>, som lager et Noark
5
199 Tjenestegresesnitt. Jeg er involvert i Nikita-prosjektet og takket
200 være min interesse for tjenestegrensesnittsprosjektet har jeg lest en
201 god del Noark
5-relaterte dokumenter, og til min overraskelse oppdaget
202 at standard epost ikke er på listen over godkjente formater som kan
203 arkiveres. Høringen med frist søndag er en glimrende mulighet til å
204 forsøke å gjøre noe med det. Jeg holder på med
205 <a href=
"https://github.com/petterreinholdtsen/noark5-tester/blob/master/docs/hoering-arkivforskrift.tex">egen
206 høringsuttalelse
</a>, og lurer på om andre er interessert i å støtte
207 forslaget om å tillate arkivering av epost som epost i arkivet.
</p>
209 <p>Er du igang med å skrive egen høringsuttalelse allerede? I så fall
210 kan du jo vurdere å ta med en formulering om epost-lagring. Jeg tror
211 ikke det trengs så mye. Her et kort forslag til tekst:
</p>
215 <p>Viser til høring sendt ut
2017-
02-
17 (Riksarkivarens referanse
216 2016/
9840 HELHJO), og tillater oss å sende inn noen innspill om
217 revisjon av Forskrift om utfyllende tekniske og arkivfaglige
218 bestemmelser om behandling av offentlige arkiver (Riksarkivarens
221 <p>Svært mye av vår kommuikasjon foregår i dag på e-post. Vi
222 foreslår derfor at Internett-e-post, slik det er beskrevet i IETF
224 <a href=
"https://tools.ietf.org/html/rfc5322">https://tools.ietf.org/html/rfc5322
</a>. bør
225 inn som godkjent dokumentformat. Vi foreslår at forskriftens
226 oversikt over godkjente dokumentformater ved innlevering i §
5-
16
227 endres til å ta med Internett-e-post.
</p>
231 <p>Som del av arbeidet med tjenestegrensesnitt har vi testet hvordan
232 epost kan lagres i en Noark
5-struktur, og holder på å skrive et
233 forslag om hvordan dette kan gjøres som vil bli sendt over til
234 arkivverket så snart det er ferdig. De som er interesserte kan
235 <a href=
"https://github.com/petterreinholdtsen/noark5-tester/blob/master/docs/epostlagring.md">følge
236 fremdriften på web
</a>.
</p>
238 <p>Oppdatering
2017-
04-
28: I dag ble høringuttalelsen jeg skrev
239 <a href=
"https://www.nuug.no/news/NUUGs_h_ringuttalelse_til_Riksarkivarens_forskrift.shtml">sendt
240 inn av foreningen NUUG
</a>.
</p>
245 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard
</a>.
250 <div class=
"padding"></div>
253 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Offentlig_elektronisk_postjournal_blokkerer_tilgang_for_utvalgte_webklienter.html">Offentlig elektronisk postjournal blokkerer tilgang for utvalgte webklienter
</a></div>
254 <div class=
"date">20th April
2017</div>
255 <div class=
"body"><p>Jeg oppdaget i dag at
<a href=
"https://www.oep.no/">nettstedet som
256 publiserer offentlige postjournaler fra statlige etater
</a>, OEP, har
257 begynt å blokkerer enkelte typer webklienter fra å få tilgang. Vet
258 ikke hvor mange det gjelder, men det gjelder i hvert fall libwww-perl
259 og curl. For å teste selv, kjør følgende:
</p>
262 % curl -v -s https://www.oep.no/pub/report.xhtml?reportId=
3 2>&
1 |grep '< HTTP'
263 < HTTP/
1.1 404 Not Found
264 % curl -v -s --header 'User-Agent:Opera/
12.0' https://www.oep.no/pub/report.xhtml?reportId=
3 2>&
1 |grep '< HTTP'
269 <p>Her kan en se at tjenesten gir «
404 Not Found» for curl i
270 standardoppsettet, mens den gir «
200 OK» hvis curl hevder å være Opera
271 versjon
12.0. Offentlig elektronisk postjournal startet blokkeringen
274 <p>Blokkeringen vil gjøre det litt vanskeligere å maskinelt hente
275 informasjon fra oep.no. Kan blokkeringen være gjort for å hindre
276 automatisert innsamling av informasjon fra OEP, slik Pressens
277 Offentlighetsutvalg gjorde for å dokumentere hvordan departementene
279 <a href=
"http://presse.no/dette-mener-np/undergraver-offentlighetsloven/">rapporten
280 «Slik hindrer departementer innsyn» som ble publiserte i januar
281 2017</a>. Det virker usannsynlig, da det jo er trivielt å bytte
282 User-Agent til noe nytt.
</p>
284 <p>Finnes det juridisk grunnlag for det offentlige å diskriminere
285 webklienter slik det gjøres her? Der tilgang gis eller ikke alt etter
286 hva klienten sier at den heter? Da OEP eies av DIFI og driftes av
287 Basefarm, finnes det kanskje noen dokumenter sendt mellom disse to
288 aktørene man kan be om innsyn i for å forstå hva som har skjedd. Men
289 <a href=
"https://www.oep.no/search/result.html?period=dateRange&fromDate=01.01.2016&toDate=01.04.2017&dateType=documentDate&caseDescription=&descType=both&caseNumber=&documentNumber=&sender=basefarm&senderType=both&documentType=all&legalAuthority=&archiveCode=&list2=196&searchType=advanced&Search=Search+in+records">postjournalen
290 til DIFI viser kun to dokumenter
</a> det siste året mellom DIFI og
292 <a href=
"https://www.mimesbronn.no/request/blokkering_av_tilgang_til_oep_fo">Mimes brønn neste
</a>,
298 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn
</a>.
303 <div class=
"padding"></div>
306 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Free_software_archive_system_Nikita_now_able_to_store_documents.html">Free software archive system Nikita now able to store documents
</a></div>
307 <div class=
"date">19th March
2017</div>
308 <div class=
"body"><p>The
<a href=
"https://github.com/hiOA-ABI/nikita-noark5-core">Nikita
309 Noark
5 core project
</a> is implementing the Norwegian standard for
310 keeping an electronic archive of government documents.
311 <a href=
"http://www.arkivverket.no/arkivverket/Offentlig-forvaltning/Noark/Noark-5/English-version">The
312 Noark
5 standard
</a> document the requirement for data systems used by
313 the archives in the Norwegian government, and the Noark
5 web interface
314 specification document a REST web service for storing, searching and
315 retrieving documents and metadata in such archive. I've been involved
316 in the project since a few weeks before Christmas, when the Norwegian
318 <a href=
"https://www.nuug.no/news/NOARK5_kjerne_som_fri_programvare_f_r_epostliste_hos_NUUG.shtml">announced
319 it supported the project
</a>. I believe this is an important project,
320 and hope it can make it possible for the government archives in the
321 future to use free software to keep the archives we citizens depend
322 on. But as I do not hold such archive myself, personally my first use
323 case is to store and analyse public mail journal metadata published
324 from the government. I find it useful to have a clear use case in
325 mind when developing, to make sure the system scratches one of my
328 <p>If you would like to help make sure there is a free software
329 alternatives for the archives, please join our IRC channel
330 (
<a href=
"irc://irc.freenode.net/%23nikita"">#nikita on
331 irc.freenode.net</a>) and
332 <a href="https://lists.nuug.no/mailman/listinfo/nikita-noark
">the
333 project mailing list</a>.</p>
335 <p>When I got involved, the web service could store metadata about
336 documents. But a few weeks ago, a new milestone was reached when it
337 became possible to store full text documents too. Yesterday, I
338 completed an implementation of a command line tool
339 <tt>archive-pdf</tt> to upload a PDF file to the archive using this
340 API. The tool is very simple at the moment, and find existing
341 <a href="https://en.wikipedia.org/wiki/Fonds
">fonds</a>, series and
342 files while asking the user to select which one to use if more than
343 one exist. Once a file is identified, the PDF is associated with the
344 file and uploaded, using the title extracted from the PDF itself. The
345 process is fairly similar to visiting the archive, opening a cabinet,
346 locating a file and storing a piece of paper in the archive. Here is
347 a test run directly after populating the database with test data using
351 ~/src//noark5-tester$ ./archive-pdf mangelmelding/mangler.pdf
352 using arkiv: Title of the test fonds created 2017-03-18T23:49:32.103446
353 using arkivdel: Title of the test series created 2017-03-18T23:49:32.103446
355 0 - Title of the test case file created 2017-03-18T23:49:32.103446
356 1 - Title of the test file created 2017-03-18T23:49:32.103446
357 Select which mappe you want (or search term): 0
358 Uploading mangelmelding/mangler.pdf
359 PDF title: Mangler i spesifikasjonsdokumentet for NOARK 5 Tjenestegrensesnitt
360 File 2017/1: Title of the test case file created 2017-03-18T23:49:32.103446
361 ~/src//noark5-tester$
362 </pre></blockquote></p>
364 <p>You can see here how the fonds (arkiv) and serie (arkivdel) only had
365 one option, while the user need to choose which file (mappe) to use
366 among the two created by the API tester. The <tt>archive-pdf</tt>
367 tool can be found in the git repository for the API tester.</p>
369 <p>In the project, I have been mostly working on
370 <a href="https://github.com/petterreinholdtsen/noark5-tester
">the API
371 tester</a> so far, while getting to know the code base. The API
373 <a href="https://en.wikipedia.org/wiki/HATEOAS
">the HATEOAS links</a>
374 to traverse the entire exposed service API and verify that the exposed
375 operations and objects match the specification, as well as trying to
376 create objects holding metadata and uploading a simple XML file to
377 store. The tester has proved very useful for finding flaws in our
378 implementation, as well as flaws in the reference site and the
381 <p>The test document I uploaded is a summary of all the specification
382 defects we have collected so far while implementing the web service.
383 There are several unclear and conflicting parts of the specification,
385 <a href="https://github.com/petterreinholdtsen/noark5-tester/tree/master/mangelmelding
">started
386 writing down</a> the questions we get from implementing it. We use a
387 format inspired by how <a href="http://www.opengroup.org/austin/
">The
388 Austin Group</a> collect defect reports for the POSIX standard with
389 <a href="http://www.opengroup.org/austin/mantis.html
">their
390 instructions for the MANTIS defect tracker system</a>, in lack of an official way to structure defect reports for Noark 5 (our first submitted defect report was a <a href="https://github.com/petterreinholdtsen/noark5-tester/blob/master/mangelmelding/sendt/
2017-
03-
15-mangel-prosess.md
">request for a procedure for submitting defect reports</a> :).
392 <p>The Nikita project is implemented using Java and Spring, and is
393 fairly easy to get up and running using Docker containers for those
394 that want to test the current code base. The API tester is
395 implemented in Python.</p>
400 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english
">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug
">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn
">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard
">standard</a>.
405 <div class="padding
"></div>
408 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/Detecting_NFS_hangs_on_Linux_without_hanging_yourself___.html
">Detecting NFS hangs on Linux without hanging yourself...</a></div>
409 <div class="date
"> 9th March 2017</div>
410 <div class="body
"><p>Over the years, administrating thousand of NFS mounting linux
411 computers at the time, I often needed a way to detect if the machine
412 was experiencing NFS hang. If you try to use <tt>df</tt> or look at a
413 file or directory affected by the hang, the process (and possibly the
414 shell) will hang too. So you want to be able to detect this without
415 risking the detection process getting stuck too. It has not been
416 obvious how to do this. When the hang has lasted a while, it is
417 possible to find messages like these in dmesg:</p>
420 nfs: server nfsserver not responding, still trying
421 <br>nfs: server nfsserver OK
424 <p>It is hard to know if the hang is still going on, and it is hard to
425 be sure looking in dmesg is going to work. If there are lots of other
426 messages in dmesg the lines might have rotated out of site before they
429 <p>While reading through the nfs client implementation in linux kernel
430 code, I came across some statistics that seem to give a way to detect
431 it. The om_timeouts sunrpc value in the kernel will increase every
432 time the above log entry is inserted into dmesg. And after digging a
433 bit further, I discovered that this value show up in
434 /proc/self/mountstats on Linux.</p>
436 <p>The mountstats content seem to be shared between files using the
437 same file system context, so it is enough to check one of the
438 mountstats files to get the state of the mount point for the machine.
439 I assume this will not show lazy umounted NFS points, nor NFS mount
440 points in a different process context (ie with a different filesystem
441 view), but that does not worry me.</p>
443 <p>The content for a NFS mount point look similar to this:</p>
447 device /dev/mapper/Debian-var mounted on /var with fstype ext3
448 device nfsserver:/mnt/nfsserver/home0 mounted on /mnt/nfsserver/home0 with fstype nfs statvers=1.1
449 opts: rw,vers=3,rsize=65536,wsize=65536,namlen=255,acregmin=3,acregmax=60,acdirmin=30,acdirmax=60,soft,nolock,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=129.240.3.145,mountvers=3,mountport=4048,mountproto=udp,local_lock=all
451 caps: caps=0x3fe7,wtmult=4096,dtsize=8192,bsize=0,namlen=255
452 sec: flavor=1,pseudoflavor=1
453 events: 61063112 732346265 1028140 35486205 16220064 8162542 761447191 71714012 37189 3891185 45561809 110486139 4850138 420353 15449177 296502 52736725 13523379 0 52182 9016896 1231 0 0 0 0 0
454 bytes: 166253035039 219519120027 0 0 40783504807 185466229638 11677877 45561809
455 RPC iostats version: 1.0 p/v: 100003/3 (nfs)
456 xprt: tcp 925 1 6810 0 0 111505412 111480497 109 2672418560317 0 248 53869103 22481820
458 NULL: 0 0 0 0 0 0 0 0
459 GETATTR: 61063106 61063108 0 9621383060 6839064400 453650 77291321 78926132
460 SETATTR: 463469 463470 0 92005440 66739536 63787 603235 687943
461 LOOKUP: 17021657 17021657 0 3354097764 4013442928 57216 35125459 35566511
462 ACCESS: 14281703 14290009 5 2318400592 1713803640 1709282 4865144 7130140
463 READLINK: 125 125 0 20472 18620 0 1112 1118
464 READ: 4214236 4214237 0 715608524 41328653212 89884 22622768 22806693
465 WRITE: 8479010 8494376 22 187695798568 1356087148 178264904 51506907 231671771
466 CREATE: 171708 171708 0 38084748 46702272 873 1041833 1050398
467 MKDIR: 3680 3680 0 773980 993920 26 23990 24245
468 SYMLINK: 903 903 0 233428 245488 6 5865 5917
469 MKNOD: 80 80 0 20148 21760 0 299 304
470 REMOVE: 429921 429921 0 79796004 61908192 3313 2710416 2741636
471 RMDIR: 3367 3367 0 645112 484848 22 5782 6002
472 RENAME: 466201 466201 0 130026184 121212260 7075 5935207 5961288
473 LINK: 289155 289155 0 72775556 67083960 2199 2565060 2585579
474 READDIR: 2933237 2933237 0 516506204 13973833412 10385 3190199 3297917
475 READDIRPLUS: 1652839 1652839 0 298640972 6895997744 84735 14307895 14448937
476 FSSTAT: 6144 6144 0 1010516 1032192 51 9654 10022
477 FSINFO: 2 2 0 232 328 0 1 1
478 PATHCONF: 1 1 0 116 140 0 0 0
479 COMMIT: 0 0 0 0 0 0 0 0
481 device binfmt_misc mounted on /proc/sys/fs/binfmt_misc with fstype binfmt_misc
483 </pre></blockquote></p>
485 <p>The key number to look at is the third number in the per-op list.
486 It is the number of NFS timeouts experiences per file system
487 operation. Here 22 write timeouts and 5 access timeouts. If these
488 numbers are increasing, I believe the machine is experiencing NFS
489 hang. Unfortunately the timeout value do not start to increase right
490 away. The NFS operations need to time out first, and this can take a
491 while. The exact timeout value depend on the setup. For example the
492 defaults for TCP and UDP mount points are quite different, and the
493 timeout value is affected by the soft, hard, timeo and retrans NFS
496 <p>The only way I have been able to get working on Debian and RedHat
497 Enterprise Linux for getting the timeout count is to peek in /proc/.
499 <ahref="http://docs.oracle.com/cd/E19253-
01/
816-
4555/netmonitor-
12/index.html
">Solaris
500 10 System Administration Guide: Network Services</a>, the 'nfsstat -c'
501 command can be used to get these timeout values. But this do not work
502 on Linux, as far as I can tell. I
503 <ahref="http://bugs.debian.org/
857043">asked Debian about this</a>,
504 but have not seen any replies yet.</p>
506 <p>Is there a better way to figure out if a Linux NFS client is
507 experiencing NFS hangs? Is there a way to detect which processes are
508 affected? Is there a way to get the NFS mount going quickly once the
509 network problem causing the NFS hang has been cleared? I would very
510 much welcome some clues, as we regularly run into NFS hangs.</p>
515 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>, <a href="http://people.skolelinux.org/pere/blog/tags/sysadmin
">sysadmin</a>.
520 <div class="padding
"></div>
523 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/How_does_it_feel_to_be_wiretapped__when_you_should_be_doing_the_wiretapping___.html
">How does it feel to be wiretapped, when you should be doing the wiretapping...</a></div>
524 <div class="date
"> 8th March 2017</div>
525 <div class="body
"><p>So the new president in the United States of America claim to be
526 surprised to discover that he was wiretapped during the election
527 before he was elected president. He even claim this must be illegal.
528 Well, doh, if it is one thing the confirmations from Snowden
529 documented, it is that the entire population in USA is wiretapped, one
530 way or another. Of course the president candidates were wiretapped,
531 alongside the senators, judges and the rest of the people in USA.</p>
533 <p>Next, the Federal Bureau of Investigation ask the Department of
534 Justice to go public rejecting the claims that Donald Trump was
535 wiretapped illegally. I fail to see the relevance, given that I am
536 sure the surveillance industry in USA believe they have all the legal
537 backing they need to conduct mass surveillance on the entire
540 <p>There is even the director of the FBI stating that he never saw an
541 order requesting wiretapping of Donald Trump. That is not very
542 surprising, given how the FISA court work, with all its activity being
543 secret. Perhaps he only heard about it?</p>
545 <p>What I find most sad in this story is how Norwegian journalists
546 present it. In a news reports the other day in the radio from the
547 Norwegian National broadcasting Company (NRK), I heard the journalist
548 claim that 'the FBI denies any wiretapping', while the reality is that
549 'the FBI denies any illegal wiretapping'. There is a fundamental and
550 important difference, and it make me sad that the journalists are
551 unable to grasp it.</p>
553 <p><strong>Update 2017-03-13:</strong> Look like
554 <a href="https://theintercept.com/
2017/
03/
13/rand-paul-is-right-nsa-routinely-monitors-americans-communications-without-warrants/
">The
555 Intercept report that US Senator Rand Paul confirm what I state above</a>.</p>
560 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english
">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/surveillance
">surveillance</a>.
565 <div class="padding
"></div>
568 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/Norwegian_Bokm_l_translation_of_The_Debian_Administrator_s_Handbook_complete__proofreading_in_progress.html
">Norwegian Bokmål translation of The Debian Administrator's Handbook complete, proofreading in progress</a></div>
569 <div class="date
"> 3rd March 2017</div>
570 <div class="body
"><p>For almost a year now, we have been working on making a Norwegian
571 Bokmål edition of <a href="https://debian-handbook.info/
">The Debian
572 Administrator's Handbook</a>. Now, thanks to the tireless effort of
573 Ole-Erik, Ingrid and Andreas, the initial translation is complete, and
574 we are working on the proof reading to ensure consistent language and
575 use of correct computer science terms. The plan is to make the book
576 available on paper, as well as in electronic form. For that to
577 happen, the proof reading must be completed and all the figures need
578 to be translated. If you want to help out, get in touch.</p>
580 <p><a href="http://people.skolelinux.org/pere/debian-handbook/debian-handbook-nb-NO.pdf
">A
582 fresh PDF edition</a> in A4 format (the final book will have smaller
583 pages) of the book created every morning is available for
584 proofreading. If you find any errors, please
585 <a href="https://hosted.weblate.org/projects/debian-handbook/
">visit
586 Weblate and correct the error</a>. The
587 <a href="http://l.github.io/debian-handbook/stat/nb-NO/index.html
">state
588 of the translation including figures</a> is a useful source for those
589 provide Norwegian bokmål screen shots and figures.</p>
594 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian
">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/debian-handbook
">debian-handbook</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english
">english</a>.
599 <div class="padding
"></div>
602 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/Unlimited_randomness_with_the_ChaosKey_.html
">Unlimited randomness with the ChaosKey?</a></div>
603 <div class="date
"> 1st March 2017</div>
604 <div class="body
"><p>A few days ago I ordered a small batch of
605 <a href="http://altusmetrum.org/ChaosKey/
">the ChaosKey</a>, a small
606 USB dongle for generating entropy created by Bdale Garbee and Keith
607 Packard. Yesterday it arrived, and I am very happy to report that it
608 work great! According to its designers, to get it to work out of the
609 box, you need the Linux kernel version 4.1 or later. I tested on a
610 Debian Stretch machine (kernel version 4.9), and there it worked just
611 fine, increasing the available entropy very quickly. I wrote a small
612 test oneliner to test. It first print the current entropy level,
613 drain /dev/random, and then print the entropy level for five seconds.
614 Here is the situation without the ChaosKey inserted:</p>
617 % cat /proc/sys/kernel/random/entropy_avail; \
618 dd bs=1M if=/dev/random of=/dev/null count=1; \
619 for n in $(seq 1 5); do \
620 cat /proc/sys/kernel/random/entropy_avail; \
626 28 byte kopiert, 0,000264565 s, 106 kB/s
635 <p>The entropy level increases by 3-4 every second. In such case any
636 application requiring random bits (like a HTTPS enabled web server)
637 will halt and wait for more entrpy. And here is the situation with
638 the ChaosKey inserted:</p>
641 % cat /proc/sys/kernel/random/entropy_avail; \
642 dd bs=1M if=/dev/random of=/dev/null count=1; \
643 for n in $(seq 1 5); do \
644 cat /proc/sys/kernel/random/entropy_avail; \
650 104 byte kopiert, 0,000487647 s, 213 kB/s
659 <p>Quite the difference. :) I bought a few more than I need, in case
660 someone want to buy one here in Norway. :)</p>
662 <p>Update: The dongle was presented at Debconf last year. You might
663 find <a href="https://debconf16.debconf.org/talks/
94/
">the talk
664 recording illuminating</a>. It explains exactly what the source of
665 randomness is, if you are unable to spot it from the schema drawing
666 available from the ChaosKey web site linked at the start of this blog
672 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>.
677 <div class="padding
"></div>
680 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/Detect_OOXML_files_with_undefined_behaviour_.html
">Detect OOXML files with undefined behaviour?</a></div>
681 <div class="date
">21st February 2017</div>
682 <div class="body
"><p>I just noticed
683 <a href="http://www.arkivrad.no/aktuelt/riksarkivarens-forskrift-pa-horing
">the
684 new Norwegian proposal for archiving rules in the goverment</a> list
685 <a href="http://www.ecma-international.org/publications/standards/Ecma-
376.htm
">ECMA-376</a>
686 / ISO/IEC 29500 (aka OOXML) as valid formats to put in long term
687 storage. Luckily such files will only be accepted based on
688 pre-approval from the National Archive. Allowing OOXML files to be
689 used for long term storage might seem like a good idea as long as we
690 forget that there are plenty of ways for a "valid" OOXML document to
691 have content with no defined interpretation in the standard, which
692 lead to a question and an idea.
</p>
694 <p>Is there any tool to detect if a OOXML document depend on such
695 undefined behaviour? It would be useful for the National Archive (and
696 anyone else interested in verifying that a document is well defined)
697 to have such tool available when considering to approve the use of
698 OOXML. I'm aware of the
699 <a href=
"https://github.com/arlm/officeotron/">officeotron OOXML
700 validator
</a>, but do not know how complete it is nor if it will
701 report use of undefined behaviour. Are there other similar tools
702 available? Please send me an email if you know of any such tool.
</p>
707 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard
</a>.
712 <div class=
"padding"></div>
714 <p style=
"text-align: right;"><a href=
"index.rss"><img src=
"http://people.skolelinux.org/pere/blog/xml.gif" alt=
"RSS feed" width=
"36" height=
"14" /></a></p>
725 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/01/">January (
4)
</a></li>
727 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/02/">February (
3)
</a></li>
729 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/03/">March (
5)
</a></li>
731 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/04/">April (
2)
</a></li>
733 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/06/">June (
2)
</a></li>
740 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/01/">January (
3)
</a></li>
742 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/02/">February (
2)
</a></li>
744 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/03/">March (
3)
</a></li>
746 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/04/">April (
8)
</a></li>
748 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/05/">May (
8)
</a></li>
750 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/06/">June (
2)
</a></li>
752 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/07/">July (
2)
</a></li>
754 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/08/">August (
5)
</a></li>
756 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/09/">September (
2)
</a></li>
758 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/10/">October (
3)
</a></li>
760 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/11/">November (
8)
</a></li>
762 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/12/">December (
5)
</a></li>
769 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/01/">January (
7)
</a></li>
771 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/02/">February (
6)
</a></li>
773 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/03/">March (
1)
</a></li>
775 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/04/">April (
4)
</a></li>
777 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/05/">May (
3)
</a></li>
779 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/06/">June (
4)
</a></li>
781 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/07/">July (
6)
</a></li>
783 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/08/">August (
2)
</a></li>
785 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/09/">September (
2)
</a></li>
787 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/10/">October (
9)
</a></li>
789 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/11/">November (
6)
</a></li>
791 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/12/">December (
3)
</a></li>
798 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/01/">January (
2)
</a></li>
800 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/02/">February (
3)
</a></li>
802 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/03/">March (
8)
</a></li>
804 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/04/">April (
7)
</a></li>
806 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/05/">May (
1)
</a></li>
808 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/06/">June (
2)
</a></li>
810 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/07/">July (
2)
</a></li>
812 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/08/">August (
2)
</a></li>
814 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/09/">September (
5)
</a></li>
816 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/10/">October (
6)
</a></li>
818 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/11/">November (
3)
</a></li>
820 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/12/">December (
5)
</a></li>
827 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/01/">January (
11)
</a></li>
829 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/02/">February (
9)
</a></li>
831 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/03/">March (
9)
</a></li>
833 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/04/">April (
6)
</a></li>
835 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/05/">May (
9)
</a></li>
837 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/06/">June (
10)
</a></li>
839 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/07/">July (
7)
</a></li>
841 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/08/">August (
3)
</a></li>
843 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/09/">September (
5)
</a></li>
845 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/10/">October (
7)
</a></li>
847 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/11/">November (
9)
</a></li>
849 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/12/">December (
3)
</a></li>
856 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/01/">January (
7)
</a></li>
858 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/02/">February (
10)
</a></li>
860 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/03/">March (
17)
</a></li>
862 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/04/">April (
12)
</a></li>
864 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/05/">May (
12)
</a></li>
866 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/06/">June (
20)
</a></li>
868 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/07/">July (
17)
</a></li>
870 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/08/">August (
6)
</a></li>
872 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/09/">September (
9)
</a></li>
874 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/10/">October (
17)
</a></li>
876 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/11/">November (
10)
</a></li>
878 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/12/">December (
7)
</a></li>
885 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/01/">January (
16)
</a></li>
887 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/02/">February (
6)
</a></li>
889 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/03/">March (
6)
</a></li>
891 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/04/">April (
7)
</a></li>
893 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/05/">May (
3)
</a></li>
895 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/06/">June (
2)
</a></li>
897 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/07/">July (
7)
</a></li>
899 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/08/">August (
6)
</a></li>
901 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/09/">September (
4)
</a></li>
903 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/10/">October (
2)
</a></li>
905 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/11/">November (
3)
</a></li>
907 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/12/">December (
1)
</a></li>
914 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/01/">January (
2)
</a></li>
916 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/02/">February (
1)
</a></li>
918 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/03/">March (
3)
</a></li>
920 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/04/">April (
3)
</a></li>
922 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/05/">May (
9)
</a></li>
924 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/06/">June (
14)
</a></li>
926 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/07/">July (
12)
</a></li>
928 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/08/">August (
13)
</a></li>
930 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/09/">September (
7)
</a></li>
932 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/10/">October (
9)
</a></li>
934 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/11/">November (
13)
</a></li>
936 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/12/">December (
12)
</a></li>
943 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/01/">January (
8)
</a></li>
945 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/02/">February (
8)
</a></li>
947 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/03/">March (
12)
</a></li>
949 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/04/">April (
10)
</a></li>
951 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/05/">May (
9)
</a></li>
953 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/06/">June (
3)
</a></li>
955 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/07/">July (
4)
</a></li>
957 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/08/">August (
3)
</a></li>
959 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/09/">September (
1)
</a></li>
961 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/10/">October (
2)
</a></li>
963 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/11/">November (
3)
</a></li>
965 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/12/">December (
3)
</a></li>
972 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/11/">November (
5)
</a></li>
974 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/12/">December (
7)
</a></li>
985 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (
13)
</a></li>
987 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/amiga">amiga (
1)
</a></li>
989 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/aros">aros (
1)
</a></li>
991 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bankid">bankid (
4)
</a></li>
993 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (
9)
</a></li>
995 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (
16)
</a></li>
997 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bsa">bsa (
2)
</a></li>
999 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (
2)
</a></li>
1001 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian (
149)
</a></li>
1003 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (
158)
</a></li>
1005 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian-handbook">debian-handbook (
3)
</a></li>
1007 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/digistan">digistan (
10)
</a></li>
1009 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/dld">dld (
16)
</a></li>
1011 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/docbook">docbook (
23)
</a></li>
1013 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (
4)
</a></li>
1015 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/english">english (
347)
</a></li>
1017 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (
23)
</a></li>
1019 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (
12)
</a></li>
1021 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (
29)
</a></li>
1023 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (
9)
</a></li>
1025 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (
18)
</a></li>
1027 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/h264">h264 (
20)
</a></li>
1029 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/intervju">intervju (
42)
</a></li>
1031 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (
15)
</a></li>
1033 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/kart">kart (
20)
</a></li>
1035 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ldap">ldap (
9)
</a></li>
1037 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lenker">lenker (
8)
</a></li>
1039 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (
2)
</a></li>
1041 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (
1)
</a></li>
1043 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (
8)
</a></li>
1045 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (
39)
</a></li>
1047 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (
9)
</a></li>
1049 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk (
290)
</a></li>
1051 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug (
188)
</a></li>
1053 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (
32)
</a></li>
1055 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/open311">open311 (
2)
</a></li>
1057 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (
64)
</a></li>
1059 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern (
99)
</a></li>
1061 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/raid">raid (
1)
</a></li>
1063 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reactos">reactos (
1)
</a></li>
1065 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reprap">reprap (
11)
</a></li>
1067 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rfid">rfid (
3)
</a></li>
1069 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot (
10)
</a></li>
1071 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rss">rss (
1)
</a></li>
1073 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ruter">ruter (
5)
</a></li>
1075 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (
2)
</a></li>
1077 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (
52)
</a></li>
1079 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (
4)
</a></li>
1081 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (
5)
</a></li>
1083 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard (
54)
</a></li>
1085 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (
6)
</a></li>
1087 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (
11)
</a></li>
1089 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (
48)
</a></li>
1091 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (
3)
</a></li>
1093 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/usenix">usenix (
2)
</a></li>
1095 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/valg">valg (
8)
</a></li>
1097 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/video">video (
59)
</a></li>
1099 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (
4)
</a></li>
1101 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/web">web (
40)
</a></li>
1107 <p style=
"text-align: right">
1108 Created by
<a href=
"http://steve.org.uk/Software/chronicle">Chronicle v4.6
</a>