<?xml version="1.0"?>
<!-- name="generator" content="blosxom/2.0" -->
<!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS 0.91//EN" "http://my.netscape.com/publish/formats/rss-0.91.dtd">

<rss version="0.91">
  <channel>
    <title>Az's Link Spam   </title>
    <link>http://www.underhanded.org/blog</link>
    <description>I'm Bored</description>
    <language>en</language>

  <item>
    <title>Loading Firmware into the Debian Installer in 38 Easy Steps</title>
    <link>http://www.underhanded.org/blog/2009/12/18#installerfirmware</link>
    <description>
So, we have these Dell PowerEdge servers at work.  Great machines, and they all come with these Broadcom Network cards that use a driver called 'bnx2' under the Linux kernel.  As some things do, this requires &lt;a href=&quot;http://www.underhanded.org/blog?redirectURL=http%3A%2F%2Fpackages.debian.org%2Ffirmware-bnx2&quot; onMouseOver=&quot;window.status='http://packages.debian.org/firmware-bnx2'; return true;&quot; onMouseOut=&quot;window.status=''; return true;&quot; target=&quot;_BLANK&quot;&gt;special firmware&lt;/a&gt; to be made available to the network driver in order to work correctly.  As you might imagine, this can become very annoying when you're trying to do a &lt;a href=&quot;http://www.underhanded.org/blog?redirectURL=http%3A%2F%2Fwww.debian.org%2FCD%2Fnetinst%2F&quot; onMouseOver=&quot;window.status='http://www.debian.org/CD/netinst/'; return true;&quot; onMouseOut=&quot;window.status=''; return true;&quot; target=&quot;_BLANK&quot;&gt;network install&lt;/a&gt; and your network card is greedily asking for files that aren't on the CD.
&lt;br&gt;&lt;br&gt;
So, over the course of running into this same issue for almost 2 years now, I've tried a few things to streamline the process:&lt;br&gt;
&lt;ul&gt;
&lt;li&gt;Grab the latest Weekly/Testing Installer - Some will ask to load firmware off USB, some won't. None have done it right as of yet.&lt;/li&gt;
&lt;li&gt;Grab &lt;a href=&quot;http://www.underhanded.org/blog?redirectURL=http%3A%2F%2Fkmuto.jp%2Fdebian%2Fd-i%2F&quot; onMouseOver=&quot;window.status='http://kmuto.jp/debian/d-i/'; return true;&quot; onMouseOut=&quot;window.status=''; return true;&quot; target=&quot;_BLANK&quot;&gt;special backported images&lt;/a&gt; - No luck at first, but the latest version has the files available. Unfortunately they were in the wrong directory, which led me to the solution below.&lt;/li&gt;
&lt;li&gt;Using the first full &lt;a href=&quot;http://www.underhanded.org/blog?redirectURL=http%3A%2F%2Fwww.debian.org%2FCD%2F&quot; onMouseOver=&quot;window.status='http://www.debian.org/CD/'; return true;&quot; onMouseOut=&quot;window.status=''; return true;&quot; target=&quot;_BLANK&quot;&gt;Debian CD&lt;/a&gt; to do a network-less install, and then loading &lt;a href=&quot;http://www.underhanded.org/blog?redirectURL=http%3A%2F%2Fpackages.debian.org%2Ffirmware-bnx2&quot; onMouseOver=&quot;window.status='http://packages.debian.org/firmware-bnx2'; return true;&quot; onMouseOut=&quot;window.status=''; return true;&quot; target=&quot;_BLANK&quot;&gt;firmware-bnx2&lt;/a&gt; on the finished install, followed by manual network config.&lt;/li&gt;
&lt;li&gt;And I don't remember, I've tried so many different &quot;recommended&quot; ways of loading firmware into the installer that I've forgotten several.&lt;/li&gt;
&lt;/ul&gt;
&lt;br&gt;
&lt;i&gt;Anyway&lt;/i&gt;, here's the easiest way I've found:&lt;br&gt;
&lt;ol&gt;
&lt;li&gt;Grab a &lt;a href=&quot;http://www.underhanded.org/blog?redirectURL=http%3A%2F%2Fwww.debian.org%2FCD%2Fnetinst%2F&quot; onMouseOver=&quot;window.status='http://www.debian.org/CD/netinst/'; return true;&quot; onMouseOut=&quot;window.status=''; return true;&quot; target=&quot;_BLANK&quot;&gt;Network Install image&lt;/a&gt;.  Real men use the Testing installer because it's pretty obvious if you have a bad image.&lt;/li&gt;
&lt;li&gt;Get one of those fancy USB memory sticks. Or if you're cheap like me, find a coworker with one and &quot;borrow&quot; it.&lt;/li&gt;
&lt;li&gt;Extract the firmware from &lt;a href=&quot;http://www.underhanded.org/blog?redirectURL=http%3A%2F%2Fpackages.debian.org%2Ffirmware-bnx2&quot; onMouseOver=&quot;window.status='http://packages.debian.org/firmware-bnx2'; return true;&quot; onMouseOut=&quot;window.status=''; return true;&quot; target=&quot;_BLANK&quot;&gt;the bnx2 firmware package&lt;/a&gt; (.fw files) into a firmware/ directory on the USB key. Or use mine &lt;a href=&quot;/bnx2.tgz&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Run through the network install until you are just BEFORE the &quot;detect network&quot; steps.&lt;/li&gt;
&lt;li&gt;Hit alt-F2 to switch to a console, and plug the USB key in.&lt;/li&gt;
&lt;li&gt;The kernel should auto-mount the key, and tell you the partition in dmesg: &lt;b&gt;dmesg | tail -30&lt;/b&gt; should show you something like &quot;mounted on sdb1&quot;&lt;/li&gt;
&lt;li&gt;Mount the partition and copy the firmware files to where the kernel needs them: &lt;b&gt;mount -t vfat /dev/sdb1 /mnt;cp -a /mnt/firmware/ /lib/firmware/;umount /mnt&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;Hit Alt-F1 to switch back to the Installer, and run the Network detect. If it fails to detect, switch back to the F2 console and look at dmesg. It is likely looking for a different version of one of the firmware files. You can usually get away with renaming another file with the same version to the one it is looking for. The worst that happens is it still won't load the firmware (well, for the bnx2 stuff, I don't know if other firmware will cause your dog to explode for different hardware).&lt;/li&gt;
&lt;li&gt;Once it tries to detect the card and fails to load the firmware, it won't look for new firmware unless you unload the module first. To force it to reload the driver, remove it in the F2 console with: &lt;b&gt;modprobe -r bnx2&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;With the firmware there, the network detection should go smoothly, and the Installer will be on its merry way. Once its finished and you're able to run apt in your shiny new shell, install the &lt;a href=&quot;http://www.underhanded.org/blog?redirectURL=http%3A%2F%2Fpackages.debian.org%2Ffirmware-bnx2&quot; onMouseOver=&quot;window.status='http://packages.debian.org/firmware-bnx2'; return true;&quot; onMouseOut=&quot;window.status=''; return true;&quot; target=&quot;_BLANK&quot;&gt;firmware-bnx2&lt;/a&gt; package, or whatever firmware package you may have used this for if they exist.  This should hopefully help any debian kernels keep things in place as you upgrade.&lt;/li&gt;
&lt;/ol&gt;
&lt;br&gt;&lt;br&gt;
I hope this saves someone a few hours of frustration.  At the very least, I have some notes I can look at when this is still happening a year from now.</description>
  </item>
  <item>
    <title>Moving Old Paper</title>
    <link>http://www.underhanded.org/blog/2004/12/08#remotedeb</link>
    <description>
A while ago I wrote a whitepaper to fill a personal need, and linked it on a couple forums.  
It recieved quite a bit of attention, but seeing as I had hosted it on Sourceforge, I never really had an idea as to how much traffic it got and where from.  
So, I threw up a redirect and moved it here.  It's still quite old, but meh.
&lt;br&gt;&lt;br&gt;
&lt;a href=&quot;http://www.underhanded.org/blog?redirectURL=http%3A%2F%2Fwww.underhanded.org%2Fpapers%2Fdebian-conversion%2Fremotedeb.html&quot; onMouseOver=&quot;window.status='http://www.underhanded.org/papers/debian-conversion/remotedeb.html'; return true;&quot; onMouseOut=&quot;window.status=''; return true;&quot; target=&quot;_BLANK&quot;&gt;Remote Linux to Debian Conversion&lt;/a&gt; (Formerly &lt;a href=&quot;http://www.underhanded.org/blog?redirectURL=http%3A%2F%2Ftrilldev.sf.net%2Ffiles%2Fremotedeb.html&quot; onMouseOver=&quot;window.status='http://trilldev.sf.net/files/remotedeb.html'; return true;&quot; onMouseOut=&quot;window.status=''; return true;&quot; target=&quot;_BLANK&quot;&gt;here&lt;/a&gt;)</description>
  </item>
  </channel>
</rss>