]> pere.pagekite.me Git - homepage.git/blobdiff - blog/archive/2009/02/02.rss
Ny sak.
[homepage.git] / blog / archive / 2009 / 02 / 02.rss
index b6364f1a32fc512a8b7312f90e9164b950c12f65..ab975ce7b29b638dc1933f487a4ea3ed4f7ed4f5 100644 (file)
@@ -3,16 +3,15 @@
        <channel>
                <title>Petter Reinholdtsen - Entries from February 2009</title>
                <description>Entries from February 2009</description>
-                <link>../../../</link>
+                <link>http://people.skolelinux.org/pere/blog/</link>
 
        
        <item>
                <title>Intellektuelt privilegium - et bedre IP-begrep</title>
-               <link>../../../Intellektuelt_privilegium___et_bedre_IP_begrep.html</link>        
-               <guid isPermaLink="true">../../../Intellektuelt_privilegium___et_bedre_IP_begrep.html</guid>
+               <link>http://people.skolelinux.org/pere/blog/Intellektuelt_privilegium___et_bedre_IP_begrep.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Intellektuelt_privilegium___et_bedre_IP_begrep.html</guid>
                 <pubDate>Sun, 1 Feb 2009 15:06:00 +0100</pubDate>
-               <description>
-&lt;p&gt;Ofte brukes intellektuell eiendom som samlebegrep for opphavsrett,
+               <description>&lt;p&gt;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
@@ -37,11 +36,10 @@ forretningshemmeligheter framover.&lt;/p&gt;
        
        <item>
                <title>Norge trenger en personvernforening</title>
-               <link>../../../Norge_trenger_en_personvernforening.html</link>        
-               <guid isPermaLink="true">../../../Norge_trenger_en_personvernforening.html</guid>
+               <link>http://people.skolelinux.org/pere/blog/Norge_trenger_en_personvernforening.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Norge_trenger_en_personvernforening.html</guid>
                 <pubDate>Sun, 1 Feb 2009 18:35:00 +0100</pubDate>
-               <description>
-&lt;p&gt;De siste årene har jeg forsøkt å få liv i
+               <description>&lt;p&gt;De siste årene har jeg forsøkt å få liv i
 &lt;a href=&quot;http://www.personvern.no/&quot;&gt;foreningen Personvern i Norge&lt;/a&gt;.  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
@@ -59,11 +57,10 @@ nå får vi se om noen er enig.&lt;/p&gt;
        
        <item>
                <title>Min reprap tar sakte form</title>
-               <link>../../../Min_reprap_tar_sakte_form.html</link>        
-               <guid isPermaLink="true">../../../Min_reprap_tar_sakte_form.html</guid>
+               <link>http://people.skolelinux.org/pere/blog/Min_reprap_tar_sakte_form.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Min_reprap_tar_sakte_form.html</guid>
                 <pubDate>Tue, 3 Feb 2009 13:30:00 +0100</pubDate>
-               <description>
-&lt;p&gt;Min reprap begynner å ta form.  Den er nå kommet så langt at den er
+               <description>&lt;p&gt;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
@@ -99,11 +96,10 @@ arbeidet.&lt;/p&gt;
        
        <item>
                <title>Første vellykkede videostrøm fra NUUG</title>
-               <link>../../../F__rste_vellykkede_videostr__m_fra_NUUG.html</link>        
-               <guid isPermaLink="true">../../../F__rste_vellykkede_videostr__m_fra_NUUG.html</guid>
+               <link>http://people.skolelinux.org/pere/blog/F_rste_vellykkede_videostr_m_fra_NUUG.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/F_rste_vellykkede_videostr_m_fra_NUUG.html</guid>
                 <pubDate>Wed, 11 Feb 2009 06:30:00 +0100</pubDate>
-               <description>
-&lt;p&gt;Jeg ble glad for å se under
+               <description>&lt;p&gt;Jeg ble glad for å se under
 &lt;a href=&quot;http://www.nuug.no/aktiviteter/20090210-compiz/&quot;&gt;gårdagens
 medlemsmøte&lt;/a&gt; i NUUG Oslo at utsending av live-video fra møtet
 fungerte for første gang.  Forrige gang ble det ved en teknisk tabbe
@@ -118,11 +114,10 @@ webserver og komprimert.&lt;/p&gt;
        
        <item>
                <title>Endelig er Debian Lenny gitt ut</title>
-               <link>../../../Endelig_er_Debian_Lenny_gitt_ut.html</link>        
-               <guid isPermaLink="true">../../../Endelig_er_Debian_Lenny_gitt_ut.html</guid>
+               <link>http://people.skolelinux.org/pere/blog/Endelig_er_Debian_Lenny_gitt_ut.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Endelig_er_Debian_Lenny_gitt_ut.html</guid>
                 <pubDate>Sun, 15 Feb 2009 11:50:00 +0100</pubDate>
-               <description>
-&lt;p&gt;Endelig er &lt;a href=&quot;http://www.debian.org/&quot;&gt;Debian&lt;/a&gt;
+               <description>&lt;p&gt;Endelig er &lt;a href=&quot;http://www.debian.org/&quot;&gt;Debian&lt;/a&gt;
 &lt;a href=&quot;http://www.debian.org/News/2009/20090214&quot;&gt;Lenny&lt;/a&gt; gitt ut.
 Et langt steg videre for Debian-prosjektet, og en rekke nye
 programpakker blir nå tilgjengelig for de av oss som bruker den
@@ -139,11 +134,10 @@ bootsekvens tilgjengelig i stabil utgave, vha pakken
        
        <item>
                <title>Kart over overvåkningskamera i Norge</title>
-               <link>../../../Kart_over_overv__kningskamera_i_Norge.html</link>        
-               <guid isPermaLink="true">../../../Kart_over_overv__kningskamera_i_Norge.html</guid>
+               <link>http://people.skolelinux.org/pere/blog/Kart_over_overv_kningskamera_i_Norge.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Kart_over_overv_kningskamera_i_Norge.html</guid>
                 <pubDate>Sun, 15 Feb 2009 22:30:00 +0100</pubDate>
-               <description>
-&lt;p&gt;I regi av
+               <description>&lt;p&gt;I regi av
 &lt;a href=&quot;http://www.personvern.no/&quot;&gt;personvernforeningen&lt;/a&gt; har jeg
 startet på
 &lt;a href=&quot;http://personvern.no/wiki/index.php/Kameraovervåkning&quot;&gt;et
@@ -159,18 +153,17 @@ 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 &lt;a
-href=&quot;http://www.openstreetmap.org/&quot;&gt;OpenStreetmap&lt;/a&gt;, sa hentes det
+href=&quot;http://www.openstreetmap.org/&quot;&gt;OpenStreetmap&lt;/a&gt;, så hentes det
 automatisk over i spesialkartet.&lt;/p&gt;
 </description>
        </item>
        
        <item>
                <title>Using bar codes at a computing center</title>
-               <link>../../../Using_bar_codes_at_a_computing_center.html</link>        
-               <guid isPermaLink="true">../../../Using_bar_codes_at_a_computing_center.html</guid>
+               <link>http://people.skolelinux.org/pere/blog/Using_bar_codes_at_a_computing_center.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Using_bar_codes_at_a_computing_center.html</guid>
                 <pubDate>Fri, 20 Feb 2009 08:50:00 +0100</pubDate>
-               <description>
-&lt;p&gt;At work with the University of Oslo, we have several hundred computers
+               <description>&lt;p&gt;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
@@ -216,11 +209,10 @@ easier automatic tracking of computers.&lt;/p&gt;
        
        <item>
                <title>Checking server hardware support status for Dell, HP and IBM servers</title>
-               <link>../../../Checking_server_hardware_support_status_for_Dell__HP_and_IBM_servers.html</link>        
-               <guid isPermaLink="true">../../../Checking_server_hardware_support_status_for_Dell__HP_and_IBM_servers.html</guid>
+               <link>http://people.skolelinux.org/pere/blog/Checking_server_hardware_support_status_for_Dell__HP_and_IBM_servers.html</link>        
+               <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Checking_server_hardware_support_status_for_Dell__HP_and_IBM_servers.html</guid>
                 <pubDate>Sat, 28 Feb 2009 23:50:00 +0100</pubDate>
-               <description>
-&lt;p&gt;At work, we have a few hundred Linux servers, and with that amount
+               <description>&lt;p&gt;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
@@ -255,7 +247,7 @@ 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:&lt;/p&gt;
 
-&lt;p&gt;&lt;pre&gt;
+&lt;pre&gt;
 use LWP::Simple;
 use POSIX;
 use WWW::Mechanize;
@@ -267,7 +259,7 @@ sub get_support_info {
 
     if ( $model =~ m/^Dell / ) {
         # fetch website from Dell support
-        my $url = &quot;http://support.euro.dell.com/support/topics/topic.aspx/emea/shared/support/my_systems_info/no/details?c=no&amp;cs=nodhs1&amp;l=no&amp;s=dhs&amp;ServiceTag=$serial&quot;;
+        my $url = &quot;http://support.euro.dell.com/support/topics/topic.aspx/emea/shared/support/my_systems_info/no/details?c=no&amp;amp;cs=nodhs1&amp;amp;l=no&amp;amp;s=dhs&amp;amp;ServiceTag=$serial&quot;;
         my $webpage = get($url);
         return undef unless ($webpage);
 
@@ -275,14 +267,26 @@ sub get_support_info {
         my @lines = split(/\n/, $webpage);
         foreach my $line (@lines) {
             next unless ($line =~ m/Beskrivelse/);
-            $line =~ s/&lt;[^&gt;]+?&gt;/;/gm;
-            $line =~ m%;(\d{2})/(\d{2})/(\d{4});+(\d{2})/(\d{2})/(\d{4});%g;
-            my $start = &quot;$3-$1-$2&quot;;
-            my $end = &quot;$6-$4-$5&quot;;
-            $str = &quot;$start -&gt; $end&quot;;
+            $line =~ s/&amp;lt;[^&gt;]+?&gt;/;/gm;
+            $line =~ s/^.+?;(Beskrivelse;)/$1/;
+
+            my @f = split(/\;/, $line);
+            @f = @f[13 .. $#f];
+            my $lastend = &quot;&quot;;
+            while ($f[3] eq &quot;DELL&quot;) {
+                my ($type, $startstr, $endstr, $days) = @f[0, 5, 7, 10];
+
+                my $start = POSIX::strftime(&quot;%Y-%m-%d&quot;,
+                                            localtime(str2time($startstr)));
+                my $end = POSIX::strftime(&quot;%Y-%m-%d&quot;,
+                                          localtime(str2time($endstr)));
+                $str .= &quot;$type $start -&gt; $end &quot;;
+                @f = @f[14 .. $#f];
+                $lastend = $end if ($end gt $lastend);
+            }
             my $today = POSIX::strftime(&quot;%Y-%m-%d&quot;, localtime(time));
             tag_machine_unsupported($machine)
-                if ($end lt $today);
+                if ($lastend lt $today);
         }
     } elsif ( $model =~ m/^HP / ) {
         my $mech = WWW::Mechanize-&gt;new();
@@ -301,7 +305,7 @@ sub get_support_info {
         # Next step is screen scraping
         my $content = $mech-&gt;content();
 
-        $content =~ s/&lt;[^&gt;]+?&gt;/;/gm;
+        $content =~ s/&amp;lt;[^&gt;]+?&gt;/;/gm;
         $content =~ s/\s+/ /gm;
         $content =~ s/;\s*;/;;/gm;
         $content =~ s/;[\s;]+/;/gm;
@@ -323,12 +327,13 @@ sub get_support_info {
                 if ($end lt $today);
         }
     } elsif ( $model =~ m/^IBM / ) {
+        # This code ignore extended support contracts.
         my ($producttype) = $model =~ m/.*-\[(.{4}).+\]-/;
-        if ($producttype &amp;&amp; $serial) {
+        if ($producttype &amp;amp;&amp;amp; $serial) {
             my $content =
-                get(&quot;http://www-947.ibm.com/systems/support/supportsite.wss/warranty?action=warranty&amp;brandind=5000008&amp;Submit=Submit&amp;type=$producttype&amp;serial=$serial&quot;);
+                get(&quot;http://www-947.ibm.com/systems/support/supportsite.wss/warranty?action=warranty&amp;amp;brandind=5000008&amp;amp;Submit=Submit&amp;amp;type=$producttype&amp;amp;serial=$serial&quot;);
             if ($content) {
-                $content =~ s/&lt;[^&gt;]+?&gt;/;/gm;
+                $content =~ s/&amp;lt;[^&gt;]+?&gt;/;/gm;
                 $content =~ s/\s+/ /gm;
                 $content =~ s/;\s*;/;;/gm;
                 $content =~ s/;[\s;]+/;/gm;
@@ -346,22 +351,27 @@ sub get_support_info {
     }
     return $str;
 }
-&lt;/pre&gt;&lt;/p&gt;
+&lt;/pre&gt;
 
 &lt;p&gt;Here are some examples on how to use the function, using fake
 serial numbers.  The information passed in as arguments are fetched
 from dmidecode.&lt;/p&gt;
 
-&lt;p&gt;&lt;pre&gt;
+&lt;pre&gt;
 print get_support_info(&quot;hp.host&quot;, &quot;HP ProLiant BL460c G1&quot;, &quot;1234567890&quot;
                        &quot;447707-B21&quot;);
 print get_support_info(&quot;dell.host&quot;, &quot;Dell Inc. PowerEdge 2950&quot;, &quot;1234567&quot;);
 print get_support_info(&quot;ibm.host&quot;, &quot;IBM eserver xSeries 345 -[867061X]-&quot;,
                        &quot;1234567&quot;);
-&lt;/pre&gt;&lt;/p&gt;
+&lt;/pre&gt;
 
 &lt;p&gt;I would recommend this approach for tracking support contracts for
-everyone with more than a new computers to administer. :)&lt;/p&gt;
+everyone with more than a few computers to administer. :)&lt;/p&gt;
+
+&lt;p&gt;Update 2009-03-06: The IBM page do not include extended support
+contracts, so it is useless in that case.  The original Dell code do
+not handle extended support contracts either, but has been updated to
+do so.&lt;/p&gt;
 </description>
        </item>