<?xml version="1.0" encoding="utf-8" ?>

<rss version="2.0" 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   >
<channel>
    <title>ixs' Vodkamelone - Fedora</title>
    <link>http://blog.wodkamelone.de/</link>
    <description>rants and raves...</description>
    <dc:language>de</dc:language>
    <admin:errorReportsTo rdf:resource="mailto:" />
    <generator>Serendipity 1.3-beta1 - http://www.s9y.org/</generator>
    
    <image>
        <url>http://blog.wodkamelone.de/templates/default/img/s9y_banner_small.png</url>
        <title>RSS: ixs' Vodkamelone - Fedora - rants and raves...</title>
        <link>http://blog.wodkamelone.de/</link>
        <width>100</width>
        <height>21</height>
    </image>

<item>
    <title>A little shell spinner</title>
    <link>http://blog.wodkamelone.de/archives/167-A-little-shell-spinner.html</link>
            <category>Fedora</category>
            <category>Unix</category>
    
    <comments>http://blog.wodkamelone.de/archives/167-A-little-shell-spinner.html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=167</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=167</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    Sometimes you want to see if a connection to a remote system is still alive or you just want to keep it alive by transmitting some data.

I&#039;ve found the following little shell one-liner to be quite useful:

&lt;pre&gt;$ while true; do for i in &#039;|&#039; &#039;/&#039; &#039;-&#039; &#039;\&#039;; do echo -n $i; sleep 0.25; echo -ne &#039;\b&#039;; done; done&lt;/pre&gt;

This will create a little ascii spinner and keep a line spinning until you press CTRL-C.
 
    </content:encoded>

    <pubDate>Tue, 13 Sep 2011 11:03:05 +0200</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/167-guid.html</guid>
    
</item>
<item>
    <title>FrOSCon</title>
    <link>http://blog.wodkamelone.de/archives/166-FrOSCon.html</link>
            <category>Fedora</category>
    
    <comments>http://blog.wodkamelone.de/archives/166-FrOSCon.html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=166</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=166</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;&lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.christoph-wickert.de/blog/2011/08/26/looking-back-at-froscon-2011/&#039;);&quot;  href=&quot;http://www.christoph-wickert.de/blog/2011/08/26/looking-back-at-froscon-2011/&quot;&gt;Christoph Wickert already wrote a lot about FrOSCon 2011&lt;/a&gt; so I do not have to add much. Thank god for that as I find blogging to be rather tedious lately...&lt;/p&gt;
&lt;p&gt;Suffice to say the conference was great fun.&lt;/p&gt;
&lt;p&gt;Even though I wasn&#039;t at FrOSCon for Fedora but for my employer &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/booking.com&#039;);&quot;  href=&quot;http://booking.com&quot;&gt;Booking.com&lt;/a&gt;, who was one of the FrOSCon sponsors, I still managed to spend quite some time with the fellow Fedora people. I even got roped into providing a talk during the Fedora Activity Day.&lt;/p&gt;
&lt;p&gt;As a topic I chose &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedorahosted.org/func/&#039;);&quot;  href=&quot;http://fedorahosted.org/func/&quot; title=&quot;Fedora Unified Network Controller&quot;&gt;func&lt;/a&gt;, a remote execution framework we have been using quite successfully at Booking for automating a lot of processes.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://blog.wodkamelone.de/uploads/FrOSCon2011-FedoraActivityDay-Func-AndreasThienemann.pdf&quot; title=&quot;FrOSCon2011-FedoraActivityDay-Func-AndreasThienemann.pdf&quot;&gt;&lt;!-- s9ymdb:190 --&gt;&lt;img class=&quot;serendipity_image_left&quot; width=&quot;800&quot; height=&quot;600&quot; style=&quot;border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/FrOSCon2011-FedoraActivityDay-Func-AndreasThienemann-Slide1.jpg&quot; alt=&quot;&quot;  /&gt;&lt;br /&gt;
For the people who either missed the talk or want the slides for later reference, the slidedeck is available as a PDF.&lt;/a&gt;&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Sun, 28 Aug 2011 15:11:37 +0200</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/166-guid.html</guid>
    
</item>
<item>
    <title>Fedora 15, not as bad as people claim...</title>
    <link>http://blog.wodkamelone.de/archives/165-Fedora-15,-not-as-bad-as-people-claim....html</link>
            <category>Fedora</category>
    
    <comments>http://blog.wodkamelone.de/archives/165-Fedora-15,-not-as-bad-as-people-claim....html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=165</wfw:comment>

    <slash:comments>3</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=165</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;Reading &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/planet.fedoraproject.org&#039;);&quot;  href=&quot;http://planet.fedoraproject.org&quot; title=&quot;Fedora planet&quot;&gt;the fedora planet&lt;/a&gt; I got the impression that the &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/wordshack.wordpress.com/2011/03/08/fedora-15-alpha-is-now-available/&#039;);&quot;  href=&quot;http://wordshack.wordpress.com/2011/03/08/fedora-15-alpha-is-now-available/&quot;&gt;new Fedora 15 alpha release&lt;/a&gt; must suck.&lt;/p&gt;

&lt;p&gt;This impression is mostly based on &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/nicubunu.blogspot.com/2011/03/breaking-news-fedora-15-beta-leaked-now.html&#039;);&quot;  href=&quot;http://nicubunu.blogspot.com/2011/03/breaking-news-fedora-15-beta-leaked-now.html&quot; title=&quot;Breaking News: Fedora 15 *Beta* leaked! Now with desktop icons!&quot;&gt;the screenshots&lt;/a&gt; &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/nicubunu.blogspot.com/&#039;);&quot;  href=&quot;http://nicubunu.blogspot.com/&quot;&gt;Nicu&lt;/a&gt; posted as well &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/nicubunu.blogspot.com/2011/03/preview-fedora-15-gnome-30-skippable.html&#039;);&quot;  href=&quot;http://nicubunu.blogspot.com/2011/03/preview-fedora-15-gnome-30-skippable.html&quot; title=&quot;[p]review: Fedora 15 + GNOME 3.0, a skippable release&quot;&gt;as the accompanying, vicious review&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Having seen these, I naturally had to try the new F15 release for myself to see what this is all about.&lt;/p&gt;

&lt;p&gt;Having booted it up in a virtual machine I am now ready to proclaim that &lt;strong&gt;Fedora 15 does not suck&lt;/strong&gt;. The system greets me the same way prior releases did and the only noticable difference is a different release name and newer kernel release.&lt;/p&gt;

&lt;p&gt;&lt;!-- s9ymdb:188 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;720&quot; height=&quot;400&quot; style=&quot;border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/lovelock-shell.png&quot; alt=&quot;&quot;  /&gt;&lt;/p&gt;

&lt;p&gt;However, in the few minutes I spent with the new release I have to say that I already found two bugs:&lt;br /&gt;
After switching to the graphical login screen with gdm3, the screen becomes garbled. Suddenly the background is full of scanlines reminding me of the old days when I didn&#039;t had the correct modeline in the /etc/X11/X11.conf file.&lt;br /&gt;
I was assured however on IRC, that my hardware is not broken and this is the normal design for the Alpha release and the final one will not destroy my display. Thank god for that.&lt;/p&gt;

&lt;p&gt;The other bug is that after ignoring the garbled screen and actually logging in, the desktop has become totally broken and hideous. Black and grey bars are alternating and hurting my eyes, functionality is missing, I have to switch constantly to the command line to change settings etc...&lt;/p&gt;

&lt;p&gt;Again however the friendly people on the IRC channel came to the rescue and informed me that this is a known bug (tracked in the ohh so aptly named &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/bugzilla.redhat.com/show_bug.cgi?id=678116&#039;);&quot;  href=&quot;https://bugzilla.redhat.com/show_bug.cgi?id=678116&quot;&gt;F15GnomeFAIL&lt;/a&gt; tracker) and it is actually not a software bug but human error.&lt;br /&gt;
It seems I just picked the wrong iso image thinking that the Desktop-ISO is actually for the Desktop. It looks like this is a common mistake and the real Desktop Spin is further down on the Download page. Silly me, we obviously have to better educate our Target Audience to pick the right image.&lt;/p&gt;

&lt;p&gt;While I am actually very interested in seeing what the Gnome3 shell actually has to offer, this is not the release to do so. I seriously ask myself if this is the most unfinished and broken-by-default Fedora release there ever was. The Go/No-Go meeting should have just taken the hard decision and delayed the F15 release by 6 months. Maybe then this would look more like a release and less than a trainwreck.&lt;br/&gt;
I am basically disgusted at this point.&lt;/p&gt;  
    </content:encoded>

    <pubDate>Wed,  9 Mar 2011 01:07:01 +0100</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/165-guid.html</guid>
    
</item>
<item>
    <title>Monitoring a Snom phone with MRTG through SNMP</title>
    <link>http://blog.wodkamelone.de/archives/163-Monitoring-a-Snom-phone-with-MRTG-through-SNMP.html</link>
            <category>Fedora</category>
            <category>Hardware</category>
            <category>Unix</category>
    
    <comments>http://blog.wodkamelone.de/archives/163-Monitoring-a-Snom-phone-with-MRTG-through-SNMP.html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=163</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=163</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;&lt;!-- s9ymdb:129 --&gt;&lt;img class=&quot;serendipity_image_left&quot; width=&quot;110&quot; height=&quot;102&quot; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/snom360_angle.serendipityThumb.jpg&quot; alt=&quot;&quot;  /&gt;&lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/en.wikipedia.org/wiki/Snom&#039;);&quot;  href=&quot;http://en.wikipedia.org/wiki/Snom&quot; title=&quot;Snom at Wikipedia&quot;&gt;Snom&lt;/a&gt; is the maker of pretty decent VoIP phones running Linux. I have had a &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/wiki.snom.com/Snom360&#039;);&quot;  href=&quot;http://wiki.snom.com/Snom360&quot; title=&quot;Snom360 Wiki&quot;&gt;Snom 360&lt;/a&gt; for some time now and am reasonably happy with it.&lt;/p&gt;

&lt;p&gt;The Snom phones do support SNMP but their SNMP daemon is severly limited. It only supports GETs on a small number of OIDs, doesn&#039;t support WALK and standard MIBs like the system-MIB are not supported. The Snom Wiki has &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/wiki.snom.com/Networking/Simple_Network_Management_Protocol_%28SNMP%29&#039;);&quot;  href=&quot;http://wiki.snom.com/Networking/Simple_Network_Management_Protocol_%28SNMP%29&quot; title=&quot;Snom SNMP Support&quot;&gt;a list of the supported OIDs and a description how to enable SNMP on the phones&lt;/a&gt;.&lt;br /&gt;
The limited support makes autodetection by network management systems or MRTG&#039;s cfgmaker fail. In order to chart this data, a manually created template is therefore needed.&lt;/p&gt;

&lt;h5&gt;Traffic Monitoring (bytes) a Snom Phone&lt;/h5&gt;
The Snom phone exports all it&#039;s interfaces aggregated. This means all vlans and locally generated traffic. The only traffic not exported is the traffic generated on the loopback interface and the traffic bypassing the phone completely via the internal switch. The latter means that the traffic of the machine connected to the PC/passthrough port is not monitored.

The MRTG template to chart the incoming and outgoing bytes is the following. The IP Address 192.168.2.124 would have to be changed, as well as the descriptive details.

&lt;div class=&quot;geshi&quot; style=&quot;text-align: left&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;######################################################################&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;# System: Snom360&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;# Description: Snom VoIP Phone&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;# Contact: System Administration &amp;lt;root@localhost&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;# Location: Amsterdam, The Netherlands&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;######################################################################&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;### Interface Net &amp;gt;&amp;gt; Descr: &#039;Net&#039; | Name: &#039;Net Port&#039; | Ip: &#039;192.168.2.124&#039; | Eth: &#039;&#039; ###&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Target&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_byte&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: &lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;3&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;6&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;7526&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;&amp;amp;&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;3&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;6&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;7526&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;:&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;public&lt;/span&gt;@&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;&lt;br /&gt;RouterUptime&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_byte&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: &lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;3&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;6&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;7526&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;8&lt;/span&gt;:&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;public&lt;/span&gt;@&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;&lt;br /&gt;SetEnv&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_byte&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: MRTG_INT_IP=&lt;span style=&quot;color: #0000ff;&quot;&gt;&quot;&quot;&lt;/span&gt; MRTG_INT_DESCR=&lt;span style=&quot;color: #0000ff;&quot;&gt;&quot;Net&quot;&lt;/span&gt;&lt;br /&gt;MaxBytes&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_byte&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: &lt;span style=&quot;color: #cc66cc;&quot;&gt;12500000&lt;/span&gt;&lt;br /&gt;Title&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_byte&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: Traffic Analysis &lt;span style=&quot;color: #b1b100;&quot;&gt;for&lt;/span&gt; Net -- &lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;&lt;br /&gt;PageTop&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_byte&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: &amp;lt;h1&amp;gt;Traffic Analysis &lt;span style=&quot;color: #b1b100;&quot;&gt;for&lt;/span&gt; Net -- &lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;&amp;lt;/h1&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;div id=&lt;span style=&quot;color: #0000ff;&quot;&gt;&quot;sysdetails&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;table&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;System:&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt; in Amsterdam&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;Maintainer:&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;root@localhost&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;Description:&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;Net Port&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;ifType:&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;ethernetCsmacd &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;6&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;Max Speed:&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;&amp;#160;&amp;lt;td&amp;gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;100&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt; Mbits/s&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;&amp;#160;&amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;/table&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;#160;&lt;/div&gt;

&lt;h5&gt;Traffic Monitoring (packets) a Snom Phone&lt;/h5&gt;
The setup to monitor packets is basically the same as for traffic. MRTG can do this out of the box and only needs labels changed.

&lt;div class=&quot;geshi&quot; style=&quot;text-align: left&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;######################################################################&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;# System: Snom360&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;# Description: Snom VoIP Phone&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;# Contact: System Administration &amp;lt;root@localhost&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;# Location: Amsterdam, The Netherlands&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;######################################################################&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;### Interface Net &amp;gt;&amp;gt; Descr: &#039;Net&#039; | Name: &#039;Net Port&#039; | Ip: &#039;192.168.2.124&#039; | Eth: &#039;&#039; ###&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Target&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: &lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;3&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;6&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;7526&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&amp;amp;&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;3&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;6&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;7526&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;:&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;public&lt;/span&gt;@&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;&lt;br /&gt;RouterUptime&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: &lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;3&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;6&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;7526&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;8&lt;/span&gt;:&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;public&lt;/span&gt;@&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;&lt;br /&gt;SetEnv&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: MRTG_INT_IP=&lt;span style=&quot;color: #0000ff;&quot;&gt;&quot;&quot;&lt;/span&gt; MRTG_INT_DESCR=&lt;span style=&quot;color: #0000ff;&quot;&gt;&quot;Net&quot;&lt;/span&gt;&lt;br /&gt;MaxBytes&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: &lt;span style=&quot;color: #cc66cc;&quot;&gt;10000000&lt;/span&gt;&lt;br /&gt;Title&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: Traffic Analysis &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;packets&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;for&lt;/span&gt; Net -- &lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;&lt;br /&gt;YLegend&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: Pkts per Second&lt;br /&gt;Legend1&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: Avg Input Unicast Packets&lt;br /&gt;Legend2&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: Avg Output Unicast Packets&lt;br /&gt;Legend3&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: Maximal Input Unicast Packets&lt;br /&gt;Legend4&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: Maximal Output Unicast Packets&lt;br /&gt;LegendI&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: &amp;amp;nbsp;ifInUcastPkts:&amp;amp;nbsp;&lt;br /&gt;LegendO&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: &amp;amp;nbsp;IfOutUcastPkts:&amp;amp;nbsp;&lt;br /&gt;ShortLegend&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: p/s&lt;br /&gt;PageTop&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;_Net_pkts&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;: &amp;lt;h1&amp;gt;Traffic Analysis &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;packets&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;for&lt;/span&gt; Net -- &lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt;&amp;lt;/h1&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;div id=&lt;span style=&quot;color: #0000ff;&quot;&gt;&quot;sysdetails&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;table&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;System:&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;192&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;168&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;.&lt;span style=&quot;color: #cc66cc;&quot;&gt;124&lt;/span&gt; in Amsterdam&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;Maintainer:&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;root@localhost&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;Description:&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;Net Port&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;ifType:&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;td&amp;gt;ethernetCsmacd &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;6&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;/table&amp;gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;#160;&lt;/div&gt;

&lt;p&gt;Some other values worth charting could be CPU load and free memory or the number of registered extensions. This could be useful for tracking down errors. Unfortunately, mrtg is unable to chart this correctly out of the box and needs some help converting the data.&lt;br /&gt;
This is therefore left as an excercise to the reader.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Fri, 28 Jan 2011 10:58:57 +0100</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/163-guid.html</guid>
    
</item>
<item>
    <title>VirtualBox USB support on Fedora. The right way.</title>
    <link>http://blog.wodkamelone.de/archives/160-VirtualBox-USB-support-on-Fedora.-The-right-way..html</link>
            <category>Fedora</category>
            <category>Unix</category>
    
    <comments>http://blog.wodkamelone.de/archives/160-VirtualBox-USB-support-on-Fedora.-The-right-way..html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=160</wfw:comment>

    <slash:comments>5</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=160</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;&lt;!-- s9ymdb:184 --&gt;&lt;img class=&quot;serendipity_image_left&quot; width=&quot;256&quot; height=&quot;256&quot; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/drive-harddisk-usb.png&quot; alt=&quot;&quot;  /&gt;The &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.virtualbox.org/wiki/Editions&#039;);&quot;  href=&quot;http://www.virtualbox.org/wiki/Editions&quot; title=&quot;Editions - Virtual Box&quot;&gt;proprietary version of Oracle VirtualBox&lt;/a&gt; does offer USB support.&lt;br /&gt;
This means that the guest operating system can access USB devices plugged into the host system.&lt;/p&gt;

&lt;p&gt;This USB passthrough feature is also available with many other desktop virtualization solutions, e.g. KVM and Qemu. Nevertheless it seems VirtualBox is favoured by a large number of users who are installing VirtualBox only to find that they cannot actually make their USB devices visible to the guest operating system. The common problem seems to be that they checkboxes next to the devices are grayed out, preventing the user from marking them to be added to the guest.&lt;/p&gt;

&lt;p&gt;There are a large number of forum articles and blog posts available which all claim to have a solution to the issue. Very often the suggested solution is to change the mount options for /proc/bus/usb in fstab or add an appropriate entry. Sometimes it is suggested to mount usbdevfs to /sys/bus/usb/drivers. Some report success by editing certain udev rules so that files the in the procfs belong to the user executing the VirtualBox binary.&lt;/p&gt;

&lt;p&gt;All these solutions have one thing in common:&lt;br /&gt;
&lt;b&gt;They are all wrong!&lt;/b&gt;&lt;br /&gt;
The fact that they are mindlessly repeated by posters in a large number of user-centric web forums does not help at all.&lt;br /&gt;
It is still wrong!&lt;br /&gt;
&lt;a href=&quot;http://blog.vodkamelone.de/archives/143-Abysmal-harddrive-performance-and-the-uselessness-of-forums.html&quot; title=&quot;The uselessness of forums &quot;&gt;I said it before&lt;/a&gt; but it still is true: Web forums are full of cargo-cult users: No idea what they are doing but trying and talking about it in the hope that it will achieve something.&lt;/p&gt;

&lt;p&gt;The right solution is actually very simple. All that is needed is to add the user  running VirtualBox to the vboxusers group:
&lt;pre class=&quot;screen&quot;&gt;[root@minos ~]# usermod -a -G vboxusers athienemann
[root@minos ~]# groups athienemann
athienemann : athienemann vboxusers
[root@minos ~]# &lt;/pre&gt;

&lt;p&gt;That&#039;s all. The user athienemann now can add and remove USB devices from VirtualBox guests.&lt;br /&gt;
Wasn&#039;t that easy? No fiddling with udev or fstab needed.&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Sun,  7 Nov 2010 14:08:29 +0100</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/160-guid.html</guid>
    
</item>
<item>
    <title>BTRFS und die Lizenz...</title>
    <link>http://blog.wodkamelone.de/archives/157-BTRFS-und-die-Lizenz....html</link>
            <category>Fedora</category>
            <category>Unix</category>
    
    <comments>http://blog.wodkamelone.de/archives/157-BTRFS-und-die-Lizenz....html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=157</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=157</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;Mein &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/blog.koehntopp.de&#039;);&quot;  href=&quot;http://blog.koehntopp.de&quot;&gt;geschätzter Kollege Kris&lt;/a&gt; schreibt etwas über &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/blog.koehntopp.de/archives/2566-Unix-Standards.html&#039;);&quot;  href=&quot;http://blog.koehntopp.de/archives/2566-Unix-Standards.html&quot;&gt;Unix und Standards&lt;/a&gt;. Neben der Tatsache dass das schöne an Standards ist, dass es so viele gibt und man sich einen aussuchen kann, erwähnte Kris auch die Befürchtung dass BTRFS möglicherweise relizensiert werden könnte.&lt;/p&gt;

&lt;p&gt;Die Gefahrt dass BTRFS relizensiert wird besteht nicht.&lt;/p&gt;

Zwar wurde die BTRFS Entwicklung bzw. der BTRFS-Haupt-Entwickler durch Oracle finanziert, der Code selber befindet sich jedoch mittlerweile im Upstream-Tree des Kernels. Damit gilt die GPL2 und diese Lizensierung kann nachträglich nicht geändert werden.&lt;br /&gt;
Eine andere Lizenz würde nur für zukünftige Versionen relevant sein.&lt;/p&gt;

&lt;p&gt;In diesem Fall kann die relizensierte Version als Fork angesehen werden und die bekannten Probleme kommen dann zur Geltung.&lt;br /&gt;
Der Spruch mit Eiche und Sau dürfte in diesem Fall nicht unangebracht sein.&lt;/p&gt;

Passend dazu hat die aktuelle Ausgabe der &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/lwn.net&#039;);&quot;  href=&quot;http://lwn.net&quot;&gt;Linux Weekly News&lt;/a&gt; eine &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/lwn.net/SubscriberLink/342892/64d645b2d3364c5b/&#039;);&quot;  href=&quot;http://lwn.net/SubscriberLink/342892/64d645b2d3364c5b/&quot;&gt;schöne Erklärung der technischen Features und der Architektur von BTRFS und erklärt nebenbei die Entstehungsgeschichte und warum es viel besser ist als ZFS&lt;/a&gt;.   
    </content:encoded>

    <pubDate>Mon, 27 Jul 2009 00:20:33 +0200</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/157-guid.html</guid>
    
</item>
<item>
    <title>LinuxTag 2009 Recap - Day One</title>
    <link>http://blog.wodkamelone.de/archives/156-LinuxTag-2009-Recap-Day-One.html</link>
            <category>Fedora</category>
    
    <comments>http://blog.wodkamelone.de/archives/156-LinuxTag-2009-Recap-Day-One.html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=156</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=156</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;My first day at LinuxTag was rather uneventful as I only arrived in Berlin during the evening and thus couldn&#039;t attend the fair during the day. In short, the day looked as follows:&lt;/p&gt;

&lt;p&gt;Took the car to Berlin, went directly to the hotel, handed the car off, dropped off the luggage and went for Dinner with the other Fedora guys waiting in front of the hotel.&lt;/p&gt;

&lt;p&gt;Dinner was at a steakhouse a few minutes from the hotel and was enjoyable. The steak was nice and the opportunity to catch up on things with &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/User:Andreasr&#039;);&quot;  href=&quot;https://fedoraproject.org/wiki/User:Andreasr&quot;&gt;Andreas&lt;/a&gt;, &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/User:Cwickert&#039;);&quot;  href=&quot;https://fedoraproject.org/wiki/User:Cwickert&quot;&gt;Christoph&lt;/a&gt;, &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/User:Fab&#039;);&quot;  href=&quot;https://fedoraproject.org/wiki/User:Fab&quot;&gt;Fabian&lt;/a&gt;, &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/User:Geroldka&#039;);&quot;  href=&quot;https://fedoraproject.org/wiki/User:Geroldka&quot;&gt;Gerold&lt;/a&gt;, &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/User:Robert&#039;);&quot;  href=&quot;https://fedoraproject.org/wiki/User:Robert&quot;&gt;Robert&lt;/a&gt;, &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/User:Red&#039;);&quot;  href=&quot;https://fedoraproject.org/wiki/User:Red&quot;&gt;Sandro&lt;/a&gt; and &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/User:Twoerner&#039;);&quot;  href=&quot;https://fedoraproject.org/wiki/User:Twoerner&quot;&gt;Thomas&lt;/a&gt; was even better.&lt;/p&gt;

&lt;p&gt;Afterwards we returned to the Hotel and spent a few hours in the lobby, chatting some more with the other Fedora people sharing the same hotel. As the night was still young we moved outside to a few tables in front of the hotel, enjoying the warm summer night and exchanging some more gossip and ranting about the things in Fedora which made us unhappy.&lt;/p&gt;

&lt;p&gt;After all, a very nice first day where I could catch up with old friends and had the ability to make some new acquaintances.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Tue, 30 Jun 2009 01:30:49 +0200</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/156-guid.html</guid>
    
</item>
<item>
    <title>Dear FUDCon</title>
    <link>http://blog.wodkamelone.de/archives/155-Dear-FUDCon.html</link>
            <category>Fedora</category>
    
    <comments>http://blog.wodkamelone.de/archives/155-Dear-FUDCon.html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=155</wfw:comment>

    <slash:comments>3</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=155</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;17&quot; height=&quot;32&quot; style=&quot;border: 0px; padding-left: 0px; padding-right: 0px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/writing/DD.GIF&quot; alt=&quot;&quot;  /&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;11&quot; height=&quot;32&quot; style=&quot;border: 0px; padding-left: 0px; padding-right: 0x;&quot; src=&quot;http://blog.wodkamelone.de/uploads/writing/e.GIF&quot; alt=&quot;&quot;  /&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;12&quot; height=&quot;32&quot; style=&quot;border: 0px; padding-left: 0px; padding-right: 0px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/writing/a.GIF&quot; alt=&quot;&quot;  /&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;9&quot; height=&quot;32&quot; style=&quot;border: 0px; padding-left: 0px; padding-right: 0px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/writing/r.GIF&quot; alt=&quot;&quot;  /&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;14&quot; height=&quot;32&quot; style=&quot;border: 0px; padding-left: 0px; padding-right: 0px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/writing/space.GIF&quot; alt=&quot;&quot;  /&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;14&quot; height=&quot;32&quot; style=&quot;border: 0px; padding-left: 0px; padding-right: 0px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/writing/FF.GIF&quot; alt=&quot;&quot;  /&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;12&quot; height=&quot;32&quot; style=&quot;border: 0px; padding-left: 0px; padding-right: 0px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/writing/UU.GIF&quot; alt=&quot;&quot;  /&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;17&quot; height=&quot;32&quot; style=&quot;border: 0px; padding-left: 0px; padding-right: 0px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/writing/DD.GIF&quot; alt=&quot;&quot;  /&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;17&quot; height=&quot;32&quot; style=&quot;border: 0px; padding-left: 0px; padding-right: 0px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/writing/CC.GIF&quot; alt=&quot;&quot;  /&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;10&quot; height=&quot;32&quot; style=&quot;border: 0px; padding-left: 0px; padding-right: 0px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/writing/o.GIF&quot; alt=&quot;&quot;  /&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;10&quot; height=&quot;32&quot; style=&quot;border: 0px; padding-left: 0px; padding-right: 0px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/writing/n.GIF&quot; alt=&quot;&quot;  /&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;6&quot; height=&quot;32&quot; style=&quot;border: 0px; padding-left: 0px; padding-right: 0px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/writing/comma.GIF&quot; alt=&quot;&quot;  /&gt;&lt;/p&gt;

&lt;p&gt;I enjoy you immensly, it&#039;s been great meting old friends and making some new ones. Furthermore you are perfect for catching up with some former colleagues, other developers and for talking about lingering issues in a much more sensible setting than a mailing list filled with people with too much time for pointless bickering.&lt;/p&gt;

&lt;p&gt;Ignore the people claiming that you&#039;re at the wrong time, the wrong location or the wrong anything. Sure, you&#039;re not always next door and sometimes you&#039;re even at the other end of the world. I won&#039;t be attending you in such cases, but there&#039;s always a FUDCon closer by which is worth it. Ignore the haters, they are just cramping your style.&lt;p&gt;

&lt;p&gt;But talking about style, I would really, really pretty please with sugar on top have you offering a more relaxed setting for conducting chats between a small group of people or just one-on-one talks. You have something called a lounge, but it&#039;s not really conductive for staying longer, the chairs are horrible. And your little brother FUDPub is too wild. No time there.&lt;br /&gt;
So please FUDCon, improve your style a bit and make your &amp;quot;lounge&amp;quot; a real lounge. I&#039;ll love you for that even more.&lt;/p&gt;

&lt;p&gt;I&#039;m thinking about something like that here:&lt;br /&gt;
&lt;div class=&quot;serendipity_imageComment_center&quot; style=&quot;width: 110px&quot;&gt;&lt;div class=&quot;serendipity_imageComment_img&quot;&gt;&lt;a class=&#039;serendipity_image_link&#039; href=&#039;http://blog.wodkamelone.de/uploads/Narita-sakura-lounge.jpg&#039;&gt;&lt;!-- s9ymdb:183 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;110&quot; height=&quot;73&quot; src=&quot;http://blog.wodkamelone.de/uploads/Narita-sakura-lounge.serendipityThumb.jpg&quot; alt=&quot;&quot;  /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;serendipity_imageComment_txt&quot;&gt;Sakura Lounge for Japan Airlines at Narita Airport Terminal 2 by Hirohisat&lt;/div&gt;&lt;/div&gt;&lt;/p&gt;

&lt;p&gt;Your biggest fan&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sat, 27 Jun 2009 13:35:03 +0200</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/155-guid.html</guid>
    
</item>
<item>
    <title>No good deed goes unpunished.</title>
    <link>http://blog.wodkamelone.de/archives/154-No-good-deed-goes-unpunished..html</link>
            <category>Fedora</category>
    
    <comments>http://blog.wodkamelone.de/archives/154-No-good-deed-goes-unpunished..html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=154</wfw:comment>

    <slash:comments>3</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=154</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;I&#039;ve been traveling to Amsterdam today and as usual for airtravel, you spend an awful lot of time with the security theater. Today cost me about ~15 minutes. Unlike the normal horror stories however, today was a notable exception. In fact, what happened today at the security checkpoint of the Stuttgart airport was a very interesting experience.&lt;/p&gt;

&lt;p&gt;I was asked to take my notebook out of my bag and put it on the belt by itself.  Easily done. Usually the security guys ask you to switch it on for a moment. No idea why that is though.&lt;br /&gt;
Anyway, this time it was a bit different, the security guy asked me if the notebook sporting the Linux advertisement (lovingly applied by Alex Maier) is actually running Linux. After confirming this and stating that it&#039;s only natural as I&#039;ve been with Red Hat in the past, was wearing my Spacewalk Hacker shirt and am still doing Fedora work, the guy was very happy as he seemingly could vent his frustration with Linux at someone knowledgable.&lt;/p&gt;

&lt;p&gt;The security guy was telling me that he&#039;s been using Linux in the past, but it&#039;s just not user friendly enough. His pet peeve was the need to mount and unmount removable media.&lt;br /&gt;
Especially the unmounting was a major hassle for him as it makes working with the system difficult for the inexperienced user.&lt;br /&gt;
I explained to him the technical reasons why the system is acting as it is, how the filesystem cache is playing it&#039;s part and the need to sync data before being able to remove a disk and how the eject button on his cd drive is disabled. After having explained the technical details of the kernel, I told him that the current Desktops do automounting of CDs and other removable media but that I wasn&#039;t sure about removal. This should at least partly solve his problem with the mounting. About unmounting, I have no idea as it has been more than 5 years since I last touched a CD. Fast Networks and PXE all but obsoleted optical media for my use-cases.&lt;/p&gt;

&lt;p&gt;After this was cleared up, he mentioned another problem he considered important: The claimed amount of technical knowledge needed to expertly use linux.&lt;br /&gt;
I tried explaining my point of view, that a certain amount of technical knowledge is immensely helpful in order to understand the system and thus being able to spot problems and fix them accordingly. Without the technical knowledge, which can be picked up rapidly by the way, the user would be forced to always get help from a third party for each small problem. Not optimal either.&lt;br /&gt;
At the same time however, I stressed the fact that the current distributions are all trying very hard to be usable, even for the inexperienced user.&lt;/p&gt;

&lt;p&gt;As a good deed for the day, I mentioned that F11 is being released today and that he should give the Live-CD a shot, he might like it. The security guy was countering that the Live-CD might be nice, but what he would really like is a Live-USB media with persistent storage. Luckily, Fedora can score big time here and satisfy that requirement: Live USB with added persistence was one of the main features touted at last year&#039;s Linuxtag.&lt;/p&gt;

&lt;p&gt;As I had to leave for my plane which was starting to board, I left a business card with my personal email address and asked 
the guy to please report back on his experience with the Live-USB. Feedback is always good, especially if it is about a failure in our system.&lt;br /&gt;
It might give us some nice usability data and show where we can improve our documentation or presentation.&lt;br /&gt;
Anyone in Fedoraland interested in the possible follow-up?&lt;/p&gt;

&lt;p&gt;But as interesting that chat was, no good deed goes unpunished:  I&#039;ll have to find out now where these imbeciles in Schiphol lost my luggage with my documents and all clothes for tomorrow&#039;s meeting and my hayfever medicine.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;*RAGE*&lt;br /&gt;
HATE U!&lt;/b&gt;&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Tue,  9 Jun 2009 23:20:48 +0200</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/154-guid.html</guid>
    
</item>
<item>
    <title>Don't blame me, I voted for the right guy.</title>
    <link>http://blog.wodkamelone.de/archives/153-Dont-blame-me,-I-voted-for-the-right-guy..html</link>
            <category>Fedora</category>
    
    <comments>http://blog.wodkamelone.de/archives/153-Dont-blame-me,-I-voted-for-the-right-guy..html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=153</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=153</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;Today it&#039;s voting day for me. As &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.braincache.de/wp/2009/06/07/european-election/&#039;);&quot;  href=&quot;http://www.braincache.de/wp/2009/06/07/european-election/&quot;&gt;Hendrik&lt;/a&gt; already mentioned, it&#039;s time to vote for the European Parliament.&lt;/p&gt;

&lt;p&gt;Besides that, I had to fill in three local ballots. One for my town council, and two times for the regional council.&lt;/p&gt;

&lt;p&gt;But there&#039;s an even more important vote going on: Fedora has three elections running, one for the next Release name, one deciding about 5 seats on the next &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/Development/SteeringCommittee&#039;);&quot;  href=&quot;http://fedoraproject.org/wiki/Development/SteeringCommittee&quot;&gt;FESCO&lt;/a&gt; and three seats for the &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/Board&#039;);&quot;  href=&quot;http://fedoraproject.org/wiki/Board&quot;&gt;Board&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Unfortunately my preferred candidate, Cthulhu, wasn&#039;t running for any of the elections which meant I indeed had to settle for the lesser evil.&lt;br /&gt;&lt;!-- s9ymdb:170 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;420&quot; height=&quot;420&quot; style=&quot;border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/cthulhu.jpg&quot; alt=&quot;&quot;  /&gt;&lt;/p&gt;

&lt;p&gt;In case you haven&#039;t voted yet, do so at &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/admin.fedoraproject.org/voting/&#039;);&quot;  href=&quot;https://admin.fedoraproject.org/voting/&quot;&gt;https://admin.fedoraproject.org/voting/&lt;/a&gt;.&lt;br /&gt;
You can find out about the candidates and their platforms at &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/Development/SteeringCommittee/Nominations&#039;);&quot;  href=&quot;http://fedoraproject.org/wiki/Development/SteeringCommittee/Nominations&quot;&gt;the nominataion page for FESCO&lt;/a&gt; or &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/Board/Elections/Nominations&#039;);&quot;  href=&quot;http://fedoraproject.org/wiki/Board/Elections/Nominations&quot;&gt;the nomination page for the Board&lt;/a&gt;.&lt;br /&gt;
Another good way of understanding the candidates and their intentions is the Questionaire every candidate was asked to fill in. This was the first time we&#039;ve ever tried gathering questions from the Fedora contributors and submitting them to the candidates. The answers are very interesting and can be found in either &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.leemhuis.info/files/fedora/answers.txt&#039;);&quot;  href=&quot;http://www.leemhuis.info/files/fedora/answers.txt&quot;&gt;plain text&lt;/a&gt; or as an &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.leemhuis.info/files/fedora/answers-table.ods&#039;);&quot;  href=&quot;http://www.leemhuis.info/files/fedora/answers-table.ods&quot;&gt;OpenOffice Spreadsheet&lt;/a&gt;. My suggestion would be to look at the spreadsheet, it&#039;s easier to compare the different stances of each candidate.&lt;br /&gt;
And then, there are of course the Town Hall Meeting transcripts. The #fedora-townhall is a moderated IRC Chanel where the candidates are taking questions from the audience and try to answer them. The logs can be found on the normal &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/Elections&#039;);&quot;  href=&quot;https://fedoraproject.org/wiki/Elections&quot;&gt;Fedora Election&lt;/a&gt; pages.&lt;br /&gt;
There are a lot of worthwhile candidates, not the least your&#039;s truly. So don&#039;t waste your vote.&lt;/p&gt;

&lt;p&gt;&lt;!-- s9ymdb:169 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;250&quot; height=&quot;250&quot; style=&quot;border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/voted.png&quot; alt=&quot;&quot;  /&gt;&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sun,  7 Jun 2009 16:54:28 +0200</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/153-guid.html</guid>
    
</item>
<item>
    <title>Red Hat Enterprise Linux/CentOS 5 minimal installation</title>
    <link>http://blog.wodkamelone.de/archives/151-Red-Hat-Enterprise-LinuxCentOS-5-minimal-installation.html</link>
            <category>Fedora</category>
    
    <comments>http://blog.wodkamelone.de/archives/151-Red-Hat-Enterprise-LinuxCentOS-5-minimal-installation.html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=151</wfw:comment>

    <slash:comments>4</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=151</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;With current virtualization technology it is often desirable to install an absolute minimal system and then only add the one service running on the system.&lt;/p&gt;

&lt;p&gt;Unfortunately, this is not as easy as the &quot;Minimal Installation&quot; of RHEL (I&#039;m not even going to think about fedora) is rather huge and contains lots of unnecessary gems people do not want on a server.&lt;/p&gt;

&lt;p&gt;The easiest way of achieving a minimal installation is to use a &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5/html/Installation_Guide/ch-kickstart2.html&#039;);&quot;  href=&quot;http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5/html/Installation_Guide/ch-kickstart2.html&quot; title=&quot;kickstart installation&quot;&gt;kickstart&lt;/a&gt; file and select only the necessary packages.&lt;/p&gt;

&lt;p&gt;The following kickstart file only installs a usable base system but leaves out the unnecessary stuff often being installed on a &quot;server&quot; installation.&lt;br /&gt;
The %post script is used to do some final clean up.&lt;br /&gt;
In this case i386 packages are removed if running on a x86_64 system in order to prevent having a mixed userland.&lt;br /&gt;
For people not running with IPv6, v6 support is disabled/removed as well.&lt;/p&gt;

&lt;p&gt;This template kickstart file should be customized and then be published on a ftp or http server.&lt;br /&gt;
The anaconda installer can be instructed to use this file by passing &lt;i&gt;ks=http://your.server/minimal.ks&lt;/i&gt; on the command line.&lt;/p&gt;

&lt;blockquote&gt;
&lt;pre&gt;
#
# Minimal RHEL5 Installation
# http://blog.vodkamelone.de/archives/151-Red-Hat-Enterprise-LinuxCentOS-5-minimal-installation.html
#

install
# Mirror URL
url --url &lt;i&gt;Your Mirror URL, e.g. http://mirror.centos.org/centos/5/os/x86_64&lt;/i&gt;
lang en_US.UTF-8
keyboard de-latin1-nodeadkeys
network --device eth0 --bootproto dhcp
# Your root password
rootpw --iscrypted &lt;i&gt;your root password as a crypted string&lt;/i&gt;
firewall --enabled --ssh
firstboot --disable
authconfig --enableshadow --enablemd5
selinux --enforcing
# Timezone, change as needed
timezone --utc Europe/Berlin
bootloader --location=mbr
# Append the following line if you need serial console support
#--append=&quot;console=tty0 console=ttyS0,115200n8r&quot;
# or for Xen:
#--append=&quot;console=tty0 console=xvc0&quot;
key --skip
logging --host=&lt;i&gt;You syslog server&lt;/i&gt;
skipx
# uncomment if you only need a text mode installation
#text
reboot
services --disabled ip6tables
clearpart --initlabel --all
autopart

# Packages selection.
%packages --nobase
kernel
yum
openssh-server
openssh-clients
dhclient
audit
man
logrotate
tmpwatch
vixie-cron
crontabs
# Remove some stuff we do not need.
-iptables-ipv6
-system-config-securitylevel-tui
-gnu-efi
-Deployment_Guide-en-US
-redhat-release-notes
-cryptsetup-luks
# Remove some further packages
-hal
-pm-utils
-dbus
-dbus-glib
# If you&#039;re using xen, the following packages can be removed as well
#-setserial
#-hal
#-pm-utils
#-kudzu
#-dbus
#-dbus-glib

# Run a post script to clean up a bit
%post
chvt 3
(
echo &quot;Disabling IPv6&quot;
sed -i -e &#039;s/\(NETWORKING_IPV6=\).*/\1no/&#039; /etc/sysconfig/network

cat &lt;&lt; EOF &gt;&gt; /etc/modprobe.conf
# disable IPv6
alias net-pf-10 off
EOF

echo &quot;Disabling Zeroconf&quot;
grep -q &#039;^NOZEROCONF=yes&#039; /etc/sysconfig/network || sed -i -e &#039;/^NETWORKING=yes/a NOZEROCONF=yes&#039; /etc/sysconfig/network

# Running on x86_64? Remove i386 rpms
if [ &quot;$(uname -m)&quot; == &quot;x86_64&quot; ]; then
	echo &quot;We&#039;re on x86_64, removing unwanted i386 libraries&quot;
	rpm -qa --queryformat=&#039;%{n}-%{v}-%{r}.%{arch}\n&#039; | grep &#039;\.i[3456]86$&#039; | xargs rpm -ev
	echo &quot;done&quot;
fi

# Adding ssh key
# You could add your ssh key here
#echo &quot;Adding ssh key&quot;
#mkdir -p /root/.ssh
#chmod 700 /root/.ssh
#echo &#039;&lt;i&gt;your ssh key&lt;/i&gt;&#039; &gt; /root/.ssh/authorized_keys
#chmod 600 /root/.ssh/authorized_keys


# Running on XEN? Add serial console if not already configured
if [ -f /proc/xen/capabilities ] &amp;&amp;amp; [ $(cat /proc/xen/capabilities | wc -l) -eq 0 ]; then
	echo &quot;Adding XEN serial console support&quot;
	# Check it&#039;s not already configured and add it and allow root-logins
	grep -q xvc0 /etc/inittab || sed -i -e &#039;/^# Run gettys/a co:2345:respawn:/sbin/agetty xvc0 9600 vt100-nav &#039; /etc/inittab 
	grep -q xvc0 /etc/securetty || echo xvc0 &gt;&gt; /etc/securetty
fi

) 2&gt;&amp;1 | tee /root/ks-post.log
chvt 1
&lt;/pre&gt;
&lt;/blockquote&gt; 
    </content:encoded>

    <pubDate>Mon,  6 Apr 2009 17:22:08 +0200</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/151-guid.html</guid>
    
</item>
<item>
    <title>Liebe Gefährderinnen und Gefährder...</title>
    <link>http://blog.wodkamelone.de/archives/150-Liebe-Gefaehrderinnen-und-Gefaehrder....html</link>
            <category>CCC</category>
            <category>Fedora</category>
            <category>Fun</category>
            <category>Politik</category>
            <category>Teh Intarweb</category>
    
    <comments>http://blog.wodkamelone.de/archives/150-Liebe-Gefaehrderinnen-und-Gefaehrder....html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=150</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=150</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;&lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.ccc.de&#039;);&quot;  href=&quot;http://www.ccc.de&quot;&gt;Den üblichen Verächtigen&lt;/a&gt; dürfte bekannt sein, dass &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/blog.handelsblatt.de/indiskretion/eintrag.php?id=2047&#039;);&quot;  href=&quot;http://blog.handelsblatt.de/indiskretion/eintrag.php?id=2047&quot;&gt;unsere nicht vertrauenswürdige Familienministerin&lt;/a&gt; gerade dabei ist die Weichen für das neue, kindersichere und reingewaschene Internet zu stellen.&lt;/p&gt;

&lt;p&gt;Böse Zeitgenossen nehmen gerne das ebenso böse Wort &amp;quot;Zensur&amp;quot; in den Mund und vergessen dabei an die Kinder zu denken. Frau von der Leyens &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/blog.handelsblatt.de/indiskretion/eintrag.php?id=2013&#039;);&quot;  href=&quot;http://blog.handelsblatt.de/indiskretion/eintrag.php?id=2013&quot;&gt;Internetsperren weisen jedoch den richtigen Weg&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Da dies ja ein hauptsächlich technisches Blog ist, hier also ein kleines Rezept für &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/httpd.apache.org/docs/2.2/mod/mod_rewrite.html&#039;);&quot;  href=&quot;http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html&quot;&gt;mod_rewrite&lt;/a&gt; um Besuchern der eigenen Webseite schonmal einen kleinen Vorgeschmack zu geben auf die Zukunft des deutschen Internets:&lt;/p&gt;

&lt;pre&gt;
RewriteEngine on
RewriteCond %{HTTP_REFERER} ![den_eigenen_domainnamen_bitte_hier_einfügen] [NC]
RewriteCond %{HTTP_REFERER} !bmi\.pifo\.biz [NC]
RewriteRule ^(.*)$      http://bmi.pifo.biz/?http://%{HTTP_HOST}/$1 [R,L]
&lt;/pre&gt;

&lt;p&gt;Sobald dieser Konfigurationsschnipsel in einer &lt;i&gt;.htaccess&lt;/i&gt; Datei im Webroot einer Webseite abgelegt wurde, wird die Funktionsweise der bundesdeutschen Filterliste realitätsnah simuliert. Der Besucher wird beim ersten Aufruf einer Webseite auf eine täuschen echte Simulation der STOP Seite für gefährliche Internetangebote umgeleitet.&lt;/p&gt;

&lt;p&gt;Sobald er sich von dieser humoristischen Seite auf die eigentlich besuchte Seite durchgeklickt hat, kann er diese jedoch normal durchklicken... Eigetnlich auch nicht anders als die blauen Free-Speech Schleifchen, die man vor vielleicht 12 Jahren überall im Web vorfand.&lt;/p&gt;

&lt;p&gt;Ein kleines Beispiel für die in Zukunft sicher regelmäßig auftretenden, jedoch sehr bedauerliche Einzelfällen von Fehlkategorisierungen: &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/bmi.pifo.biz/?http://blog.vodkamelone.de&#039;);&quot;  href=&quot;http://bmi.pifo.biz/?http://blog.vodkamelone.de&quot;&gt;blog.vodkamelone.de auf der Sperrliste&lt;/a&gt;. :-)&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sat, 21 Feb 2009 17:30:38 +0100</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/150-guid.html</guid>
    
</item>
<item>
    <title>Installing OpenWrt on a Microtik Routerboard RB433</title>
    <link>http://blog.wodkamelone.de/archives/148-Installing-OpenWrt-on-a-Microtik-Routerboard-RB433.html</link>
            <category>Fedora</category>
            <category>Hardware</category>
            <category>Unix</category>
    
    <comments>http://blog.wodkamelone.de/archives/148-Installing-OpenWrt-on-a-Microtik-Routerboard-RB433.html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=148</wfw:comment>

    <slash:comments>7</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=148</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;&lt;!-- s9ymdb:160 --&gt;&lt;img class=&quot;serendipity_image_left&quot; width=&quot;67&quot; height=&quot;110&quot; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/rb433s.serendipityThumb.jpg&quot; alt=&quot;&quot;  /&gt;&lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/stoile.name/blog/&#039;);&quot;  href=&quot;http://stoile.name/blog/&quot; title=&quot;Dreams and Memories by Philipp Riegger&quot;&gt;A friend of mine&lt;/a&gt; wanted a small embedded linux router. After evaluating several options such as &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.routerboard.com/&#039;);&quot;  href=&quot;http://www.routerboard.com/&quot; title=&quot;Routerboard&quot;&gt;Routerboard&lt;/a&gt;, &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.soekris.com/&#039;);&quot;  href=&quot;http://www.soekris.com/&quot; title=&quot;Soekris Engineering&quot;&gt;Soekris&lt;/a&gt; or &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.pcengines.ch/alix.htm&#039;);&quot;  href=&quot;http://www.pcengines.ch/alix.htm&quot; title=&quot;PC Engines&quot;&gt;ALIX&lt;/a&gt; systems, he decided to get himself a &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/routerboard.com/comparison.html&#039;);&quot;  href=&quot;http://routerboard.com/comparison.html&quot; title=&quot;Routerboard overview&quot;&gt;Microtik Routerboard 433&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The RB433 is a small MIPS board based on the &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.atheros.com/pt/AR7100.htm&#039;);&quot;  href=&quot;http://www.atheros.com/pt/AR7100.htm&quot; title=&quot;Atheros AR7100 Product Brief&quot;&gt;Atheros AR7100 chipset&lt;/a&gt; with a 300MHz CPU, 64MB RAM, 3 100Base-TX ethernet ports and three slots for &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/en.wikipedia.org/wiki/MiniPCI&#039;);&quot;  href=&quot;http://en.wikipedia.org/wiki/MiniPCI&quot; title=&quot;MiniPCI @ Wikipedia&quot;&gt;MiniPCI Cards&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The Routerboard manufacturer &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.mikrotik.com/&#039;);&quot;  href=&quot;http://www.mikrotik.com/&quot; title=&quot;Microtik&quot;&gt;Microtik&lt;/a&gt; delivers these systems with a software called &quot;RouterOS&quot;. I haven&#039;t looked any closer at it but it seems to be Linux based system with some proprietary userspace management applications. RouterOS seems mostly to be just a Nortel-ish command line interface and a &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.urbandictionary.com/define.php?term=fugly&#039;);&quot;  href=&quot;http://www.urbandictionary.com/define.php?term=fugly&quot; title=&quot;Fugly - Fucking Ugly at UrbanDictionary&quot;&gt;fugly&lt;/a&gt; webinterface. Some people claim that RouterOS is kinda nifty, but it&#039;s definitely not hackable enough considering the plans my friend had with his device.&lt;/p&gt;

&lt;p&gt;To solve his dilemma, we did what everyone else does in a similar situation, we put a &lt;i&gt;real&lt;/i&gt; Linux on it:&lt;br /&gt;
OpenWrt to the rescue!&lt;/p&gt;

&lt;h4&gt;Getting to know the Routerboard&lt;/h4&gt;

&lt;p&gt;When connecting the power to the Routerboard, the system beeps after a short time and outputs some status messages to the serial port. In order to read these, one has to connect to the serial port via a &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/en.wikipedia.org/wiki/Null_modem&#039;);&quot;  href=&quot;http://en.wikipedia.org/wiki/Null_modem&quot; title=&quot;Null modem cable&quot;&gt;serial crossover cable&lt;/a&gt; and use a terminal program.&lt;/p&gt;

&lt;p&gt;Minicom is one such terminal program. Personally though, I prefer cu from the uucp package as it is rather lightweight. All one has to type is &lt;i&gt;cu -l ttyS0 -s 115200&lt;/i&gt; and the bootup messages from the routerboard connected to COM1 will be visible. If you&#039;re using any other terminal program, the console settings are the usual 115200bps, &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/en.wikipedia.org/wiki/8-N-1&#039;);&quot;  href=&quot;http://en.wikipedia.org/wiki/8-N-1&quot; title=&quot;8n1 at Wikipedia&quot;&gt;8 data bits, No parity bits and 1 stop bit&lt;/a&gt;.&lt;/p&gt;

&lt;pre class=&quot;screen&quot;&gt;
RouterBOOT booter 2.15

RouterBoard 433

Authorization: Passed
CPU frequency: 300 MHz
  Memory size:  64 MB

Press any key within 2 seconds to enter setup

&lt;/pre&gt;
&lt;p&gt;Now is a good time to press any key to enter the setup mode in order to see what the device can do.&lt;br /&gt;
You&#039;ll be presented with the following screen:&lt;/p&gt;

&lt;pre class=&quot;screen&quot;&gt;
RouterBOOT-2.15
What do you want to configure?
   d - boot delay
   k - boot key
   s - serial console
   o - boot device
   u - cpu mode
   f - cpu frequency
   r - reset booter configuration
   e - format nand
   g - upgrade firmware
   i - board info
   p - boot protocol
   x - exit setup
your choice: 
&lt;/pre&gt;

&lt;p&gt;Change the bootmode to tell the device _not_ to boot from the local flash chip (called NAND) but from the network. To do that, press &quot;o&quot; and &quot;e&quot;.&lt;br /&gt;
Afterwards press &quot;x&quot; to leave the setup.&lt;br /&gt;
The device will try to boot and get its kernel from the network.&lt;/p&gt;

&lt;pre class=&quot;screen&quot;&gt;
RouterBOOT booter 2.15

RouterBoard 433

Authorization: Passed
CPU frequency: 300 MHz
  Memory size:  64 MB

Press any key within 2 seconds to enter setup
trying dhcp protocol...........................................................
kernel loading failed
&lt;/pre&gt;

&lt;p&gt;So it seems the device is looking for a kernel.&lt;br /&gt;
Let&#039;s build one for it to boot sucessfully from...&lt;/p&gt;

&lt;h4&gt;Building OpenWrt Kamikaze&lt;/h4&gt;

&lt;p&gt;In order to correctly install the OpenWrt system a linux host is needed to build the kernel image on. I&#039;ve been using &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/en/get-fedora&#039;);&quot;  href=&quot;http://fedoraproject.org/en/get-fedora&quot; title=&quot;Get Fedora&quot;&gt;Fedora 9&lt;/a&gt; from the &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/&#039;);&quot;  href=&quot;http://fedoraproject.org/&quot; title=&quot;Fedora Project&quot;&gt;Fedora Project&lt;/a&gt; which did the job perfectly. Any other recent distribution should work equally well.&lt;/p&gt;

&lt;p&gt;First, check out the current development code via &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/en.wikipedia.org/wiki/Subversion_(software)&#039;);&quot;  href=&quot;http://en.wikipedia.org/wiki/Subversion_(software)&quot; title=&quot;Subversion Versioning System&quot;&gt;Subversion&lt;/a&gt; to have the greatest and latest code:
&lt;pre class=&quot;screen&quot;&gt;
[athienem@localhost ~]$ mkdir ~/openwrt
[athienem@localhost ~]$ cd ~/openwrt
[athienem@localhost openwrt]$ svn co https://svn.openwrt.org/openwrt/trunk/
[...]
Updated to revision 13193.
[athienem@localhost openwrt]$ 
&lt;/pre&gt;

&lt;p&gt;In order to install the system correctly we&#039;ll be needing two different OpenWrt images:&lt;br /&gt;
One image is a &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/en.wikipedia.org/wiki/JFFS2&#039;);&quot;  href=&quot;http://en.wikipedia.org/wiki/JFFS2&quot; title=&quot;JFFS2 at Wikipedia&quot;&gt;JFFS2&lt;/a&gt; or &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/en.wikipedia.org/wiki/SquashFS&#039;);&quot;  href=&quot;http://en.wikipedia.org/wiki/SquashFS&quot; title=&quot;SquashFS&quot;&gt;SquashFS&lt;/a&gt; image to install onto the target device.&lt;br /&gt;
The other image is the so called ramdisk image which can be booted over the network and contains a minimal shell. This image will be used to install the JFFS2 or SquashFS image onto the device and will never again be used. Think of it as a &quot;rescue image&quot;.&lt;/p&gt;

&lt;p&gt;Both images are basically built the same way.&lt;br /&gt;
First, change to the svn checkout directory called trunk and execute &lt;i&gt;make menuconfig&lt;/i&gt; to configure the OpenWrt image.&lt;/p&gt;

&lt;pre class=&quot;screen&quot;&gt;
[athienem@localhost openwrt]$ cd trunk/
[athienem@localhost trunk]$ make menuconfig
&lt;/pre&gt;

&lt;p&gt;This command will start the ncurses interface to generate a .config file. It should look familiar to people having built kernels before.&lt;br /&gt;
Make sure that &quot;Atheros AR71xx [2.6]&quot; is selected as the target system:&lt;br /&gt;
&lt;!-- s9ymdb:162 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;722&quot; height=&quot;433&quot; style=&quot;border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/menuconfig.png&quot; alt=&quot;&quot;  /&gt;&lt;br /&gt;
This will make sure that the resulting kernel is bootable on the Routerboard 433.&lt;/p&gt;

&lt;p&gt;The next step is to select the target image format, chose ramdisk for now:&lt;br /&gt;
&lt;!-- s9ymdb:163 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;721&quot; height=&quot;432&quot; style=&quot;border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/ramdisk.png&quot; alt=&quot;&quot;  /&gt;&lt;br /&gt;
Now select &amp;quot;&amp;lt; Exit &amp;gt;&amp;quot; in the main menu and confirm that you want to save your new OpenWrt configuration.&lt;/p&gt;

&lt;p&gt;The next step is to actually build the image by calling &quot;make 
&lt;pre class=&quot;screen&quot;&gt;
*** End of OpenWrt configuration.
*** Execute &#039;make&#039; to build the OpenWrt or try &#039;make help&#039;.
[athienem@localhost trunk]$ make
Checking &#039;working-make&#039;... ok.
Checking &#039;case-sensitive-fs&#039;... ok.
Checking &#039;working-gcc&#039;... ok.
Checking &#039;working-g++&#039;... ok.
Checking &#039;ncurses&#039;... ok.
Checking &#039;zlib&#039;... ok.
Checking &#039;gawk&#039;... ok.
Checking &#039;bison&#039;... ok.
Checking &#039;flex&#039;... ok.
Checking &#039;unzip&#039;... ok.
Checking &#039;bzip2&#039;... ok.
Checking &#039;patch&#039;... ok.
Checking &#039;perl&#039;... ok.
Checking &#039;wget&#039;... ok.
Checking &#039;gnutar&#039;... ok.
Checking &#039;autoconf&#039;... ok.
Checking &#039;non-root&#039;... ok.
Collecting target info: done
Collecting package info: done
Checking &#039;bison&#039;... ok.
Checking &#039;automake&#039;... ok.
&lt;span style=&quot;color: chocolate;&quot;&gt; make[2] tools/install&lt;/span&gt;
[...]
&lt;span style=&quot;color: chocolate;&quot;&gt; make[2] target/install
 make[3] -C target/linux install
 make[2] package/index&lt;/span&gt;
[athienem@localhost trunk]$ 
&lt;/pre&gt;

&lt;p&gt;Everything went fine and there should be a ramdisk image in elf format:
&lt;pre class=&quot;screen&quot;&gt;
[athienem@localhost trunk]$ ls -all bin/openwrt-ar71xx-vmlinux-initramfs.elf 
-rwxrwxr-x 1 athienem athienem 3735060 2008-11-13 22:27 &lt;span style=&quot;color: green;&quot;&gt;bin/openwrt-ar71xx-vmlinux-initramfs.elf&lt;/span&gt;
[athienem@localhost trunk]$ 
&lt;/pre&gt;

&lt;p&gt;The next step is to build the system image to be installed on the device. Execute &lt;i&gt;make menuconfig&lt;/i&gt; again but this time select either squashfs or jffs2 as the target image format instead of ramdisk:
&lt;!-- s9ymdb:164 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;720&quot; height=&quot;434&quot; style=&quot;border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/squashfs.png&quot; alt=&quot;&quot;  /&gt;&lt;br /&gt;
After saving the config, execute &lt;i&gt;make&lt;/i&gt; again. This time, it should be much faster as nearly everything is already compiled.&lt;/p&gt;

&lt;pre class=&quot;screen&quot;&gt;
#
# using defaults found in .config
#


*** End of OpenWrt configuration.
*** Execute &#039;make&#039; to build the OpenWrt or try &#039;make help&#039;.

[athienem@localhost trunk]$ make
++ mkdir -p /home/athienem/openwrt/trunk/staging_dir/toolchain-mips_gcc4.1.2
++ cd /home/athienem/openwrt/trunk/staging_dir/toolchain-mips_gcc4.1.2
++ mkdir -p bin lib include stamp
&lt;span style=&quot;color: chocolate;&quot;&gt; make[1] world&lt;/span&gt;
[...]
&lt;span style=&quot;color: chocolate;&quot;&gt; make[2] target/install
 make[3] -C target/linux install
 make[2] package/index&lt;/span&gt;
[athienem@localhost trunk]$ 
&lt;/pre&gt;

&lt;p&gt;Now the &lt;i&gt;bin/&lt;/i&gt; directory should be filled with some files:&lt;/p&gt;

&lt;pre class=&quot;screen&quot;&gt;
[athienem@localhost trunk]$ ls -all bin/
total 23656
drwxrwxr-x  3 athienem athienem    4096 2008-11-08 18:25 &lt;span style=&quot;color: navy;&quot;&gt;.&lt;/span&gt;
drwxrwxr-x 15 athienem athienem    4096 2008-11-13 22:44 &lt;span style=&quot;color: navy;&quot;&gt;..&lt;/span&gt;
-rw-rw-r--  1 athienem athienem     710 2008-11-13 22:46 md5sums
-rw-rw-r--  1 athienem athienem 1499367 2008-11-08 18:25 &lt;span style=&quot;color: maroon;&quot;&gt;openwrt-ar71xx-rootfs.tgz&lt;/span&gt;
-rw-rw-r--  1 athienem athienem 1441792 2008-11-08 18:25 openwrt-ar71xx-root.squashfs
-rw-rw-r--  1 athienem athienem 2492740 2008-11-13 22:46 &lt;span style=&quot;color: maroon;&quot;&gt;openwrt-ar71xx-uImage.gz&lt;/span&gt;
-rwxrwxr-x  1 athienem athienem 2248838 2008-11-08 18:25 &lt;span style=&quot;color: green;&quot;&gt;openwrt-ar71xx-vmlinux.bin&lt;/span&gt;
-rwxrwxr-x  1 athienem athienem 2258096 2008-11-08 18:25 &lt;span style=&quot;color: green;&quot;&gt;openwrt-ar71xx-vmlinux.elf&lt;/span&gt;
-rw-rw-r--  1 athienem athienem 1048576 2008-11-08 18:25 &lt;span style=&quot;color: maroon;&quot;&gt;openwrt-ar71xx-vmlinux.gz&lt;/span&gt;
-rwxrwxr-x  1 athienem athienem 3725815 2008-11-13 22:46 &lt;span style=&quot;color: green;&quot;&gt;openwrt-ar71xx-vmlinux-initramfs.bin&lt;/span&gt;
-rwxrwxr-x  1 athienem athienem 3735072 2008-11-13 22:46 &lt;span style=&quot;color: green;&quot;&gt;openwrt-ar71xx-vmlinux-initramfs.elf&lt;/span&gt;
-rw-rw-r--  1 athienem athienem 2555904 2008-11-13 22:46 &lt;span style=&quot;color: maroon;&quot;&gt;openwrt-ar71xx-vmlinux-initramfs.gz&lt;/span&gt;
-rw-rw-r--  1 athienem athienem 2293760 2008-11-13 22:46 &lt;span style=&quot;color: maroon;&quot;&gt;openwrt-ar71xx-vmlinux-initramfs.lzma&lt;/span&gt;
-rw-rw-r--  1 athienem athienem  786432 2008-11-08 18:25 &lt;span style=&quot;color: maroon;&quot;&gt;openwrt-ar71xx-vmlinux.lzma&lt;/span&gt;
drwxrwxr-x  3 athienem athienem    4096 2008-11-08 17:50 &lt;span style=&quot;color: navy;&quot;&gt;packages&lt;/span&gt;
[athienem@localhost trunk]$ 
&lt;/pre&gt;

&lt;h4&gt;Booting OpenWrt on the RouterBoard&lt;/h4&gt;

&lt;p&gt;To boot the routerboard, a dhcp server is needed to tell the bootloader on the Routerboard which IP address it should use and where to get it&#039;s bootable kernel image.&lt;br /&gt;
The tftp server is needed to actually serve said image to the RouterBoard.&lt;/p&gt;

&lt;p&gt;Under Fedora linux, installing both just needs the command &lt;i&gt;yum install -y dhcp tftp-server&lt;/i&gt;. To activate both services, chkconfig can be used as root:&lt;/p&gt;

&lt;pre class=&quot;screen&quot;&gt;
[root@localhost ~]# chkconfig dhcpd on
[root@localhost ~]# chkconfig tftp on
&lt;/pre&gt;

&lt;p&gt;The configuration for the dhcpd needs to be adapted to the local circumstances. The setup I&#039;ve been using was a crosslinked cable between the notebook and the Routerboard with a manually configured IP address of 192.168.23.254/24. All that is configured in that file is to assign the RouterBoard an IP address and tell it to boot the file vmlinux. Adapt the following file as needed for your own circumstances:&lt;/p&gt;

&lt;pre class=&quot;screen&quot;&gt;
[root@localhost ~]# cat /etc/dhcpd.conf 
# Global Parameters

authoritative;

max-lease-time 604800;
default-lease-time 3100;

ddns-update-style none;
ddns-ttl 7200;

allow booting;
allow bootp;
one-lease-per-client true;

subnet 192.168.23.0 netmask 255.255.255.0 {
	option routers 192.168.23.254;
	option subnet-mask 255.255.255.0;
	option broadcast-address 192.168.23.255;
	ignore client-updates;
}

group {
	host routerboard {
		hardware ethernet 00:0c:42:32:43:8a;
		next-server 192.168.23.254;
		fixed-address 192.168.23.2;
		filename &quot;vmlinux&quot;;
	}

}
[root@localhost ~]# 
&lt;/pre&gt;

&lt;p&gt;Start the dhcp server by calling &lt;i&gt;service dhcpd start&lt;/i&gt;, if there are any problems, look into &lt;i&gt;/var/log/messages&lt;/i&gt; and fix the issues noted there.&lt;/p&gt;

&lt;p&gt;The tftp-server has already been activated earlier but might need a &lt;i&gt;service xinetd restart&lt;/i&gt; to be really started. Do that.&lt;br /&gt;
Then copy the ramdisk image named &lt;i&gt;openwrt-ar71xx-vmlinux-initramfs.elf&lt;/i&gt; to the tftproot. This is &lt;i&gt;/tftpboot&lt;/i&gt; on older systems or &lt;i&gt;/var/lib/tftpboot/&lt;/i&gt; on newer systems. Name the copied file vmlinux.&lt;/p&gt;

&lt;p&gt;If everything is working fine, the system should boot:&lt;/p&gt;

&lt;pre class=&quot;screen&quot;&gt;
RouterBOOT booter 2.15

RouterBoard 433

Authorization: Passed
CPU frequency: 300 MHz
  Memory size:  64 MB

Press any key within 2 seconds to enter setup...

trying dhcp protocol... OK
resolved mac address 00:1C:23:03:AA:F8
Gateway: 192.168.23.254
transfer started ............................ transfer ok, time=1.68s
setting up elf image... OK
jumping to kernel code
Linux version 2.6.26.7 (athienem@localhost.localdomain) (gcc version 4.1.2) #1 Sat Nov 8 18:11:40 CET 2008
console [early0] enabled
CPU revision is: 00019374 (MIPS 24K)
Determined physical RAM map:
 memory: 04000000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
  Normal          0 -&gt;    16384
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0:        0 -&gt;    16384
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
Kernel command line: root=/dev/mtdblock2 rootfstype=squashfs,yaffs,jffs2 noinitrd console=ttyS0,115200 init=/etc/preinit
Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
Writing ErrCtl register=000227c0
Readback ErrCtl register=000227c0
PID hash table entries: 256 (order: 8, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 60768k/65536k available (1762k kernel code, 4700k reserved, 312k data, 1572k init, 0k highmem)
SLUB: Genslabs=6, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Mount-cache hash table entries: 512
net_namespace: 484 bytes
NET: Registered protocol family 16
MIPS: machine is MikroTik RouterBOARD 433/AH
registering PCI controller with io_map_base unset
PCI: mapping irq 33 to pin1@0000:00:13.0
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
NET: Registered protocol family 1
squashfs: version 3.0 (2006/03/15) Phillip Lougher
Registering mini_fo version $Id$
JFFS2 version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
yaffs Nov  8 2008 18:08:56 Installing. 
msgmni has been set to 118
io scheduler noop registered
io scheduler deadline registered (default)
Serial: 8250/16550 driver $Revision: 1.90 $ 1 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0x18020000 (irq = 11) is a 16550A
console handover: boot [early0] -&gt; real [ttyS0]
ag71xx_mdio: probed
eth0: Atheros AG71xx at 0xba000000, irq 5
eth1: Atheros AG71xx at 0xb9000000, irq 4
NAND flash driver for RouterBoard 4xx series version 0.1.10
NAND SPI clock 25000 kHz (AHB 150000 kHz / 6)
FLASH SPI clock 25000 kHz (AHB 150000 kHz / 6)
NAND device: Manufacturer ID: 0xad, Chip ID: 0x76 (Hynix NAND 64MiB 3,3V 8-bit)
Scanning device for bad blocks
Bad eraseblock 828 at 0x00cf0000
Creating 3 MTD partitions on &quot;NAND 64MiB 3,3V 8-bit&quot;:
0x00000000-0x00040000 : &quot;booter&quot;
0x00040000-0x00400000 : &quot;kernel&quot;
0x00400000-0x04000000 : &quot;rootfs&quot;
mtd: partition &quot;rootfs&quot; set to be root filesystem
split_squashfs: no squashfs found in &quot;NAND 64MiB 3,3V 8-bit&quot;
Atheros AR71xx SPI Controller driver version 0.2.2
Atheros AR71xx hardware watchdog driver version 0.1.0
Registered led device: rb4xx:yellow:user
TCP vegas registered
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear &lt;greearb@candelatech.com&gt;
All bugs added by David S. Miller &lt;davem@redhat.com&gt;
Freeing unused kernel memory: 1572k freed
Algorithmics/MIPS FPU Emulator v1.5
[sighandler]: No more events to be processed, quitting.
[cleanup]: Waiting for children.
[cleanup]: All children terminated.
- preinit -
Press CTRL-C for failsafe

Please press Enter to activate this console. br-lan: Dropping NETIF_F_UFO since no NETIF_F_HW_CSUM feature.
device eth0 entered promiscuous mode
PPP generic driver version 2.4.2
ip_tables: (C) 2000-2006 Netfilter Core Team
nf_conntrack version 0.5.0 (1024 buckets, 4096 max)
wlan: trunk
ath_hal: module license &#039;Proprietary&#039; taints kernel.
ath_hal: 2008-10-02 (AR5210, AR5211, AR5212, AR5416, RF5111, RF5112, RF2413, RF5413, RF2133, RF2425, REGOPS_FUNC, DFS, XR)
ath_rate_minstrel: Minstrel automatic rate control algorithm 1.2 (trunk)
ath_rate_minstrel: look around rate set to 10%
ath_rate_minstrel: EWMA rolloff level set to 75%
ath_rate_minstrel: max segment size in the mrr set to 6000 us
wlan: mac acl policy registered
ath_pci: trunk
PCI: Enabling device 0000:00:13.0 (0000 -&gt; 0002)
Atheros HAL provided by OpenWrt, DD-WRT and MakSat Technologies
wifi0: 11a rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wifi0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
wifi0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wifi0: turboA rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wifi0: turboG rates: 6Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wifi0: H/W encryption support: WEP AES AES_CCM TKIP
ath_pci: wifi0: Atheros 5212: mem=0x10000000, irq=33
eth0: link up (100Mbps/Full duplex)
br-lan: port 1(eth0) entering learning state
br-lan: topology change detected, propagating
br-lan: port 1(eth0) entering forwarding state



BusyBox v1.11.2 (2008-11-08 17:55:16 CET) built-in shell (ash)
Enter &#039;help&#039; for a list of built-in commands.

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 KAMIKAZE (bleeding edge, r13141) -------------------
  * 10 oz Vodka       Shake well with ice and strain
  * 10 oz Triple sec  mixture into 10 shot glasses.
  * 10 oz lime juice  Salute!
 ---------------------------------------------------
root@OpenWrt:/# 
&lt;/pre&gt;

&lt;p&gt;If something didn&#039;t work out, check your system log to see what happens. Adding the &amp;quot;-s&amp;quot; parameter to the tftpd binary might be useful as it will log single requests.&lt;/p&gt;

&lt;h4&gt;Permanently installing OpenWrt on the RouterBoard&lt;/h4&gt;

&lt;p&gt;As we have an accessible Linux system running now on the RouterBoard the available tools such as scp and mtd can be used to copy the needed files onto the NAND device and thus permanently install OpenWrt on the device.&lt;/p&gt;

&lt;p&gt;Under Linux the NAND device is partitioned and can be accessed through the &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.linux-mtd.infradead.org/&#039;);&quot;  href=&quot;http://www.linux-mtd.infradead.org/&quot; title=&quot;Memory Technology Device Framework&quot;&gt;mtd framework&lt;/a&gt; which exports some information to userspace through the &lt;i&gt;/proc&lt;/i&gt; filesystem:
&lt;pre class=&quot;screen&quot;&gt;
root@OpenWrt:/# cat /proc/mtd 
dev:    size   erasesize  name
mtd0: 00040000 00004000 &quot;booter&quot;
mtd1: 003c0000 00004000 &quot;kernel&quot;
mtd2: 03c00000 00004000 &quot;rootfs&quot;
&lt;/pre&gt;

&lt;p&gt;As can easily be seen, there are three &amp;quot;partitions&amp;quot; available. Leave the one called &amp;quot;booter&amp;quot; alone, it might be important and contain the bootloader. I haven&#039;t checked. All we&#039;re interested in is &amp;quot;kernel&amp;quot; and &amp;quot;rootfs&amp;quot;. The former contains the kernel, the latter the root filesystem.&lt;/p&gt;

&lt;p&gt;To install the elf kernel binary named openwrt-ar71xx-vmlinux.elf, it has to be transferred onto the RouterBoard and written onto the second mtd partition. Make sure that the file is called &lt;i&gt;kernel&lt;/i&gt;.&lt;br /&gt;
&lt;b&gt;Note:&lt;/b&gt; OpenWrt configures its IP address to be 192.168.1.1 on bootup. You might have to change this with &lt;i&gt;ifconfig&lt;/i&gt;.&lt;/p&gt;

&lt;pre class=&quot;screen&quot;&gt;
root@OpenWrt:/# scp athienem@192.168.23.254:openwrt/trunk/bin/openwrt-ar71xx-vmlinux.elf /tmp/
root@OpenWrt:/# mount /dev/mtdblock1 /mnt/
yaffs: dev is 32505857 name is &quot;mtdblock1&quot;
yaffs: passed flags &quot;&quot;
yaffs: Attempting MTD mount on 31.1, &quot;mtdblock1&quot;
root@OpenWrt:/# mv /tmp/openwrt-ar71xx-vmlinux.elf /mnt/kernel
root@OpenWrt:/# ls /mnt
kernel      lost+found
root@OpenWrt:/# umount  /mnt/
save exit: isCheckpointed 0
root@OpenWrt:/# 
&lt;/pre&gt;

&lt;p&gt;The kernel image is installed.&lt;br /&gt;
The rootfs is even easier, as the mtd-device does not need to be mounted at all to write the squashfs image called openwrt-ar71xx-root.squashfs in my case.&lt;br /&gt;
This just needs to be written as is onto the mtd block device named rootfs:&lt;/p&gt;

&lt;pre class=&quot;screen&quot;&gt;
root@OpenWrt:/# scp athienem@192.168.23.254:openwrt/trunk/bin/openwrt-ar71xx-root.squashfs /tmp/
root@OpenWrt:/# cat /tmp/openwrt-ar71xx-root.squashfs &gt; /dev/mtdblock2
root@OpenWrt:/# 
&lt;/pre&gt;

&lt;p&gt;After a few seconds the squashfs image has been written and the device can be rebooted. Don&#039;t forget to disable the network boot in the Bios:&lt;/p&gt;

&lt;pre class=&quot;screen&quot;&gt;
root@OpenWrt:/# reboot
root@OpenWrt:/# br-lan: port 1(eth0) entering disabled state
device eth0 left promiscuous mode
br-lan: port 1(eth0) entering disabled state
eth0: link down
Restarting system.


RouterBOOT booter 2.15

RouterBoard 433

Authorization: Passed
CPU frequency: 300 MHz
  Memory size:  64 MB

Press any key within 2 seconds to enter setup..

RouterBOOT-2.15
What do you want to configure?
   d - boot delay
   k - boot key
   s - serial console
   o - boot device
   u - cpu mode
   f - cpu frequency
   r - reset booter configuration
   e - format nand
   g - upgrade firmware
   i - board info
   p - boot protocol
   x - exit setup
your choice: 
&lt;/pre&gt;

&lt;p&gt;Press &amp;quot;o&amp;quot; twice and &amp;quot;x&amp;quot; once to continue booting normally from the NAND.&lt;/p&gt;


&lt;pre class=&quot;screen&quot;&gt;
RouterBOOT booter 2.15

RouterBoard 433

Authorization: Passed
CPU frequency: 300 MHz
  Memory size:  64 MB

Press any key within 2 seconds to enter setup..
loading kernel from nand... OK
setting up elf image... OK
jumping to kernel code
Linux version 2.6.26.7 (athienem@localhost.localdomain) (gcc version 4.1.2) #2 Sat Nov 8 18:25:41 CET 2008
console [early0] enabled
CPU revision is: 00019374 (MIPS 24K)
Determined physical RAM map:
 memory: 04000000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
  Normal          0 -&gt;    16384
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0:        0 -&gt;    16384
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
Kernel command line: root=/dev/mtdblock2 rootfstype=squashfs,yaffs,jffs2 noinitrd console=ttyS0,115200 init=/etc/preinit
Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
Writing ErrCtl register=000227c0
Readback ErrCtl register=000227c0
PID hash table entries: 256 (order: 8, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 62208k/65536k available (1762k kernel code, 3252k reserved, 312k data, 124k init, 0k highmem)
SLUB: Genslabs=6, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Mount-cache hash table entries: 512
net_namespace: 484 bytes
NET: Registered protocol family 16
MIPS: machine is MikroTik RouterBOARD 433/AH
registering PCI controller with io_map_base unset
PCI: mapping irq 33 to pin1@0000:00:13.0
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
NET: Registered protocol family 1
squashfs: version 3.0 (2006/03/15) Phillip Lougher
Registering mini_fo version $Id$
JFFS2 version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
yaffs Nov  8 2008 18:08:56 Installing. 
msgmni has been set to 121
io scheduler noop registered
io scheduler deadline registered (default)
Serial: 8250/16550 driver $Revision: 1.90 $ 1 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0x18020000 (irq = 11) is a 16550A
console handover: boot [early0] -&gt; real [ttyS0]
ag71xx_mdio: probed
eth0: Atheros AG71xx at 0xba000000, irq 5
eth1: Atheros AG71xx at 0xb9000000, irq 4
NAND flash driver for RouterBoard 4xx series version 0.1.10
NAND SPI clock 25000 kHz (AHB 150000 kHz / 6)
FLASH SPI clock 25000 kHz (AHB 150000 kHz / 6)
NAND device: Manufacturer ID: 0xad, Chip ID: 0x76 (Hynix NAND 64MiB 3,3V 8-bit)
Scanning device for bad blocks
Bad eraseblock 828 at 0x00cf0000
Creating 3 MTD partitions on &quot;NAND 64MiB 3,3V 8-bit&quot;:
0x00000000-0x00040000 : &quot;booter&quot;
0x00040000-0x00400000 : &quot;kernel&quot;
0x00400000-0x04000000 : &quot;rootfs&quot;
mtd: partition &quot;rootfs&quot; set to be root filesystem
split_squashfs: no squashfs found in &quot;NAND 64MiB 3,3V 8-bit&quot;
Atheros AR71xx SPI Controller driver version 0.2.2
Atheros AR71xx hardware watchdog driver version 0.1.0
Registered led device: rb4xx:yellow:user
TCP vegas registered
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear &lt;greearb@candelatech.com&gt;
All bugs added by David S. Miller &lt;davem@redhat.com&gt;
VFS: Mounted root (squashfs filesystem) readonly.
Freeing unused kernel memory: 124k freed
Please be patient, while OpenWrt loads ...
Algorithmics/MIPS FPU Emulator v1.5
- preinit -
Press CTRL-C for failsafe
- init -

Please press Enter to activate this console. br-lan: Dropping NETIF_F_UFO since no NETIF_F_HW_CSUM feature.
device eth0 entered promiscuous mode
PPP generic driver version 2.4.2
ip_tables: (C) 2000-2006 Netfilter Core Team

nf_conntrack version 0.5.0 (1024 buckets, 4096 max)
wlan: trunk
ath_hal: module license &#039;Proprietary&#039; taints kernel.
ath_hal: 2008-10-02 (AR5210, AR5211, AR5212, AR5416, RF5111, RF5112, RF2413, RF5413, RF2133, RF2425, REGOPS_FUNC, DFS, XR)
ath_rate_minstrel: Minstrel automatic rate control algorithm 1.2 (trunk)
ath_rate_minstrel: look around rate set to 10%
ath_rate_minstrel: EWMA rolloff level set to 75%
ath_rate_minstrel: max segment size in the mrr set to 6000 us
wlan: mac acl policy registered
eth0: link up (100Mbps/Full duplex)
br-lan: port 1(eth0) entering learning state
br-lan: topology change detected, propagating
br-lan: port 1(eth0) entering forwarding state
ath_pci: trunk
PCI: Enabling device 0000:00:13.0 (0000 -&gt; 0002)
Atheros HAL provided by OpenWrt, DD-WRT and MakSat Technologies
wifi0: 11a rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wifi0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
wifi0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wifi0: turboA rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wifi0: turboG rates: 6Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wifi0: H/W encryption support: WEP AES AES_CCM TKIP
ath_pci: wifi0: Atheros 5212: mem=0x10000000, irq=33



BusyBox v1.11.2 (2008-11-08 17:55:16 CET) built-in shell (ash)
Enter &#039;help&#039; for a list of built-in commands.

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 KAMIKAZE (bleeding edge, r13141) -------------------
  * 10 oz Vodka       Shake well with ice and strain
  * 10 oz Triple sec  mixture into 10 shot glasses.
  * 10 oz lime juice  Salute!
 ---------------------------------------------------
root@OpenWrt:/# 
&lt;/pre&gt;

&lt;p&gt;Done.&lt;/p&gt;

&lt;p&gt;OpenWrt has been installed on the device and can be used and configured as usual.&lt;/p&gt;
&lt;p&gt;For more information about configuring, using and customizing OpenWrt see the &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/downloads.openwrt.org/kamikaze/docs/openwrt.html&#039;);&quot;  href=&quot;http://downloads.openwrt.org/kamikaze/docs/openwrt.html&quot; title=&quot;OpenWrt Kamikaze Manual&quot;&gt;Kamikaze Manual&lt;/a&gt;, the &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/wiki.openwrt.org&#039;);&quot;  href=&quot;http://wiki.openwrt.org&quot; title=&quot;OpenWrt Wiki&quot;&gt;OpenWrt Wiki&lt;/a&gt; or use the source. For network related configuration issues, &lt;i&gt;/lib/network/config.sh&lt;/i&gt; and the files in &lt;i&gt;/lib/wifi/&lt;/i&gt; are a good start. 
    </content:encoded>

    <pubDate>Thu, 13 Nov 2008 23:56:00 +0100</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/148-guid.html</guid>
    
</item>
<item>
    <title>Unbricking an Intel Pro/1000 (e1000) network interface</title>
    <link>http://blog.wodkamelone.de/archives/146-Unbricking-an-Intel-Pro1000-e1000-network-interface.html</link>
            <category>Bawue.Net</category>
            <category>Fedora</category>
            <category>Hardware</category>
    
    <comments>http://blog.wodkamelone.de/archives/146-Unbricking-an-Intel-Pro1000-e1000-network-interface.html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=146</wfw:comment>

    <slash:comments>6</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=146</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;&lt;!-- s9ymdb:152 --&gt;&lt;img class=&quot;serendipity_image_left&quot; width=&quot;110&quot; height=&quot;110&quot; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/e1000.serendipityThumb.jpg&quot; alt=&quot;&quot;  /&gt;As most readers of this blog are probably aware, pre-releases of the Linux Kernel 2.6.27 are able to trash the NVRAM/EEPROM of certain Intel Network cards. As usual, lwn.net has &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/lwn.net/Articles/300202/&#039;);&quot;  href=&quot;http://lwn.net/Articles/300202/&quot;&gt;a nice writeup&lt;/a&gt; of the issue including some background information.&lt;br /&gt;
I had a similar problem in the past and as a favour for some friends of mine, I&#039;ve written down a small description to restoring the ethernet firmware in these cards. This guide should serve as a good primer on reflashing your broken nic but probably needs to be adapted for your own use case.&lt;/p&gt;

&lt;p&gt;NB: Instead of just giving a command by command description of what I did, I&#039;ll try explaining a bit more about the background and the process of fixing the problem at hand. Maybe this gives other people some insight into valuable problem solving skills.&lt;/p&gt;

&lt;p&gt;Some years back we bought quite some &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.tyan.com/archive/products/html/tomcati7210.html&#039;);&quot;  href=&quot;http://www.tyan.com/archive/products/html/tomcati7210.html&quot; title=&quot;Tyan S5112 Tomcat i7210&quot;&gt;Tyan S5112 machines&lt;/a&gt; for &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.bawue.net&#039;);&quot;  href=&quot;http://www.bawue.net&quot; title=&quot;Baden-Württembergs nichtkommerzieller Internetprovider&quot;&gt;bawue.net&lt;/a&gt;.&lt;br /&gt;
The idea was to fit these machines with the &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.tyan.com/archive/products/html/m3289.html&#039;);&quot;  href=&quot;http://www.tyan.com/archive/products/html/m3289.html&quot; title=&quot;m3289 Server Management Daughter Card&quot;&gt;Tyan m3289 server management card&lt;/a&gt;, an &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/en.wikipedia.org/wiki/IPMI&#039;);&quot;  href=&quot;http://en.wikipedia.org/wiki/IPMI&quot; title=&quot;Intelligent Platform Management Interface at Wikipedia&quot;&gt;IPMI&lt;/a&gt; card allowing remotely powercycling of the machines and offering a serial console via the network.&lt;/p&gt;

&lt;p&gt;In order to have the whole setup work, the IPMI management module needs support from the network interface in order to receive IP packets while the machine is powered off. After contacting the Tyan support, we were offered a firmware file to flash into the network adapter activating the needed &amp;quot;management mode&amp;quot;. This firmware file came in the form of a .bin file and an accompanying eeupdate.exe file for flashing the firmware image.&lt;/p&gt;

&lt;p&gt;The mainboard has two ethernet controllers, with the 82547EI one being the controller utilized by the management card. The lspci output on this board looks as follows:
&lt;pre class=&quot;screen&quot;&gt;[root@selene ~]# lspci|grep Ethernet
01:01.0 Ethernet controller: Intel Corporation 82547EI Gigabit Ethernet Controller
03:02.0 Ethernet controller: Intel Corporation 82541GI Gigabit Ethernet Controller
[root@selene ~]#&lt;/pre&gt;
&lt;/p&gt;

&lt;p&gt;The instructions for flashing the firmware were relatively simple: Boot with a DOS bootdisk and execute &lt;i&gt;eeupdate -nic=1 -d 82547EI.eep&lt;/i&gt;&lt;br /&gt;
After I pressed enter, nothing much happened. The system wasn&#039;t reading anything from the disk, there was no progress message on the screen, just the general start-message of the firmware update tool.&lt;/p&gt;

&lt;p&gt;When nothing happened after 5 minutes of waiting, I foolishly reset the system. &lt;b&gt;Big mistake!&lt;/b&gt;.&lt;/p&gt;

&lt;p&gt;On the next boot of the system, there were no PXE messages from the network card and during bootup the e1000 linux driver only threw out the ominous message &lt;i&gt;The EEPROM Checksum Is Not Valid&lt;/i&gt; without loading the network interface.&lt;br /&gt;
It turns out, I just trashed the firmware of my on-board network interface.&lt;br /&gt;
Calling the eeupdate program again did not work as it bailed out because the eeprom was corrupted&lt;br /&gt;
At such times, I firmly believe in the use of swearwords accompanied by heavy googling for some advice. Alas, googling told me only that I broke my hardware and needed new one.&lt;/p&gt;

&lt;p&gt;As returning hardware because of a problem is akin to giving up, which is generally unacceptable, I decided to look into the issue a bit more and find a workable solution to unbrick the network interface.&lt;br /&gt;
To recap, I had the following:
&lt;ul&gt;
 &lt;li&gt;One on-board network interface with a corrupted nvram&lt;/li&gt;
 &lt;li&gt;One eeprom image for said network interface (For reference: &lt;a href=&quot;http://blog.wodkamelone.de/uploads/82547EI.EEP&quot; title=&quot;82547EI.EEP&quot; target=&quot;_blank&quot;&gt;82547EI.EEP&lt;/a&gt;)&lt;/li&gt;
 &lt;li&gt;No working flash program&lt;/li&gt;
 &lt;li&gt;No working driver&lt;/li&gt;
 &lt;li&gt;One working Linux system without network&lt;/li&gt;
 &lt;li&gt;One working Linux notebook with network&lt;/li&gt;
&lt;/ul&gt;
Luckily, the working Linux system and network access is all I needed:&lt;/p&gt;

&lt;p&gt;The first step was getting the sources of the e1000 driver from the &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/sourceforge.net/projects/e1000&#039;);&quot;  href=&quot;http://sourceforge.net/projects/e1000&quot; title=&quot;e1000 at sf.net&quot;&gt;project page&lt;/a&gt;. As this was a few years ago, I chose the &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/downloads.sourceforge.net/e1000/e1000-7.3.15.tar.gz?modtime=1161336542&amp;amp;amp;big_mirror=0&#039;);&quot;  href=&quot;http://downloads.sourceforge.net/e1000/e1000-7.3.15.tar.gz?modtime=1161336542&amp;amp;big_mirror=0&quot; title=&quot;e1000 Linux driver, version 7.3.15&quot;&gt;version 7.3.15&lt;/a&gt; which was current at this time.&lt;/p&gt;

&lt;p&gt;After untaring the sources, a quick &lt;i&gt;grep -R &#039;The EEPROM Checksum Is Not Valid&#039; e1000-7.3.15&lt;/i&gt; turned up one hit in &lt;i&gt;e1000-7.3.15/src/e1000_main.c&lt;/i&gt;:

&lt;div class=&quot;geshi&quot; style=&quot;text-align: left&quot;&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/* make sure the EEPROM is good */&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;e1000_validate_eeprom_checksum&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&amp;amp;adapter-&amp;gt;hw&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &amp;lt; &lt;span style=&quot;color: #0000dd;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; DPRINTK&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;PROBE, ERR, &lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;The EEPROM Checksum Is Not Valid&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; err = -EIO;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span style=&quot;color: #b1b100;&quot;&gt;goto&lt;/span&gt; err_eeprom;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;#160;&lt;/div&gt;
So there is a function called &lt;i&gt;e1000_validate_eeprom_checksum&lt;/i&gt; responsible for checking the validity of the eeprom. During the main initialization of the card this function is called and in case the checksum is not valid, the error handler err_eeprom is executed which aborts the module load.&lt;br /&gt;
On a hunch, I removed the whole check logic containted in this function located in &lt;/i&gt;e1000-7.3.15/src/e1000_hw.c&lt;/i&gt;. After I was done, the whole function body consisted only of a &quot;return 0&quot; statement meaning that the checksum check will always succeed.&lt;/p&gt;

&lt;p&gt;Building the modified module by calling &lt;i&gt;make&lt;/i&gt; in the src dir resulted in a e1000.ko file which could be loaded into the running kernel by executing &quot;insmod ./e1000&quot;. (Note, this will probably not work with current kernels as the buildscripts have changed. Use a current version of the e1000 driver instead.)&lt;br /&gt;
To my great relief the driver returned the following message:
&lt;pre class=&quot;screen&quot;&gt;Intel(R) PRO/1000 Network Driver - version 7.3.15
Copyright (c) 1999-2006 Intel Corporation.
e1000: 0000:01:01.0: e1000_probe: (PCI:33MHz:32-bit) ff:ff:ff:ff:ff:ff
e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection
e1000: 0000:03:02.0: e1000_probe: (PCI:33MHz:32-bit) 00:e0:81:55:f2:01
e1000: eth1: e1000_probe: Intel(R) PRO/1000 Network Connection&lt;/pre&gt;
So even though the mac address of the card is broken, at least the card is somewhat detected and I can work on restoring the eeprom.&lt;/p&gt;

&lt;p&gt;For modifying low-level settings of network interfaces under Linux one can usually use the fabulous &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/sourceforge.net/projects/gkernel/&#039;);&quot;  href=&quot;http://sourceforge.net/projects/gkernel/&quot; title=&quot;kernel related software&quot;&gt;ethtool&lt;/a&gt; utility.&lt;br /&gt;
Using the -e parameter dumps the eeprom values of the specified network interface onto the screen. This is great for getting a backup of the eeprom:
&lt;pre class=&quot;screen&quot;&gt;[root@selene ~]# ethtool -e eth1 | head -n 5
Offset		Values
------		------
0x0000		00 e0 81 55 f2 01 10 02 ff ff 06 20 ff ff ff ff 
0x0010		ff ff ff ff 0b 64 76 10 86 80 76 10 86 80 84 b2 
0x0020		dd 20 22 22 00 00 90 2f 80 23 12 00 20 1e 12 00 
[root@selene ~]# &lt;/pre&gt;
&lt;/p&gt;

&lt;p&gt;Even better is the -E parameter as it allows changing a single byte at a specified address in the eeprom:
&lt;pre class=&quot;screen&quot;&gt;[root@selene ~]# ethtool -E eth0 magic 0x10198086 offset 0x0 value 0x00
[root@selene ~]# &lt;/pre&gt;
This command would change the byte at the address 0x0 (the first byte) into the value 0x00. The 0x10198086 value is the &quot;magic&quot; value needed to &quot;unlock&quot; this write operation. Depending on the driver and the card this value is different for each system. In the case of the intel e1000 driver, the magic value is the Device ID and Vendor ID of the selected network card. This value can be gathered by examining the lspci -n output.&lt;/br&gt;
As I was in a hurry back then to get the machine working again, I didn&#039;t try to find out what exactly the magic value was but just commented out this check in the e1000_ethtool.c file.&lt;br /&gt;
For reference, the patch of my modifications to the e1000 driver are &lt;a href=&quot;http://blog.wodkamelone.de/uploads/e1000-repair.patch&quot; title=&quot;e1000-repair.patch&quot; target=&quot;_blank&quot;&gt;e1000-repair.patch&lt;/a&gt;downloadable as a unified diff.
&lt;/p&gt;

&lt;p&gt;Now, that I could change single values in the eeprom, it was time to take a look at the Tyan provided eeprom file:
&lt;pre class=&quot;screen&quot;&gt;[root@localhost root]# head -n 5 82547.eep 
E000 2A81 0855 0A10 FFFF FFFF FFFF FFFF 
FFFF FFFF 640B 1019 8086 1019 8086 B200 
1F35 002A 0E00 0012 0E00 20DD 7777 1F95 
0001 1F73 0098 1F72 3FB0 0009 1200 3649 
00CF 8FA7 290E 0305 0CCA FFFF FFFF FFFF 
&lt;/pre&gt;
Comparing this eeprom file with the dump taken earlier from the second network interface in the machine showed that the .eep file from intel was in &quot;&lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/en.wikipedia.org/wiki/Little_Endian#Middle-endian&#039;);&quot;  href=&quot;http://en.wikipedia.org/wiki/Little_Endian#Middle-endian&quot; title=&quot;Endianess at Wikipedia&quot;&gt;mixed-endian&lt;/a&gt;&quot; format, meaning I had to shuffle the values around a bit before being able to rewrite the image. The file contains the eeprom values as groups of two bytes each in reversed order. The first four byte-values in the file are &lt;i&gt;0xe0 0x00 0x2a 0x81&lt;/i&gt; while in the eeprom they would be &lt;i&gt;0x00 0xe0 0x81 0x2a&lt;/i&gt;.&lt;/p&gt;

&lt;p&gt;After I found the correct byte ordering, I could simply call ethtool -E manually with the correct addresses and just write each byte into the eeprom or automate this and reduce the possibility of mistakes. Naturally, automation it is. Back then I chose to do this script in PHP as a small exercise in command-line-interface programming.&lt;br /&gt;

The PHP script can be downloaded as &lt;a href=&quot;http://blog.wodkamelone.de/uploads/eepromer.phps&quot; title=&quot;eepromer.php&quot; target=&quot;_blank&quot;&gt;eepromer.php&lt;/a&gt; and executed by calling &lt;i&gt;php eepromer.php&lt;/i&gt; on the shell.&lt;br /&gt;
In order to explain it&#039;s working, the code is printed below:
&lt;div class=&quot;geshi&quot; style=&quot;text-align: left&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$file&lt;/span&gt; = &lt;span style=&quot;color: #0000ff;&quot;&gt;&quot;82547.eep&quot;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$handle&lt;/span&gt; = &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.php.net/&amp;amp;lt;span style=&#039;);&quot;  href=&quot;http://www.php.net/&amp;lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;FNAMEL&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;fopen&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$file&lt;/span&gt;, &lt;span style=&quot;color: #0000ff;&quot;&gt;&quot;r&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$contents&lt;/span&gt; = &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.php.net/&amp;amp;lt;span style=&#039;);&quot;  href=&quot;http://www.php.net/&amp;lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;FNAMEL&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;fread&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$handle&lt;/span&gt;, &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.php.net/&amp;amp;lt;span style=&#039;);&quot;  href=&quot;http://www.php.net/&amp;lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;FNAMEL&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;filesize&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$file&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.php.net/&amp;amp;lt;span style=&#039;);&quot;  href=&quot;http://www.php.net/&amp;lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;FNAMEL&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;fclose&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$handle&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$tok&lt;/span&gt; = &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.php.net/&amp;amp;lt;span style=&#039;);&quot;  href=&quot;http://www.php.net/&amp;lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;FNAMEL&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;strtok&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$contents&lt;/span&gt;, &lt;span style=&quot;color: #0000ff;&quot;&gt;&quot; \n\r&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$eepdata&lt;/span&gt; = &lt;span style=&quot;color: #0000ff;&quot;&gt;&quot;&quot;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$i&lt;/span&gt; = &lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #b1b100;&quot;&gt;while&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$tok&lt;/span&gt; !== &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;false&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span style=&quot;color: #000088;&quot;&gt;$eepdata&lt;/span&gt; .= &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.php.net/&amp;amp;lt;span style=&#039;);&quot;  href=&quot;http://www.php.net/&amp;lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;FNAMEL&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;substr&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$tok&lt;/span&gt;, &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;,&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;.&#039; &#039;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span style=&quot;color: #000088;&quot;&gt;$eepdata&lt;/span&gt; .= &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.php.net/&amp;amp;lt;span style=&#039;);&quot;  href=&quot;http://www.php.net/&amp;lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;FNAMEL&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;substr&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$tok&lt;/span&gt;, &lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt;,&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;.&#039; &#039;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span style=&quot;color: #000088;&quot;&gt;$tok&lt;/span&gt; = &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.php.net/&amp;amp;lt;span style=&#039;);&quot;  href=&quot;http://www.php.net/&amp;lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;FNAMEL&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;strtok&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&quot; \n\r&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span style=&quot;color: #000088;&quot;&gt;$i&lt;/span&gt;++;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$tok&lt;/span&gt; = &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.php.net/&amp;amp;lt;span style=&#039;);&quot;  href=&quot;http://www.php.net/&amp;lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;FNAMEL&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;strtok&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$eepdata&lt;/span&gt;, &lt;span style=&quot;color: #0000ff;&quot;&gt;&quot; &quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$i&lt;/span&gt; = &lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #b1b100;&quot;&gt;while&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000088;&quot;&gt;$tok&lt;/span&gt; !== &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;false&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span style=&quot;color: #000088;&quot;&gt;$offset&lt;/span&gt; = &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.php.net/&amp;amp;lt;span style=&#039;);&quot;  href=&quot;http://www.php.net/&amp;lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;FNAMEL&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;sprintf&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&quot;%x&quot;&lt;/span&gt;, &lt;span style=&quot;color: #000088;&quot;&gt;$i&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.php.net/&amp;amp;lt;span style=&#039;);&quot;  href=&quot;http://www.php.net/&amp;lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;FNAMEL&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;&quot;ethtool -E eth0 magic 0x00 offset 0x$offset value 0x$tok\n&quot;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span style=&quot;color: #000088;&quot;&gt;$tok&lt;/span&gt; = &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.php.net/&amp;amp;lt;span style=&#039;);&quot;  href=&quot;http://www.php.net/&amp;lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;FNAMEL&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;strtok&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&quot; &quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span style=&quot;color: #000088;&quot;&gt;$i&lt;/span&gt;++;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;
At the start, the variable file contains the filename to read in. This file is then opened and read into memory as it is only 6K large. The &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/php.net/manual/en/function.strtok.php&#039;);&quot;  href=&quot;http://php.net/manual/en/function.strtok.php&quot; title=&quot;String Tokenizer&quot;&gt;PHP String Tokenizer function&lt;/a&gt; is used to extract the values from the script and the bytes in each extracted group are then swapped around to put them into big endian byte-order. When the eeprom file has been completely parsed the ethtool commands to write the gathered data into the eeprom are printed to STDOUT:
&lt;pre class=&quot;screen&quot;&gt;[root@localhost root]# php eepromer.php | head -n 5
ethtool -E eth0 magic 0x00 offset 0x0 value 0x00
ethtool -E eth0 magic 0x00 offset 0x1 value 0xE0
ethtool -E eth0 magic 0x00 offset 0x2 value 0x81
ethtool -E eth0 magic 0x00 offset 0x3 value 0x2A
ethtool -E eth0 magic 0x00 offset 0x4 value 0x55
[root@localhost root]# &lt;/pre&gt;
By piping the output of this quick-and-dirty script into a shell (php eepromer.php | sh), the content of the .eep file is written for real into the eeprom. The last step is changing the first 6 bytes of the eeprom (offset 0x0 to 0x5) to the original mac address of the network interface.&lt;/br&gt;
After this has been done, the network card is considered repaird or unbricked.&lt;/p&gt;

&lt;p&gt;Now, this explanation should give anyone some hints on fixing his network card&#039;s eeprom should this be needed because of problems with the kernel releases mentioned in the beginning. It is unlikely that following the procedure above to the letter is going to have any usable results as every system and situation is different.&lt;br /&gt;
The major problem would be, that not everyone has a working .eep file from Intel available after his own card is trashed. My suggestion would be to look for a friend who has exactly the same card. This can be achieved by using lspci:
&lt;pre class=&quot;screen&quot;&gt;[root@selene ~]# lspci | grep Ethernet
01:01.0 Ethernet controller: Intel Corporation 82547EI Gigabit Ethernet Controller
03:02.0 Ethernet controller: Intel Corporation 82541GI Gigabit Ethernet Controller
[root@selene ~]# lspci -n | grep &#039;01:01\.0&#039;
01:01.0 0200: 8086:1019
[root@selene ~]# &lt;/pre&gt;
If a friend has the same network card as indicated by the Vendor and Device ID (8086 == Intel, 1019 == 82547EI Gigabit Ethernet Controller in my example) he should be able to take eeprom dump by calling ethtool -e [device] &gt; /tmp/eeprom-[device].dump.:
&lt;pre class=&quot;screen&quot;&gt;[root@selene ~]# ethtool -e eth0 | head -n 8
Offset		Values
------		------
0x0000		00 e0 81 55 f2 00 10 0a ff ff ff ff ff ff ff ff 
0x0010		ff ff ff ff 0b 64 19 10 86 80 19 10 86 80 00 b2 
0x0020		35 1f 2a 00 00 0e 12 00 00 0e dd 20 77 77 95 1f 
0x0030		01 00 73 1f 98 00 72 1f b0 3f 09 00 00 12 49 36 
0x0040		cf 00 a7 8f 0e 29 05 03 c8 0c ff ff ff ff ff ff 
0x0050		ff ff ff ff ff ff ff ff ff ff ff ff ff ff 02 06 
[root@selene ~]# &lt;/pre&gt;
&lt;/p&gt;

&lt;p&gt;This dump file can then be written into your own nvram by an easier procedure then described above. After all, no endianness swapping is necessary as ethtool already returned the data correctly. A bit of reformatting of the import is necessary however but can be accomplished in a simple bash script:
&lt;div class=&quot;geshi&quot; style=&quot;text-align: left&quot;&gt;span style=&quot;color: #ff0000;&quot;&gt;&quot;\n&quot;&lt;/span&gt;&lt;/div&gt;
This script, which can be written as one single line, will remove the header and other superfluous data from the dumpfile, leaving only the values itself which are then echoed to STDOUT in the form of an ethtool command.
&lt;pre class=&quot;screen&quot;&gt;[root@selene ~]# magic=0x0; j=0; for i in `sed -e &#039;1,2d&#039; /tmp/eeprom-[device].dump | cut -c 9- |
tr -d &quot;\n&quot;`; do echo ethtool -E magic $magic offset 0x$(printf %x ${j}) value 0x${i}; j=$(($j + 1)); done | head -n 5
ethtool -E magic 0x0 offset 0x0 value 0x00
ethtool -E magic 0x0 offset 0x1 value 0xe0
ethtool -E magic 0x0 offset 0x2 value 0x81
ethtool -E magic 0x0 offset 0x3 value 0x55
ethtool -E magic 0x0 offset 0x4 value 0xf2
[root@selene ~]#&lt;/pre&gt;
Piping this into a shell will restore your eeprom meaning only the mac address has to be reverted to the old one.
The correct working of the above bash line should be tested however, as the output of ethtool differs depending on the card and the driver.
&lt;/p&gt;

&lt;p&gt;Should the network interface not even be visible on the PCI bus anymore (possible due to the usage of the ibautil.exe tool mentioned on some webpages) reflashing the main bios might work for some systems. The &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/www.coreboot.org/Flashrom&#039;);&quot;  href=&quot;http://www.coreboot.org/Flashrom&quot; title=&quot;Flashrom&quot;&gt;flashrom utility&lt;/a&gt; from the coreboot project might come in handy for this.&lt;br /&gt;
Otherwise it might be necessary to rewrite the necessary part of the eeprom first through the SPI, a serial programming interface, in order to have it enumerate again on the pci bus.&lt;br /&gt;
Should this be the case, it might be easier to just return your mainboard for repair though.&lt;br /&gt;
Should you be willing however, to try your luck and certainly void any little bit of warranty you had left, Intel offers a nice &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/download.intel.com/design/network/applnots/ap496.pdf&#039;);&quot;  href=&quot;http://download.intel.com/design/network/applnots/ap496.pdf&quot; title=&quot;Intel I/O Controller Hub 8 LAN NVM Map and Information Guide&quot;&gt;manual explaining the firmware format&lt;/a&gt; of it&#039;s ICH8 system.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Thu, 16 Oct 2008 23:23:31 +0200</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/146-guid.html</guid>
    
</item>
<item>
    <title>Fedora Installation from a bootable USB stick</title>
    <link>http://blog.wodkamelone.de/archives/144-Fedora-Installation-from-a-bootable-USB-stick.html</link>
            <category>Fedora</category>
    
    <comments>http://blog.wodkamelone.de/archives/144-Fedora-Installation-from-a-bootable-USB-stick.html#comments</comments>
    <wfw:comment>http://blog.wodkamelone.de/wfwcomment.php?cid=144</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.wodkamelone.de/rss.php?version=2.0&amp;type=comments&amp;cid=144</wfw:commentRss>
    

    <author>andreas@dicp.de (andreas)</author>
    <content:encoded>
    &lt;p&gt;&lt;!-- s9ymdb:150 --&gt;&lt;img class=&quot;serendipity_image_left&quot; width=&quot;110&quot; height=&quot;110&quot; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.wodkamelone.de/uploads/usbstick.serendipityThumb.png&quot; alt=&quot;&quot;  /&gt;&lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/hansdegoede.livejournal.com/4573.html&#039;);&quot;  href=&quot;http://hansdegoede.livejournal.com/4573.html&quot; title=&quot;Rawhide install howto&quot;&gt;Hans wrote about a different way of preparing a bootable USB stick&lt;/a&gt; for a Fedora installation then I did in &lt;a href=&quot;http://blog.vodkamelone.de/archives/139-Installing-Fedora-9-from-a-small-USB-stick.html&quot; title=&quot;Installing Fedora 9 from a (small) USB stick&quot;&gt;Installing Fedora 9 from a (small) USB stick&lt;/a&gt;.&lt;br /&gt;
Unfortunately, his blogpost is set to only accept comments from &quot;friends&quot; and does not even accept the &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/fedoraproject.org/wiki/FedoraSummit/OpenId&#039;);&quot;  href=&quot;http://fedoraproject.org/wiki/FedoraSummit/OpenId&quot; title=&quot;Fedora OpenID&quot;&gt;Fedora OpenID&lt;/a&gt; url as a &quot;friend&quot;. :-( Thus I&#039;ll reply as an article:&lt;/p&gt;

&lt;p&gt;While my recipe wrote the data directly onto the USB stick without creating any partitions ont it, Hans suggests to format the USB stick similar to a normal hard drive with a &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/en.wikipedia.org/wiki/Master_boot_record&#039;);&quot;  href=&quot;http://en.wikipedia.org/wiki/Master_boot_record&quot; title=&quot;Master Boot Record at Wikipedia&quot;&gt;Master Boot Record&lt;/a&gt; and a single partition holding the data. This is based on the hope that it makes it more likely that the stick is in fact bootable.&lt;/p&gt;

&lt;p&gt;Fedora, and in extension Red Hat Linux before it, has always created partition-less diskboot.img files. The commands I listed in my &lt;a href=&quot;http://blog.vodkamelone.de/archives/139-Installing-Fedora-9-from-a-small-USB-stick.html&quot; title=&quot;Installing Fedora 9 from a (small) USB stick&quot;&gt;article&lt;/a&gt; are taken directly from the sourcecode of the anaconda-runtime scripts, which have in the past generated the shipped diskboot.img file.&lt;/p&gt;

&lt;p&gt;I might not remember the exact date but I&#039;m certain I&#039;ve been booting installation images from USB sticks for more than 5 years now and never had a problem with the partition-less disk-image as found on the installation CDs in the &lt;i&gt;/images&lt;/i&gt;-folder.&lt;br /&gt;
In fact, I remember some problems with an older &lt;a onclick=&quot;javascript: pageTracker._trackPageview(&#039;/extlink/en.wikipedia.org/wiki/EPIA&#039;);&quot;  href=&quot;http://en.wikipedia.org/wiki/EPIA&quot; title=&quot;EPIA at Wikipedia&quot;&gt;EPIA-M&lt;/a&gt; board which absolutely refused to boot from an USB stick formatted as either a hard-drive or a ZIP-drive with the data contained on the 4th partition.&lt;br /&gt;
But that was in 2003 and I&#039;d really expect current BIOS implementations to correctly boot from whatever disk is plugged in. Yeah, right...&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sun, 20 Jul 2008 23:36:06 +0200</pubDate>
    <guid isPermaLink="false">http://blog.wodkamelone.de/archives/144-guid.html</guid>
    
</item>

</channel>
</rss>
