<html>
<head>
<title>Petter Reinholdtsen</title>
- <link rel="stylesheet" type="text/css" media="screen" href="style.css">
- <link rel="alternate" title="RSS Feed" href="index.rss" type="application/rss+xml">
+ <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css">
+ <link rel="alternate" title="RSS Feed" href="http://people.skolelinux.org/pere/blog/index.rss" type="application/rss+xml">
</head>
<body>
<div class="title">
<h1>
- <a href="">Petter Reinholdtsen</a>
+ <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
</h1>
<div class="entry">
- <div class="title"><a href="Teknisk_program_for_Go_Open_2009_er_nesten_ferdig.html">Teknisk program for Go Open 2009 er nesten ferdig</a></div>
- <div class="date">2009-03-05 22:30</div>
+ <div class="title"><a href="http://people.skolelinux.org/pere/blog/My_first_perl_GUI_application___controlling_a_Spykee_robot.html">My first perl GUI application - controlling a Spykee robot</a></div>
+ <div class="date">2010-09-01 21:00</div>
<div class="body">
-<p>Etter lang tids jobbing begynner endelig programmet til det
-tekniske sporet på konferansen <a href="http://www.goopen.no/">Go Open
-2009</a> å bli ferdig. Det blir 9 punkter på programmet, og etter alt
-å dømme blir det disse 9:</p>
-
-<ul>
-
-<li>"Open Telephony: A solution greater than the sum of its parts" med
- Jon "maddog" Hall</li>
-<li>OpenSolaris-relatert med Ian Murdock fra SUN</li>
-<li>"The inner workings of the OSM project and the technology used"
- med Andy Allan </li>
-<li>Coreboot-relatert med Peter Stuge</li>
-<li>"Gratis værdata fra Meteorologisk institutt" med Trond Michelsen</li>
-<li>RRDtool/Nagios-relatert med Tobias Oetiker</li>
-<li>"Developers guide to server-side productivity and fun using open
- source platforms and frameworks" med en gjeng folk fra
- JavaBin-miljøet</li>
-<li>"G(et)it Nå!" med Marcus Ramberg</li>
-<li>Om kontrolltelling av valgresultater med fri programvare med Mitch
- Trachtenberg</li>
-
-</ul>
-
-<p>De siste bekreftelsene og overskrifter mangler og kommer
-forhåpentlig på plass før mandag, men jeg håper dette blir et program
-flere enn meg vil sette pris på. Jeg gleder meg i hvert fall
-stort.</p>
+<p>This evening I made my first Perl GUI application. The last few
+days I have worked on a Perl module for controlling my recently
+aquired Spykee robots, and the module is now getting complete enought
+that it is possible to use it to control the robot driving at least.
+It was now time to figure out how to use it to create some GUI to
+allow me to drive the robot around. I picked PerlQt as I have had
+positive experiences with the Qt API before, and spent a few minutes
+browsing the web for examples. Using Qt Designer seemed like a short
+cut, so I ended up writing the perl GUI using Qt Designer and
+compiling it into a perl program using the puic program from
+libqt-perl. Nothing fancy yet, but it got buttons to connect and
+drive around.</p>
+
+<p>The perl module I have written provide a object oriented API for
+controlling the robot. Here is an small example on how to use it:</p>
+
+<p><pre>
+use Spykee;
+Spykee::discover(sub {$robot{$_[0]} = $_[1]});
+my $host = (keys %robot)[0];
+my $spykee = Spykee->new();
+$spykee->contact($host, "admin", "admin");
+$spykee->left();
+sleep 2;
+$spykee->right();
+sleep 2;
+$spykee->forward();
+sleep 2;
+$spykee->back();
+sleep 2;
+$spykee->stop();
+</pre></p>
+
+<p>Thanks to the release of the source of the robot firmware, I could
+peek into the implementation at the other end to figure out how to
+implement the protocol used by the robot. I've implemented several of
+the commands the robot understand, but is still missing the camera
+support to make it possible to control the robot from remote. First I
+want to implement support for uploading new firmware and configuring
+the wireless network, to make it possible to bootstrap a Spykee robot
+without the producers Windows and MacOSX software (I only have Linux,
+so I had to ask a friend to come over to get the robot testing
+going. :).</p>
+
+<p>Will release the source to the public soon, but need to figure out
+where to make it available first. I will add a link to
+<a href="http://wiki.nuug.no/grupper/robot/">the NUUG wiki</a> for
+those that want to check back later to find it.</p>
</div>
<div class="tags">
- Tags: <a href="tags/norsk">norsk</a>, <a href="tags/nuug">nuug</a>.
+ 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/robot">robot</a>.
</div>
</div>
<div class="padding"></div>
<div class="entry">
- <div class="title"><a href="Checking_server_hardware_support_status_for_Dell__HP_and_IBM_servers.html">Checking server hardware support status for Dell, HP and IBM servers</a></div>
- <div class="date">2009-02-28 23:50</div>
+ <div class="title"><a href="http://people.skolelinux.org/pere/blog/Forslag_i_stortinget_om____stoppe_elektronisk_stemmegiving_i_Norge.html">Forslag i stortinget om å stoppe elektronisk stemmegiving i Norge</a></div>
+ <div class="date">2010-08-31 21:00</div>
<div class="body">
-<p>At work, we have a few hundred Linux servers, and with that amount
-of hardware it is important to keep track of when the hardware support
-contract expire for each server. We have a machine (and service)
-register, which until recently did not contain much useful besides the
-machine room location and contact information for the system owner for
-each machine. To make it easier for us to track support contract
-status, I've recently spent time on extending the machine register to
-include information about when the support contract expire, and to tag
-machines with expired contracts to make it easy to get a list of such
-machines. I extended a perl script already being used to import
-information about machines into the register, to also do some screen
-scraping off the sites of Dell, HP and IBM (our majority of machines
-are from these vendors), and automatically check the support status
-for the relevant machines. This make the support status information
-easily available and I hope it will make it easier for the computer
-owner to know when to get new hardware or renew the support contract.
-The result of this work documented that 27% of the machines in the
-registry is without a support contract, and made it very easy to find
-them. 27% might seem like a lot, but I see it more as the case of us
-using machines a bit longer than the 3 years a normal support contract
-last, to have test machines and a platform for less important
-services. After all, the machines without a contract are working fine
-at the moment and the lack of contract is only a problem if any of
-them break down. When that happen, we can either fix it using spare
-parts from other machines or move the service to another old
-machine.</p>
-
-<p>I believe the code for screen scraping the Dell site was originally
-written by Trond Hasle Amundsen, and later adjusted by me and Morten
-Werner Forsbring. The HP scraping was written by me after reading a
-nice article in ;login: about how to use WWW::Mechanize, and the IBM
-scraping was written by me based on the Dell code. I know the HTML
-parsing could be done using nice libraries, but did not want to
-introduce more dependencies. This is the current incarnation:</p>
-
-<pre>
-use LWP::Simple;
-use POSIX;
-use WWW::Mechanize;
-use Date::Parse;
-[...]
-sub get_support_info {
- my ($machine, $model, $serial, $productnumber) = @_;
- my $str;
-
- if ( $model =~ m/^Dell / ) {
- # fetch website from Dell support
- my $url = "http://support.euro.dell.com/support/topics/topic.aspx/emea/shared/support/my_systems_info/no/details?c=no&cs=nodhs1&l=no&s=dhs&ServiceTag=$serial";
- my $webpage = get($url);
- return undef unless ($webpage);
-
- my $daysleft = -1;
- my @lines = split(/\n/, $webpage);
- foreach my $line (@lines) {
- next unless ($line =~ m/Beskrivelse/);
- $line =~ s/<[^>]+?>/;/gm;
- $line =~ m%;(\d{2})/(\d{2})/(\d{4});+(\d{2})/(\d{2})/(\d{4});%g;
- my $start = "$3-$1-$2";
- my $end = "$6-$4-$5";
- $str = "$start -> $end";
- my $today = POSIX::strftime("%Y-%m-%d", localtime(time));
- tag_machine_unsupported($machine)
- if ($end lt $today);
- }
- } elsif ( $model =~ m/^HP / ) {
- my $mech = WWW::Mechanize->new();
- my $url =
- 'http://www1.itrc.hp.com/service/ewarranty/warrantyInput.do';
- $mech->get($url);
- my $fields = {
- 'BODServiceID' => 'NA',
- 'RegisteredPurchaseDate' => '',
- 'country' => 'NO',
- 'productNumber' => $productnumber,
- 'serialNumber1' => $serial,
- };
- $mech->submit_form( form_number => 2,
- fields => $fields );
- # Next step is screen scraping
- my $content = $mech->content();
-
- $content =~ s/<[^>]+?>/;/gm;
- $content =~ s/\s+/ /gm;
- $content =~ s/;\s*;/;;/gm;
- $content =~ s/;[\s;]+/;/gm;
-
- my $today = POSIX::strftime("%Y-%m-%d", localtime(time));
-
- while ($content =~ m/;Warranty Type;/) {
- my ($type, $status, $startstr, $stopstr) = $content =~
- m/;Warranty Type;([^;]+);.+?;Status;(\w+);Start Date;([^;]+);End Date;([^;]+);/;
- $content =~ s/^.+?;Warranty Type;//;
- my $start = POSIX::strftime("%Y-%m-%d",
- localtime(str2time($startstr)));
- my $end = POSIX::strftime("%Y-%m-%d",
- localtime(str2time($stopstr)));
-
- $str .= "$type ($status) $start -> $end ";
-
- tag_machine_unsupported($machine)
- if ($end lt $today);
- }
- } elsif ( $model =~ m/^IBM / ) {
- my ($producttype) = $model =~ m/.*-\[(.{4}).+\]-/;
- if ($producttype && $serial) {
- my $content =
- get("http://www-947.ibm.com/systems/support/supportsite.wss/warranty?action=warranty&brandind=5000008&Submit=Submit&type=$producttype&serial=$serial");
- if ($content) {
- $content =~ s/<[^>]+?>/;/gm;
- $content =~ s/\s+/ /gm;
- $content =~ s/;\s*;/;;/gm;
- $content =~ s/;[\s;]+/;/gm;
-
- $content =~ s/^.+?;Warranty status;//;
- my ($status, $end) = $content =~ m/;Warranty status;([^;]+)\s*;Expiration date;(\S+) ;/;
-
- $str .= "($status) -> $end ";
-
- my $today = POSIX::strftime("%Y-%m-%d", localtime(time));
- tag_machine_unsupported($machine)
- if ($end lt $today);
- }
- }
- }
- return $str;
-}
-</pre>
-
-<p>Here are some examples on how to use the function, using fake
-serial numbers. The information passed in as arguments are fetched
-from dmidecode.</p>
-
-<pre>
-print get_support_info("hp.host", "HP ProLiant BL460c G1", "1234567890"
- "447707-B21");
-print get_support_info("dell.host", "Dell Inc. PowerEdge 2950", "1234567");
-print get_support_info("ibm.host", "IBM eserver xSeries 345 -[867061X]-",
- "1234567");
-</pre>
-
-<p>I would recommend this approach for tracking support contracts for
-everyone with more than a new computers to administer. :)</p>
+<p>Ble tipset i dag om at et forslag om å stoppe forsøkene med
+elektronisk stemmegiving utenfor valglokaler er
+<a href="http://www.stortinget.no/no/Saker-og-publikasjoner/Saker/Sak/?p=46616">til
+behandling</a> i Stortinget.
+<a href="http://www.stortinget.no/Global/pdf/Representantforslag/2009-2010/dok8-200910-128.pdf">Forslaget</a>
+er fremmet av Erna Solberg, Michael Tetzschner og Trond Helleland.</p>
+
+<p>Håper det får flertall.</p>
</div>
<div class="tags">
- Tags: <a href="tags/english">english</a>, <a href="tags/nuug">nuug</a>.
+ Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet</a>.
</div>
</div>
<div class="padding"></div>
<div class="entry">
- <div class="title"><a href="Using_bar_codes_at_a_computing_center.html">Using bar codes at a computing center</a></div>
- <div class="date">2009-02-20 08:50</div>
+ <div class="title"><a href="http://people.skolelinux.org/pere/blog/Broken_hard_link_handling_with_sshfs.html">Broken hard link handling with sshfs</a></div>
+ <div class="date">2010-08-30 19:30</div>
<div class="body">
-<p>At work with the University of Oslo, we have several hundred computers
-in our computing center. This give us a challenge in tracking the
-location and cabling of the computers, when they are added, moved and
-removed. Some times the location register is not updated when a
-computer is inserted or moved and we then have to search the room for
-the "missing" computer.</p>
-
-<p>In the last issue of Linux Journal, I came across a project
-<a href="http://www.libdmtx.org/">libdmtx</a> to write and read bar
-code blocks as defined in the
-<a href="http://en.wikipedia.org/wiki/Data_Matrix">The Data Matrix
-Standard</a>. This is bar codes that can be read with a normal
-digital camera, for example that on a cell phone, and several such bar
-codes can be read by libdmtx from one picture. The bar code standard
-allow up to 2 KiB to be written in the tag. There is another project
-with <a href="http://www.terryburton.co.uk/barcodewriter/">a bar code
-writer written in postscript</a> capable of creating such bar codes,
-but this was the first time I found a tool to read these bar
-codes.</p>
-
-<p>It occurred to me that this could be used to tag and track the
-machines in our computing center. If both racks and computers are
-tagged this way, we can use a picture of the rack and all its
-computers to detect the rack location of any computer in that rack.
-If we do this regularly for the entire room, we will find all
-locations, and can detect movements and removals.</p>
-
-<p>I decided to test if this would work in practice, and picked a
-random rack and tagged all the machines with their names. Next, I
-took pictures with my digital camera, and gave the dmtxread program
-these JPEG pictures to see how many tags it could read. This worked
-fairly well. If the pictures was well focused and not taken from the
-side, all tags in the image could be read. Because of limited space
-between the racks, I was unable to get a good picture of the entire
-rack, but could without problem read all tags from a picture covering
-about half the rack. I had to limit the search time used by dmtxread
-to 60000 ms to make sure it terminated in a reasonable time frame.</p>
-
-<p>My conclusion is that this could work, and we should probably look
-at adjusting our computer tagging procedures to use bar codes for
-easier automatic tracking of computers.</p>
+<p>Just got an email from Tobias Gruetzmacher as a followup on my
+<a href="http://people.skolelinux.org/pere/blog/Broken_umask_handling_with_sshfs.html">previous
+post about sshfs</a>. He reported another problem with sshfs. It
+fail to handle hard links properly. A simple way to spot this is to
+look at the . and .. entries in the directory tree. These should have
+a link count >1, but on sshfs the count is 1. I just tested to see
+what happen when trying to hardlink, and this fail as well:</p>
+
+<pre>
+% ln foo bar
+ln: creating hard link `bar' => `foo': Function not implemented
+%
+</pre>
+
+<p>I have not yet found time to implement a test for this in my file
+system test code, but believe having working hard links is useful to
+avoid surprised unix programs. Not as useful as working file locking
+and symlinks, which are required to get a working desktop, but useful
+nevertheless. :)</p>
+
+<p>The latest version of the file system test code is available via
+git from
+<a href="http://github.com/gebi/fs-test">http://github.com/gebi/fs-test</a></p>
</div>
<div class="tags">
- Tags: <a href="tags/english">english</a>, <a href="tags/nuug">nuug</a>.
+ Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>.
</div>
</div>
<div class="padding"></div>
<div class="entry">
- <div class="title"><a href="Kart_over_overv__kningskamera_i_Norge.html">Kart over overvåkningskamera i Norge</a></div>
- <div class="date">2009-02-15 22:30</div>
+ <div class="title"><a href="http://people.skolelinux.org/pere/blog/Sikkerhetsteateret_p___flyplassene_fortsetter.html">Sikkerhetsteateret på flyplassene fortsetter</a></div>
+ <div class="date">2010-08-28 10:40</div>
<div class="body">
-<p>I regi av
-<a href="http://www.personvern.no/">personvernforeningen</a> har jeg
-startet på
-<a href="http://personvern.no/wiki/index.php/Kameraovervåkning">et
-kart over overvåkningskamera i Norge</a>. Bakgrunnen er at det etter
-min mening bærer galt avsted med den massive overvåkningen som
-finner sted i Norge i dag, og at flere og flere overvåkningskamera
-gjør det vanskeligere og vanskeligere å gå igjennom livet uten at
-små og store brødre trenger inn i ens private sfære. Datatilsynet
-har et register over kameraovervåkning, men det viser seg å være
-ubrukelig både til å finne ut hvor det er kamera plassert, og til å
-sjekke om et kamera en kommer over er registrert. Dette nye kartet
-fikser en av disse manglene, men det vil fortsatt være umulig å vite
-om et kamera er registrert etter lovens krav eller ikke. Pr. nå er
-22 kamera i Oslo registrert, og det trengs flere til å registrere
-alle. Informasjonen registreres direkte inn i <a
-href="http://www.openstreetmap.org/">OpenStreetmap</a>, sa hentes det
-automatisk over i spesialkartet.</p>
+<p>Jeg skrev for et halvt år siden hvordan
+<a href="http://people.skolelinux.org/pere/blog/Sikkerhet__teater__og_hvordan_gj__re_verden_sikrere.html">samfunnet
+kaster bort ressurser på sikkerhetstiltak som ikke fungerer</a>. Kom
+nettopp over en
+<a href="http://www.askthepilot.com/essays-and-stories/terrorism-tweezers-and-terminal-madness-an-essay-on-security/">historie
+fra en pilot fra USA</a> som kommenterer det samme. Jeg mistenker det
+kun er uvitenhet og autoritetstro som gjør at så få protesterer. Har
+veldig sans for piloten omtalt i <a
+href="http://www.aftenposten.no/nyheter/iriks/article2057501.ece">Aftenposten</a> 2007-10-23,
+og skulle ønske flere rettet oppmerksomhet mot problemet. Det gir
+ikke meg trygghetsfølelse på flyplassene når jeg ser at
+flyplassadministrasjonen kaster bort folk, penger og tid på tull i
+stedet for ting som bidrar til reell økning av sikkerheten. Det
+forteller meg jo at vurderingsevnen til de som burde bidra til økt
+sikkerhet er svært sviktende, noe som ikke taler godt for de andre
+tiltakene.</p>
+
+<p>Mon tro hva som skjer hvis det fantes en enkel brosjyre å skrive ut
+fra Internet som forklarte hva som er galt med sikkerhetsopplegget på
+flyplassene, og folk skrev ut og la en bunke på flyplassene når de
+passerte. Kanskje det ville fått flere til å få øynene opp for
+problemet.</p>
+
+<p>Personlig synes jeg flyopplevelsen er blitt så avskyelig at jeg
+forsøker å klare meg med tog, bil og båt for å slippe ubehaget. Det
+er dog noe vanskelig i det langstrakte Norge og for å kunne besøke de
+delene av verden jeg ønsker å nå. Mistenker at flere har det slik, og
+at dette går ut over inntjeningen til flyselskapene. Det er antagelig
+en god ting sett fra et miljøperspektiv, men det er en annen sak.</p>
</div>
<div class="tags">
- Tags: <a href="tags/norsk">norsk</a>, <a href="tags/personvern">personvern</a>.
+ Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet</a>.
</div>
</div>
<div class="padding"></div>
<div class="entry">
- <div class="title"><a href="Endelig_er_Debian_Lenny_gitt_ut.html">Endelig er Debian Lenny gitt ut</a></div>
- <div class="date">2009-02-15 11:50</div>
+ <div class="title"><a href="http://people.skolelinux.org/pere/blog/Skolelinux_i_Osloskolen.html">Skolelinux i Osloskolen</a></div>
+ <div class="date">2010-08-26 22:25</div>
<div class="body">
-<p>Endelig er <a href="http://www.debian.org/">Debian</a>
-<a href="http://www.debian.org/News/2009/20090214">Lenny</a> gitt ut.
-Et langt steg videre for Debian-prosjektet, og en rekke nye
-programpakker blir nå tilgjengelig for de av oss som bruker den
-stabile utgaven av Debian. Neste steg er nå å få
-<a href="http://www.skolelinux.org/">Skolelinux</a> /
-<a href="http://wiki.debian.org/DebianEdu/">Debian Edu</a> ferdig
-oppdatert for den nye utgaven, slik at en oppdatert versjon kan
-slippes løs på skolene. Takk til alle debian-utviklerne som har
-gjort dette mulig. Endelig er f.eks. fungerende avhengighetsstyrt
-bootsekvens tilgjengelig i stabil utgave, vha pakken
-<tt>insserv</tt>.</p>
+<p>Denne høsten skal endelig alle Osloskolene få mulighet til å bruke
+<a href="http://www.skolelinux.org/">Skolelinux</a>. Ny IT-løsning
+har vært rullet ut i noen måneder nå, og så vidt jeg fikk vite før
+sommeren skulle alle skoler ha nytt opplegg på plass før oppstart nå i
+høst. På alle skolene skal en kunne velge ved installasjon om en skal
+ha Windows eller Skolelinux på maskinene, og en kan i tillegg
+PXE-boote maskinene over nett som tynne klienter eller diskløse
+arbeidsstasjoner. Jeg er spent på hvor mange skoler som velger å ta i
+bruk Skolelinux, og gleder meg til å se hvordan dette utvikler seg.
+Løsningen leveres av
+<a href="http://www.logica.no/">Logica</a> med
+<a href="http://www.slxdrift.no/">Skolelinux Drift AS</a> som
+underleverandør, og jeg har vært involvert i utviklingen av løsningen
+via Skolelinux Drift AS siden prosjektet starter. Jeg synes det er
+fantastisk at Skolelinux er kommet så langt siden vi startet i 2001 at
+alle elevene i Osloskolene nå skal få mulighet til å bruke
+løsningen. Jeg håper de vil sette pris på alle de
+<a href="http://www.skolelinux.no/linux-signpost/">fantastiske
+brukerprogrammene</a> som er tilgjengelig i Skolelinux.</p>
</div>
<div class="tags">
- Tags: <a href="tags/debian">debian</a>, <a href="tags/debian edu">debian edu</a>, <a href="tags/norsk">norsk</a>.
+ Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>.
</div>
</div>
<div class="padding"></div>
<div class="entry">
- <div class="title"><a href="F__rste_vellykkede_videostr__m_fra_NUUG.html">Første vellykkede videostrøm fra NUUG</a></div>
- <div class="date">2009-02-11 06:30</div>
+ <div class="title"><a href="http://people.skolelinux.org/pere/blog/Broken_umask_handling_with_sshfs.html">Broken umask handling with sshfs</a></div>
+ <div class="date">2010-08-26 13:30</div>
<div class="body">
-<p>Jeg ble glad for å se under
-<a href="http://www.nuug.no/aktiviteter/20090210-compiz/">gårdagens
-medlemsmøte</a> i NUUG Oslo at utsending av live-video fra møtet
-fungerte for første gang. Forrige gang ble det ved en teknisk tabbe
-sendt video uten lyd. Vi kan takke Ole Kristian Lien og resten av
-videogruppen i NUUG for at nå NUUG-medlemmer over det ganske land
-kunne se foredraget samtidig med oss i Oslo. Vi opplevde til og med
-under møtet å motta spørsmål via IRC som ble besvart der og da.
-Opptaket publiseres så snart det er kopiert over til NUUGs
-webserver og komprimert.</p>
+<p>My file system sematics program
+<a href="http://people.skolelinux.org/pere/blog/Testing_if_a_file_system_can_be_used_for_home_directories___.html">presented
+a few days ago</a> is very useful to verify that a file system can
+work as a unix home directory,and today I had to extend it a bit. I'm
+looking into alternatives for home directory access here at the
+University of Oslo, and one of the options is sshfs. My friend
+Finn-Arne mentioned a while back that they had used sshfs with Debian
+Edu, but stopped because of problems. I asked today what the problems
+where, and he mentioned that sshfs failed to handle umask properly.
+Trying to detect the problem I wrote this addition to my fs testing
+script:</p>
+
+<pre>
+mode_t touch_get_mode(const char *name, mode_t mode) {
+ mode_t retval = 0;
+ int fd = open(name, O_RDWR|O_CREAT|O_LARGEFILE, mode);
+ if (-1 != fd) {
+ unlink(name);
+ struct stat statbuf;
+ if (-1 != fstat(fd, &statbuf)) {
+ retval = statbuf.st_mode & 0x1ff;
+ }
+ close(fd);
+ }
+ return retval;
+}
+
+/* Try to detect problem discovered using sshfs */
+int test_umask(void) {
+ printf("info: testing umask effect on file creation\n");
+
+ mode_t orig_umask = umask(000);
+ mode_t newmode;
+ if (0666 != (newmode = touch_get_mode("foobar", 0666))) {
+ printf(" error: Wrong file mode %o when creating using mode 666 and umask 000\n",
+ newmode);
+ }
+ umask(007);
+ if (0660 != (newmode = touch_get_mode("foobar", 0666))) {
+ printf(" error: Wrong file mode %o when creating using mode 666 and umask 007\n",
+ newmode);
+ }
+
+ umask (orig_umask);
+ return 0;
+}
+
+int main(int argc, char **argv) {
+ [...]
+ test_umask();
+ return 0;
+}
+</pre>
+
+<p>Sure enough. On NFS to a netapp, I get this result:</p>
+
+<pre>
+Testing POSIX/Unix sematics on file system
+info: testing symlink creation
+info: testing subdirectory creation
+info: testing fcntl locking
+ Read-locking 1 byte from 1073741824
+ Read-locking 510 byte from 1073741826
+ Unlocking 1 byte from 1073741824
+ Write-locking 1 byte from 1073741824
+ Write-locking 510 byte from 1073741826
+ Unlocking 2 byte from 1073741824
+info: testing umask effect on file creation
+</pre>
+
+<p>When mounting the same directory using sshfs, I get this
+result:</p>
+
+<pre>
+Testing POSIX/Unix sematics on file system
+info: testing symlink creation
+info: testing subdirectory creation
+info: testing fcntl locking
+ Read-locking 1 byte from 1073741824
+ Read-locking 510 byte from 1073741826
+ Unlocking 1 byte from 1073741824
+ Write-locking 1 byte from 1073741824
+ Write-locking 510 byte from 1073741826
+ Unlocking 2 byte from 1073741824
+info: testing umask effect on file creation
+ error: Wrong file mode 644 when creating using mode 666 and umask 000
+ error: Wrong file mode 640 when creating using mode 666 and umask 007
+</pre>
+
+<p>So, I can conclude that sshfs is better than smb to a Netapp or a
+Windows server, but not good enough to be used as a home
+directory.</p>
+
+<p>Update 2010-08-26: Reported the issue in
+<a href="http://bugs.debian.org/594498">BTS report #594498</a></p>
+
+<p>Update 2010-08-27: Michael Gebetsroither report that he found the
+script so useful that he created a GIT repository and stored it in
+<a href="http://github.com/gebi/fs-test">http://github.com/gebi/fs-test</a>.</p>
</div>
<div class="tags">
- Tags: <a href="tags/norsk">norsk</a>, <a href="tags/nuug">nuug</a>, <a href="tags/video">video</a>.
+ Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>.
</div>
</div>
<div class="padding"></div>
<div class="entry">
- <div class="title"><a href="Min_reprap_tar_sakte_form.html">Min reprap tar sakte form</a></div>
- <div class="date">2009-02-03 13:30</div>
+ <div class="title"><a href="http://people.skolelinux.org/pere/blog/Elektronisk_stemmegiving_er_ikke_til____stole_p_____heller_ikke_i_Norge.html">Elektronisk stemmegiving er ikke til å stole på - heller ikke i Norge</a></div>
+ <div class="date">2010-08-23 19:30</div>
<div class="body">
-<p>Min reprap begynner å ta form. Den er nå kommet så langt at den er
-blitt en kubisk ramme. Z-aksen er montert men ikke kalibrert, og det
-hele er klart for litt enkel testing. Har møtt på to problemer som
-blokkerer videre montering, men har oppnått kontakt med Audun Vaaler
-ved Høgskolen i Østfold som forteller at de er nesten ferdig med et
-tilsvarende byggesett som det jeg tar utgangspunkt i, og håper de kan
-forklare hvordan de kom rundt problemene. De to problemene er
-relatert til Z-aksen og Y-aksen. </p>
-
-<p>For Z-aksen, er det et stjernehjul som festes på motoraksen ved
-tannjulet som driver z-aksebåndet og som skal holde båndet på plass.
-Problemet med det nederste stjernejulet er at det er helt løst, og
-blir liggende på motoren 5 mm nedenfor tannjulet, i stedet for å ligge
-inntil tannjulet slik det skal. Mulig løsningen er å borre i
-stjernehjulet, eller lime det fast.</p>
-
-<p>For Y-aksen, er det en plastdel som ser ut til å mangle som skulle
-dekket to skruver som kommer i veien for kraftoverføringsmekanismen
-fra motoren til selve aksen, slik at mekanismen kan snurre fritt.</p>
-
-<p>Når det gjelder elektronikken til min reprap, så er min gode venn
-Anders Rosnes igang med å lodde sammen delene og han forteller at
-koblingsbordet for Arduino er klart, og en temperatursensor og en
-optoswitch er også klar. Gleder meg til å teste dem. Må bare finne
-ut hvordan jeg laster opp firmware i Arduino-en. :)</p>
-
-<p>Når det gjelder NUUGs reprap-prosjekt, så er det framgang og Ole
-Kristian, Tollef og Ketil besøke IFI for å få fortgang i produksjon av
-plastdeler, og Ole Kristian forteller at han har funnet en kilde til
-de fleste metalldelene. Gleder meg til å se resultaten av det
-arbeidet.</p>
+<p>I Norge pågår en prosess for å
+<a href="http://www.e-valg.dep.no/">innføre elektronisk
+stemmegiving</a> ved kommune- og stortingsvalg. Dette skal
+introduseres i 2011. Det er all grunn til å tro at valg i Norge ikke
+vil være til å stole på hvis dette blir gjennomført. Da det hele var
+oppe til høring i 2006 forfattet jeg
+<a href="http://www.nuug.no/dokumenter/valg-horing-2006-09.pdf">en
+høringsuttalelse fra NUUG</a> (og EFN som hengte seg på) som skisserte
+hvilke punkter som må oppfylles for at en skal kunne stole på et valg,
+og elektronisk stemmegiving mangler flere av disse. Elektronisk
+stemmegiving er for alle praktiske formål å putte ens stemme i en sort
+boks under andres kontroll, og satse på at de som har kontroll med
+boksen er til å stole på - uten at en har mulighet til å verifisere
+dette selv. Det er ikke slik en gjennomfører demokratiske valg.</p>
+
+<p>Da problemet er fundamentalt med hvordan elektronisk stemmegiving
+må fungere for at også ikke-krypografer skal kunne delta, har det vært
+mange rapporter om hvordan elektronisk stemmegiving har sviktet i land
+etter land. En
+<a href="http://wiki.nuug.no/uttalelser/2006-elektronisk-stemmegiving">liten
+samling referanser</a> finnes på NUUGs wiki. Den siste er fra India,
+der valgkomisjonen har valgt
+<a href="http://www.freedom-to-tinker.com/blog/jhalderm/electronic-voting-researcher-arrested-over-anonymous-source">å
+pusse politiet på en forsker</a> som har dokumentert svakheter i
+valgsystemet.</p>
+
+<p>Her i Norge har en valgt en annen tilnærming, der en forsøker seg
+med teknobabbel for å få befolkningen til å tro at dette skal bli
+sikkert. Husk, elektronisk stemmegiving underminerer de demokratiske
+valgene i Norge, og bør ikke innføres.</p>
+
+<p>Den offentlige diskusjonen blir litt vanskelig av at media har
+valgt å kalle dette "evalg", som kan sies å både gjelde elektronisk
+opptelling av valget som Norge har gjort siden 60-tallet og som er en
+svært god ide, og elektronisk opptelling som er en svært dårlig ide.
+Diskusjonen gir ikke mening hvis en skal diskutere om en er for eller
+mot "evalg", og jeg forsøker derfor å være klar på at jeg snakker om
+elektronisk stemmegiving og unngå begrepet "evalg".</p>
</div>
<div class="tags">
- Tags: <a href="tags/3d-printer">3d-printer</a>, <a href="tags/norsk">norsk</a>, <a href="tags/nuug">nuug</a>, <a href="tags/reprap">reprap</a>.
+ Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet</a>.
</div>
</div>
<div class="padding"></div>
<div class="entry">
- <div class="title"><a href="Norge_trenger_en_personvernforening.html">Norge trenger en personvernforening</a></div>
- <div class="date">2009-02-01 18:35</div>
+ <div class="title"><a href="http://people.skolelinux.org/pere/blog/Robot__reis_deg___.html">Robot, reis deg...</a></div>
+ <div class="date">2010-08-21 22:10</div>
<div class="body">
-<p>De siste årene har jeg forsøkt å få liv i
-<a href="http://www.personvern.no/">foreningen Personvern i Norge</a>. Norge
-trenger en organisasjon som jobber med å sette personvern på agendaen
-og som kan være en motvekt til de mange som gjerne raderer bort
-personvernet av behagelighetshensyn eller ut fra villfarelsen om at en
-får økt sikkerhet av å redusere personvernet. Foreløbig har det ikke
-lykkes å få på plass kritisk masse av interesserte på epostlisten, og
-nå tror jeg det er på tide å endre tilnærming. I stedet for å forsøke
-å rekruttere folk til epostlisten og håpe at når nok folk er samlet
-vil noen ta initiativ og sørge for at det begynner å skje ting, så
-tror jeg det er en ide å ta utgangspunkt i de som er der i dag og
-sette sammen et interrimstyre. Forslaget er sendt til epostlisten, så
-nå får vi se om noen er enig.</p>
+<p>I dag fikk jeg endelig tittet litt på mine nyinnkjøpte roboter, og
+har brukt noen timer til å google etter interessante referanser og
+aktuell kildekode for bruk på Linux. Det mest lovende så langt er
+<a href="http://ispykee.toyz.org/">ispykee</a>, som har en
+BSD-lisensiert linux-daemon som står som mellomledd mellom roboter på
+lokalnettet og en sentral tjeneste der en iPhone kan koble seg opp for
+å fjernstyre roboten. Linux-daemonen implementerer deler av
+protokollen som roboten forstår. Etter å ha knotet litt med å oppnå
+kontakt med roboten (den oppretter et eget ad-hoc wifi-nett, så jeg
+måtte gå av mitt vanlige nett for å få kontakt), og kommet frem til at
+den lytter på IP-port 9000 og 9001, gikk jeg i gang med å finne ut
+hvordan jeg kunne snakke med roboten vha. disse portene. Robotbiten
+av protokollen er publisert av produsenten med GPL-lisens, slik at det
+er mulig å se hvordan protokollen fungerer. Det finnes en java-klient
+for Android som så ganske snasen ut, men fant ingen kildekode for
+denne. Derimot hadde iphone-løsningen kildekode, så jeg tok
+utgangspunkt i den.</p>
+
+<p>Daemonen ville i utgangspunktet forsøke å kontakte den sentrale
+tjenesten som iphone-programmet kobler seg til. Jeg skrev dette om
+til i stedet å sette opp en nettverkstjeneste på min lokale maskin,
+som jeg kan koble meg opp til med telnet og gi kommandoer til roboten
+(act, forward, right, left, etc). Det involverte i praksis å bytte ut
+socket()/connect() med socket()/bind()/listen()/accept() for å gjøre
+klienten om til en tjener.</p>
+
+<p>Mens jeg har forsøkt å få roboten til å bevege seg har min samboer
+skrudd sammen resten av roboten for å få montert kamera og plastpynten
+(armer, plastfiber for lys). Nå er det hele montert, og roboten er
+klar til bruk. Må få flyttet den over til mitt vanlige trådløsnett
+før det blir praktisk, men de bitene av protokollen er ikke
+implementert i ispykee-daemonen, så der må jeg enten få tak i en mac
+eller en windows-maskin, eller implementere det selv.</p>
+
+<p>Vi var tre som kjøpte slike roboter, og vi har blitt enige om å
+samle notater og referanser på <a
+href="http://wiki.nuug.no/grupper/robot/">NUUGs wiki</a>. Ta en titt
+der hvis du er nysgjerrig.</p>
</div>
<div class="tags">
- Tags: <a href="tags/norsk">norsk</a>, <a href="tags/personvern">personvern</a>.
+ Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/robot">robot</a>.
</div>
</div>
<div class="padding"></div>
<div class="entry">
- <div class="title"><a href="Intellektuelt_privilegium___et_bedre_IP_begrep.html">Intellektuelt privilegium - et bedre IP-begrep</a></div>
- <div class="date">2009-02-01 15:06</div>
+ <div class="title"><a href="http://people.skolelinux.org/pere/blog/2_Spykee_roboter_i_hus__n___skal_det_lekes.html">2 Spykee-roboter i hus, nå skal det lekes</a></div>
+ <div class="date">2010-08-18 13:30</div>
<div class="body">
-<p>Ofte brukes intellektuell eiendom som samlebegrep for opphavsrett,
-patenter, varemerker og forretningshemmeligheter. Problemet med dette
-begrepet er at det er svært misvisende. For det første er ingen av de
-begrensede monopolene det her er snakk om som kan kalles eiendom, og
-for det andre er egenskapene til de ulike monopolene så forskjellige
-at det er mer tilslørende enn opplysende å gruppere dem sammen i et
-sekkebegrep. Blant annet Richard Stallman har
-<a href="http://www.gnu.org/philosophy/not-ipr.html">skrevet litt om dette</a>.</p>
-
-<p>I dag kom jeg over
-<a href="http://blogs.sun.com/webmink/entry/intellectual_privilege">en
-bloggpost fra Simon Phipps</a> som foreslår å bruke intellektuelt
-privilegium som begrep i stedet, da det gjør det klarere at det ikke
-er snakk om eiendom, men et tidsbegrenset monopol. Simon Phipps
-forteller videre at noen jobber med å skrive
-<a href="http://www.intellectualprivilege.com/book.html">en bok med
-tittel Intellectual Privilege</a>, og at boken er anbefalt av Lawrence
-Lessig. Jeg tror jeg skal begynne å bruke begrepet intellektuelt
-privilegium når jeg snakker om opphavsrett, patenter, varemerker og
-forretningshemmeligheter framover.</p>
+<p>Jeg kjøpte nettopp to
+<a href="http://www.spykee-robot.com/">Spykee</a>-roboter, for test og
+leking. Kjøpte to da det var så billige, og gir meg mulighet til å
+eksperimentere uten å være veldig redd for å ødelegge alt ved å bytte
+ut firmware og slikt. Oppdaget at lekebutikken på Bryn senter hadde
+en liten stabel på lager som de ikke hadde klart å selge ut etter
+fjorårets juleinnkjøp, og var villig til å selge for en femtedel av
+vanlig pris. Jeg, Ronny og Jarle har skaffet oss restbeholdningen, og
+det blir morsomt å se hva vi får ut av dette.</p>
+
+<p>Roboten har belter styrt av to motorer, kamera, høytaler, mikrofon
+og wifi-tilkobling. Det hele styrt av en GPL-lisensiert databoks som
+jeg mistenker kjører linux. Firmware-kildekoden ble visst publisert i
+mai. Eneste utfordringen er at kontroller-programvaren kun finnes til
+Windows, men det må en kunne jobbe seg rundt når vi har kildekoden til
+firmwaren. :)</p>
+
+<ul>
+<li><a href="http://en.wikipedia.org/wiki/Spykee">Wikipedia-oppføring</a></li>
+<li><a href=http://www.spykeeworld.com/spykee/US/freeSoftware.html">Nedlasting av firmware-kilden</a></li>
+<li><a href="http://wiki.nuug.no/grupper/robot">prosjektwiki hos NUUG</a></li>
+</ul>
</div>
<div class="tags">
- Tags: <a href="tags/norsk">norsk</a>, <a href="tags/nuug">nuug</a>.
+ Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/robot">robot</a>.
</div>
</div>
<div class="padding"></div>
<div class="entry">
- <div class="title"><a href="Fri__og___pen_standard__slik_Digistan_ser_det.html">Fri og åpen standard, slik Digistan ser det</a></div>
- <div class="date">2009-01-31 23:10</div>
+ <div class="title"><a href="http://people.skolelinux.org/pere/blog/Rob_Weir__How_to_Crush_Dissent.html">Rob Weir: How to Crush Dissent</a></div>
+ <div class="date">2010-08-15 22:20</div>
<div class="body">
-<p>Det er mange ulike definisjoner om hva en åpen standard er for noe,
-og NUUG hadde <a href="http://www.nuug.no/dokumenter/standard-presse-def-200506.txt">en
-pressemelding om dette sommeren 2005</a>. Der ble definisjonen til
-<a href="http://www.aaben-standard.dk/">DKUUG</a>,
-<a href="http://europa.eu.int/idabc/servlets/Doc?id=19529">EU-kommissionens
-European Interoperability Framework ( side 9)</a> og
-<a href="http://www.teknologiradet.no/files/7polert_copy.htm">teknologirådet</a> omtalt.
-
-Siden den gang har regjeringens standardiseringsråd dukket opp, og de
-ser ut til å har tatt utgangspunkt i EU-kommisjonens definisjon i
-<a href="http://www.regjeringen.no/nb/dep/fad/kampanjer/standardiseringsradet/arbeidsmetodikk.html?id=476407">sin
-arbeidsmetodikk</a>. Personlig synes jeg det er en god ide, da
-kravene som stilles der gjør at alle markedsaktører får like vilkår,
-noe som kommer kundene til gode ved hjelp av økt konkurranse.</p>
-
-<p>I sommer kom det en ny definisjon på banen.
-<a href="http://www.digistan.org/">Digistan</a> lanserte
-<a href="http://www.digistan.org/open-standard:definition">en
-definisjon på en fri og åpen standard</a>. Jeg liker måten de bryter
-ut av diskusjonen om hva som kreves for å kalle noe en åpen standard
-ved å legge på et ord og poengtere at en standard som er både åpen og
-fri har noen spesielle krav. Her er den definisjonen etter rask
-oversettelse fra engelsk til norsk av meg:</p>
-
-<blockquote>
-<p><strong>Definisjonen av en fri og åpen standard</strong></p>
-
-<p>Den digitale standardorganisasjonen definierer fri og åpen standard
-som følger:</p>
-<ul>
-<li>En fri og åpen standard er immun for leverandørinnlåsing i alle
-stadier av dens livssyklus. Immuniteten fra leverandørinnlåsing gjør
-det mulig å fritt bruke, forbedre, stole på og utvide en standard over
-tid.</li>
-<li>Standarden er adoptert og vil bli vedlikeholdt av en ikke-kommersiell
-organisasjon, og dens pågående utvikling gjøres med en åpen
-beslutningsprosedyre som er tilgjengelig for alle som er interessert i
-å delta.</li>
-<li>Standarden er publisert og spesifikasjonsdokumentet er fritt
-tilgjengelig. Det må være tillatt for alle å kopiere, distribuere og
-bruke den uten begresninger.</li>
-<li>Patentene som muligens gjelder (deler av) standarden er gjort
-ugjenkallelig tilgjengelig uten krav om betaling.</li>
-<li>Det er ingen begresninger i gjenbruk av standarden.</li>
-</ul>
-<p>Det økonomiske resultatet av en fri og åpen standard, som kan
-måles, er at det muliggjør perfekt konkurranse mellom leverandører av
-produkter basert på standarden.</p>
-</blockquote>
-
-<p>(Tar gjerne imot forbedringer av oversettelsen.)</p>
+<p>I found the notes from Rob Weir on
+<a href="http://feedproxy.google.com/~r/robweir/antic-atom/~3/VGb23-kta8c/how-to-crush-dissent.html">how
+to crush dissent</a> matching my own thoughts on the matter quite
+well. Highly recommended for those wondering which road our society
+should go down. In my view we have been heading the wrong way for a
+long time.</p>
</div>
<div class="tags">
- Tags: <a href="tags/norsk">norsk</a>, <a href="tags/nuug">nuug</a>.
+ Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet</a>.
</div>
</div>
<div class="padding"></div>
- <p style="text-align: right;"><a href="index.rss"><img src="xml.gif" alt="RSS feed" width="36" height="14"></a></p>
+ <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>
<div id="sidebar">
<h2>Archive</h2>
<ul>
+<li>2010
+<ul>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (1)</a></li>
+
+</ul></li>
+
<li>2009
<ul>
-<li><a href="archive/2009/01/">January (8)</a></li>
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
-<li><a href="archive/2009/02/">February (8)</a></li>
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
-<li><a href="archive/2009/03/">March (1)</a></li>
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
</ul></li>
<li>2008
<ul>
-<li><a href="archive/2008/11/">November (5)</a></li>
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
-<li><a href="archive/2008/12/">December (7)</a></li>
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
</ul></li>
<h2>Tags</h2>
<ul>
- <li><a href="tags/3d-printer">3d-printer (7)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (11)</a></li>
+
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
+
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
+
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (10)</a></li>
+
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (35)</a></li>
+
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (43)</a></li>
+
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (59)</a></li>
+
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (1)</a></li>
+
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (8)</a></li>
+
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (3)</a></li>
+
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (8)</a></li>
+
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (2)</a></li>
- <li><a href="tags/amiga">amiga (1)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
- <li><a href="tags/aros">aros (1)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (5)</a></li>
- <li><a href="tags/debian">debian (3)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (77)</a></li>
- <li><a href="tags/debian edu">debian edu (4)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (101)</a></li>
- <li><a href="tags/english">english (6)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (14)</a></li>
- <li><a href="tags/fiksgatami">fiksgatami (1)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (16)</a></li>
- <li><a href="tags/ltsp">ltsp (1)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (10)</a></li>
- <li><a href="tags/multimedia">multimedia (2)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (3)</a></li>
- <li><a href="tags/norsk">norsk (23)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
- <li><a href="tags/nuug">nuug (21)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (14)</a></li>
- <li><a href="tags/personvern">personvern (3)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (3)</a></li>
- <li><a href="tags/reprap">reprap (7)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (13)</a></li>
- <li><a href="tags/rss">rss (1)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (1)</a></li>
- <li><a href="tags/stavekontroll">stavekontroll (1)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (10)</a></li>
- <li><a href="tags/video">video (3)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (1)</a></li>
- <li><a href="tags/web">web (2)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (7)</a></li>
</ul>
</div>
<p style="text-align: right">
-Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v3.4</a>
+Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v3.7</a>
</p>
</body>
</html>