<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Weblog for Thomas S. Iversen</title>
	<atom:link href="http://zensonic.dk/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://zensonic.dk</link>
	<description>Life, Universe and everything</description>
	<lastBuildDate>Sun, 29 Aug 2010 20:02:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>About errors setting up SASL/StartTLS in Postfix under Ubuntu</title>
		<link>http://zensonic.dk/?p=275</link>
		<comments>http://zensonic.dk/?p=275#comments</comments>
		<pubDate>Sun, 29 Aug 2010 20:02:01 +0000</pubDate>
		<dc:creator>zensonic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mobile Phone]]></category>
		<category><![CDATA[Unix]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://zensonic.dk/?p=275</guid>
		<description><![CDATA[In the process of setting up SASL and StartTLS under Postfix, I got this in the log: &#8220;warning: SASL authentication failure: cannot connect to saslauthd server: No such file or directory&#8221; It took me some minutes to figure out what was wrong. Obviously it has to do with postfix not being able to connect to [...]]]></description>
			<content:encoded><![CDATA[<p>In the process of setting up SASL and StartTLS under Postfix, I got this in the log:</p>
<p style="text-align: left; padding-left: 30px;">&#8220;warning: SASL authentication failure: cannot connect to saslauthd server: No such file or directory&#8221;</p>
<p>It took me some minutes to figure out what was wrong. Obviously it has to do with postfix not being able to connect to the saslauthd server. The question is just, why? I went with a hunch of permissions &#8230; and wasted some time, so if you get the error, here is what solved it for me. In</p>
<pre style="padding-left: 30px;">/etc/default/saslauthd</pre>
<p>You have to remove the default line and let saslauthd create its file under the postfix dirstructure. That is</p>
<pre style="padding-left: 30px;">&gt; OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd
&lt; OPTIONS="-c -m /var/run/saslauthd"</pre>
<p>And then</p>
<pre style="padding-left: 30px;">/etc/init.d/postfix restart
</pre>
<p>Not rocket science, but I chased a wild goose looking at permissions for 15 minutes before figuring out what was wrong.</p>
]]></content:encoded>
			<wfw:commentRss>http://zensonic.dk/?feed=rss2&amp;p=275</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title></title>
		<link>http://zensonic.dk/?p=272</link>
		<comments>http://zensonic.dk/?p=272#comments</comments>
		<pubDate>Fri, 13 Aug 2010 19:23:03 +0000</pubDate>
		<dc:creator>zensonic</dc:creator>
				<category><![CDATA[PBS]]></category>
		<category><![CDATA[Queue Software]]></category>
		<category><![CDATA[Unix]]></category>

		<guid isPermaLink="false">http://zensonic.dk/?p=272</guid>
		<description><![CDATA[If you get this, trying to execute basic PBS commands $ qstat -a qstat: End of File it is a permission problem. Basically you have to do some queue/server adminstration using qmgr as a user who have admin access already: $ qmgr set server acl_users += &#60;username&#62; set queue &#60;queuename&#62; acl_users += &#60;username&#62;]]></description>
			<content:encoded><![CDATA[<p>If you get this, trying to execute basic PBS commands</p>
<pre style="padding-left: 30px;">$ qstat -a
qstat: End of File</pre>
<p>it is a permission problem. Basically you have to do some queue/server adminstration using qmgr as a user who have admin access already:</p>
<pre style="padding-left: 30px;">$ qmgr
set server acl_users += &lt;username&gt;
set queue &lt;queuename&gt; acl_users += &lt;username&gt;</pre>
]]></content:encoded>
			<wfw:commentRss>http://zensonic.dk/?feed=rss2&amp;p=272</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ubuntu Headless installation (serialport)</title>
		<link>http://zensonic.dk/?p=264</link>
		<comments>http://zensonic.dk/?p=264#comments</comments>
		<pubDate>Sun, 01 Aug 2010 06:33:52 +0000</pubDate>
		<dc:creator>zensonic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Personal ramblings]]></category>
		<category><![CDATA[Unix]]></category>

		<guid isPermaLink="false">http://zensonic.dk/?p=264</guid>
		<description><![CDATA[I had to install ubuntu 10.04 server edition over the serialport. This is doable, but requires a keyboard to be attached and keys pressed blindly in the right sequence. Here is a little cookbook on what to press: Run a terminal client on the serial console device. Configure the serial port to either the failsafe [...]]]></description>
			<content:encoded><![CDATA[<p>I had to install ubuntu 10.04 server edition over the serialport. This is doable, but requires a keyboard to be attached and keys pressed blindly in the right sequence. Here is a little cookbook on what to press:</p>
<ol>
<li>Run a terminal client on the serial console device. Configure the serial port to either the failsafe 9600 n-8-1, Hardware Flow Control=NONE, or to the much speedier 115200 n-8-1, Hardware Flow Control=NONE. The latter should be used only if the serial port in both ends support this kind of speed.</li>
<li>Boot the server with the ubuntu 10.04 server install media in the CD/DVD drive, or from a USB ke</li>
<li>When it has booted into the installation menu (takes a couple of seconds), then do this
<ul>
<li>Press &#8216;Enter&#8217; (for language selection)</li>
<li>Press &#8216;F6&#8242; (Other Options)</li>
<li>Press &#8216;ESC&#8217; (to close the Other Options Menu)</li>
<li>Press &#8216;Backspace&#8217; 3 Times (to delete &#8220;&#8211; &#8220;)</li>
<li>Type &#8216;console=ttyS0,115200n8 &#8212; &#8216;</li>
<li>Press &#8216;Enter&#8217;</li>
</ul>
</li>
<li>Installation willl continue, ouputting the dialogs on the serial device.</li>
</ol>
<p>You should ofcourse replace ttyS0 with another serial device, if applicable. I am at a loss as to why I have to do this in order for me to install Ubuntu Server 10.04 over the serial port in 2010!</p>
]]></content:encoded>
			<wfw:commentRss>http://zensonic.dk/?feed=rss2&amp;p=264</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Revitalizing an aging Nokia E66 mobile phone</title>
		<link>http://zensonic.dk/?p=223</link>
		<comments>http://zensonic.dk/?p=223#comments</comments>
		<pubDate>Tue, 27 Jul 2010 06:38:05 +0000</pubDate>
		<dc:creator>zensonic</dc:creator>
				<category><![CDATA[FUN Projects]]></category>
		<category><![CDATA[Mobile Phone]]></category>

		<guid isPermaLink="false">http://zensonic.dk/?p=223</guid>
		<description><![CDATA[I had decided to give my wife my E66, but my E66 was pretty much worn out. The case had started to fall apart and there was dust beneath the glass protecting the TFT screen. It is possible to buy spareparts for mobile phones though. Buying them from a local dealer in your country will [...]]]></description>
			<content:encoded><![CDATA[<p>I had decided to <a href="http://zensonic.dk/?p=215">give my wife my E66</a>, but my E66 was pretty much worn out. The case had started to fall apart and there was dust beneath the glass protecting the TFT screen.</p>
<div id="attachment_247" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0009.jpg"><img class="size-full wp-image-247" title="IMAG0009" src="http://zensonic.dk/wp-content/uploads/IMAG0009.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">What was wrong with the E66? (broken fascia)</p></div>
<div id="attachment_246" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0010.jpg"><img class="size-full wp-image-246" title="IMAG0010" src="http://zensonic.dk/wp-content/uploads/IMAG0010.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">What was wrong with the E66? (wear and tear)</p></div>
<p>It is possible to buy spareparts for mobile phones though. Buying them from a local dealer in your country will surely set you back many many dollars. Luckily Ebay came to the rescue. <a href="http://cgi.ebay.co.uk/ws/eBayISAPI.dll?ViewItem&amp;item=300435435410&amp;ssPageName=STRK:MEWNX:IT">I bought a new fascia housing for my Nokia E66</a>. Only  set me back around $10.</p>
<p>The seller states:</p>
<blockquote><p><strong>NOT supplied fitting manual</strong><br />
Replacing your phone with this new fascia, the preference to phone shop   engineering maintainers or alternatively change it by yourself with any of   corresponding tools.</p></blockquote>
<p>So this blogpost constitutes a walkthrough on how to replacing the fascia, in case somebody else decides to revitalizing his or hers aging Nokia E66.</p>
<p>What was in the package from the seller?</p>
<div id="attachment_250" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0006.jpg"><img class="size-full wp-image-250" title="IMAG0006" src="http://zensonic.dk/wp-content/uploads/IMAG0006.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">Old phone and new package</p></div>
<div id="attachment_249" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0007.jpg"><img class="size-full wp-image-249" title="IMAG0007" src="http://zensonic.dk/wp-content/uploads/IMAG0007.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">Unpacking the new stuff (fascia and 3 screwdrivers)</p></div>
<div id="attachment_248" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0008.jpg"><img class="size-full wp-image-248" title="IMAG0008" src="http://zensonic.dk/wp-content/uploads/IMAG0008.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">Unpacking (taking the new fascia apart)</p></div>
<p>I then started to take the old phone apart. Gently, noting where everything went. This is not the time where you want to have leftovers afterwards!</p>
<div id="attachment_245" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0011.jpg"><img class="size-full wp-image-245" title="IMAG0011" src="http://zensonic.dk/wp-content/uploads/IMAG0011.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">Taking the E66 apart (remove battery and SIM)</p></div>
<p>Next up, remove the screws. Notice carefully what screws belongs to what hole. There are 3 different screws on the back.</p>
<div id="attachment_244" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0012.jpg"><img class="size-full wp-image-244" title="IMAG0012" src="http://zensonic.dk/wp-content/uploads/IMAG0012.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">Taking the E66 apart (reming the 6 screws from the back)</p></div>
<p>Next seperate the front and the back from the actual phone mainboard. Do this very very carefully. Do not get angry! And do not use excessive force. Everything in the phone are hold together using plastic tabs at this point.</p>
<div id="attachment_243" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0013.jpg"><img class="size-full wp-image-243" title="IMAG0013" src="http://zensonic.dk/wp-content/uploads/IMAG0013.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">Detaching the phone mainboard from the back and front</p></div>
<p>The two connectors from the front and back PCB to the main PCB needs to be detached gently. They will come off without force if you do it right.</p>
<div id="attachment_242" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0014.jpg"><img class="size-full wp-image-242" title="IMAG0014" src="http://zensonic.dk/wp-content/uploads/IMAG0014.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">The front and back cover seperated from the mainboard</p></div>
<p>Working on the back, you need to detach the PCB where all the buttons are located. Gently use a thin screwdriver for this. You also need to detach the power connector. That is most easily done by putting a screwdriver into the powerconnector, tipping the screwdriver downwards. That will make the connector pop out of its plastic tabs.</p>
<div id="attachment_241" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0015.jpg"><img class="size-full wp-image-241" title="IMAG0015" src="http://zensonic.dk/wp-content/uploads/IMAG0015.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">The button PCB of the back being detached</p></div>
<div id="attachment_240" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0016.jpg"><img class="size-full wp-image-240" title="IMAG0016" src="http://zensonic.dk/wp-content/uploads/IMAG0016.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">The button PCB hanging in midair</p></div>
<div id="attachment_239" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0017.jpg"><img class="size-full wp-image-239" title="IMAG0017" src="http://zensonic.dk/wp-content/uploads/IMAG0017.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">The button PCB and power connector removed</p></div>
<p>Assembling the back is just the reverse process. Keywords are: patience, low force, patience</p>
<div id="attachment_238" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0018.jpg"><img class="size-full wp-image-238" title="IMAG0018" src="http://zensonic.dk/wp-content/uploads/IMAG0018.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">Attaching power and button PCB onto new back fascia</p></div>
<div id="attachment_236" class="wp-caption aligncenter" style="width: 230px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0020.jpg"><img class="size-full wp-image-236" title="IMAG0020" src="http://zensonic.dk/wp-content/uploads/IMAG0020.jpg" alt="" width="220" height="368" /></a><p class="wp-caption-text">Back part done</p></div>
<p>Working on the front part. Unscrew the two screws holding the PCB onto the slider. Do not fall for the urge to do anything about the spring system!! If you do, you will not get a working phone afterwards!</p>
<p>After unscrewing the two screws, you can pull the PCB out of the fascia. I then cleaned the TFT and put the PCB into the new fascia.</p>
<div id="attachment_235" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0021.jpg"><img class="size-full wp-image-235" title="IMAG0021" src="http://zensonic.dk/wp-content/uploads/IMAG0021.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">Seperating the front and cleaning it</p></div>
<div id="attachment_234" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0023.jpg"><img class="size-full wp-image-234" title="IMAG0023" src="http://zensonic.dk/wp-content/uploads/IMAG0023.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">Putting the front PCB into the new fascia</p></div>
<p>Front and back fascia was now done.</p>
<div id="attachment_233" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0024.jpg"><img class="size-full wp-image-233" title="IMAG0024" src="http://zensonic.dk/wp-content/uploads/IMAG0024.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">Front and back are exchanged</p></div>
<p>Assembly of the parts again. Just reverse the steps you did when taking the phone apart.</p>
<p style="text-align: center;"><a href="http://zensonic.dk/wp-content/uploads/IMAG0025.jpg"><img class="size-full wp-image-232 aligncenter" title="IMAG0025" src="http://zensonic.dk/wp-content/uploads/IMAG0025.jpg" alt="" width="368" height="220" /></a></p>
<div id="attachment_230" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0028.jpg"><img class="size-full wp-image-230" title="IMAG0028" src="http://zensonic.dk/wp-content/uploads/IMAG0028.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">Only battery and SIM missing</p></div>
<p>And then</p>
<div id="attachment_229" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0030.jpg"><img class="size-full wp-image-229" title="IMAG0030" src="http://zensonic.dk/wp-content/uploads/IMAG0030.jpg" alt="" width="368" height="220" /></a><p class="wp-caption-text">All done</p></div>
<p>And it is still alive, who should have thought that <img src='http://zensonic.dk/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<div id="attachment_228" class="wp-caption aligncenter" style="width: 230px"><a href="http://zensonic.dk/wp-content/uploads/IMAG0031.jpg"><img class="size-full wp-image-228" title="IMAG0031" src="http://zensonic.dk/wp-content/uploads/IMAG0031.jpg" alt="" width="220" height="368" /></a><p class="wp-caption-text">It is alive</p></div>
]]></content:encoded>
			<wfw:commentRss>http://zensonic.dk/?feed=rss2&amp;p=223</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Got myself a HTC Desire mobile</title>
		<link>http://zensonic.dk/?p=215</link>
		<comments>http://zensonic.dk/?p=215#comments</comments>
		<pubDate>Thu, 22 Jul 2010 09:48:05 +0000</pubDate>
		<dc:creator>zensonic</dc:creator>
				<category><![CDATA[Mobile Phone]]></category>

		<guid isPermaLink="false">http://zensonic.dk/?p=215</guid>
		<description><![CDATA[My wife complained about her Nokia 6700 classic was a real pain to use for SMS&#8217;s. She tried my Nokia E66 and found it to be much better. As the true gentleman I am, I imediatly gave her my E66 &#8212; it was almost two years since I got it anyway. Having given her my [...]]]></description>
			<content:encoded><![CDATA[<p>My wife complained about her <a href="http://europe.nokia.com/find-products/devices/nokia-6700-classic">Nokia 6700 classic</a> was a real pain to use for SMS&#8217;s. She tried my <a href="http://europe.nokia.com/find-products/devices/nokia-e66">Nokia E66</a> and found it to be much better. As the true gentleman I am, I imediatly gave her my E66 &#8212; <a href="http://zensonic.dk/?p=35">it was almost two years since I got it anyway</a>. Having given her my phone, I had none. On the other hand,  that provided me with an excuse for buying a new one.  More specifiically an  <a href="http://">HTC Desire</a>.</p>
<div id="attachment_217" class="wp-caption aligncenter" style="width: 257px"><a href="http://zensonic.dk/wp-content/uploads/Desire.jpg"><img class="size-full wp-image-217" title="HTC Desire" src="http://zensonic.dk/wp-content/uploads/Desire.jpg" alt="" width="247" height="326" /></a><p class="wp-caption-text">HTC Desire</p></div>
<p>The phone arrived today and after having used it for some hours I can say that it is a fine piece of equipment. Useful as a phone, useful as a toy, useful as a tool, useful as a camera, voice recorder, media player. You name it. I am quite sure that we will get along just fine <img src='http://zensonic.dk/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://zensonic.dk/?feed=rss2&amp;p=215</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to use a broken IBM Thinkpad T43 for something useful using puppy linux.</title>
		<link>http://zensonic.dk/?p=153</link>
		<comments>http://zensonic.dk/?p=153#comments</comments>
		<pubDate>Wed, 21 Jul 2010 21:12:46 +0000</pubDate>
		<dc:creator>zensonic</dc:creator>
				<category><![CDATA[FUN Projects]]></category>
		<category><![CDATA[Hardware Projects]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Personal ramblings]]></category>
		<category><![CDATA[Unix]]></category>

		<guid isPermaLink="false">http://zensonic.dk/?p=153</guid>
		<description><![CDATA[I recently got my hands on a IBM Thinkpad T43. Unfortunately it was broken. More specifically the connector between the mainboard and the harddrive had problems. I googled a bit and discovered, that this was a known problem. The laptop worked fine, if I put pressure on the right spot on the case of the [...]]]></description>
			<content:encoded><![CDATA[<p>I <a href="http://zensonic.dk/?p=120">recently</a> got my hands on a <a href="http://www.thinkwiki.org/wiki/Category:T43">IBM Thinkpad T43</a>. Unfortunately it was broken. More specifically the connector between the mainboard and the harddrive had problems.</p>
<p style="text-align: center;">
<div id="attachment_154" class="wp-caption aligncenter" style="width: 378px"><a rel="http://google.dk" href="http://zensonic.dk/wp-content/uploads/connector.jpg"><img class="size-full wp-image-154   " title="IBM T43 connector (broken)" src="http://zensonic.dk/wp-content/uploads/connector.jpg" alt="" width="368" height="277" /></a><p class="wp-caption-text">IBM T43 connector (broken)</p></div>
<p>I googled a bit and <a href="http://digitalchunk.com/spring-loaded-hard-drive-connector-error-on-thinkpad-t43-resolved.htm">discovered</a>, that this was a known problem. The laptop worked fine, if I put pressure on the right spot on the case of the Thinkpad. Otherwise it would not detect and/or spin up the harddrive. I tried to fix it by re-soldering the connector and using some two-component glue to fixate the connector. I did not succeed :-/</p>
<p>So then what? Throw out the laptop? Or? &#8230; I decided to make a project out of it.</p>
<p>A laptop without storage is useless. Due to the broken connector, I could not use a harddrive. I did not want to use a cdrom as it is a slow medium. That left me with a USB flash drive as the only option. It would be a clumsy solution just to plug a USB flash drive into the laptop and be done with it, so I chose to solder a USB flash directly onto the mainboard.</p>
<p>First I stripped a standard 1GB USB Flash from its case and detached the PCB from the USB connector using a soldering iron</p>
<div id="attachment_162" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/stripped_flash.jpg"><img class="size-full wp-image-162" title="Stripped USB flash" src="http://zensonic.dk/wp-content/uploads/stripped_flash.jpg" alt="" width="368" height="277" /></a><p class="wp-caption-text">Stripped USB flash</p></div>
<p style="text-align: center;">
<p style="text-align: left;">After that I soldered 5 wires onto the PCB of the laptop and used one of the holes in the PCB used for assembly as a pass through hole. I initially used 4 wires as the USB connector only had 4 pins, but that was not enough. More on that later.</p>
<div id="attachment_163" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/wires_passthrough.jpg"><img class="size-full wp-image-163" title="Wires soldered onto mainboard" src="http://zensonic.dk/wp-content/uploads/wires_passthrough.jpg" alt="" width="368" height="277" /></a><p class="wp-caption-text">Wires soldered onto mainboard</p></div>
<p style="text-align: center;">
<p style="text-align: left;">Having soldered the wires onto to the mainboard, I now needed to solder the other ends onto to the PCB of the USB flash. That went fairly smoothly</p>
<p style="text-align: left;">
<div id="attachment_160" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/finish_solder.jpg"><img class="size-full wp-image-160" title="Wires soldered onto flash" src="http://zensonic.dk/wp-content/uploads/finish_solder.jpg" alt="" width="368" height="277" /></a><p class="wp-caption-text">Wires soldered onto flash</p></div>
<p style="text-align: center;">
<p style="text-align: left;">Before powering on anything, I used a multimeter to check for bad solderjoins and shorts. I found neither.</p>
<div id="attachment_159" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/check_for_shorts.jpg"><img class="size-full wp-image-159" title="Checking for shorts using digital multimeter" src="http://zensonic.dk/wp-content/uploads/check_for_shorts.jpg" alt="" width="368" height="277" /></a><p class="wp-caption-text">Checking for shorts using digital multimeter</p></div>
<p style="text-align: center;">
<p style="text-align: left;">Luckily I had a Linux based rescue distribution installed on the USB flash drive, so I just booted that to see if the operation on the T43 was a success. As can be seen below it worked just fine. Well, sort of fine, but more on that in a moment.</p>
<div id="attachment_161" class="wp-caption aligncenter" style="width: 287px"><a href="http://zensonic.dk/wp-content/uploads/rescue_boot.jpg"><img class="size-full wp-image-161   " title="Testbooting the flashdrive" src="http://zensonic.dk/wp-content/uploads/rescue_boot.jpg" alt="" width="277" height="368" /></a><p class="wp-caption-text">Testbooting the flashdrive</p></div>
<p style="text-align: center;">
<p style="text-align: left;">Almost done now. I just needed to assemble the laptop again, leaving the USB Flash inside.</p>
<div id="attachment_158" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/almost_done.jpg"><img class="size-full wp-image-158" title="Ready to wrap up" src="http://zensonic.dk/wp-content/uploads/almost_done.jpg" alt="" width="368" height="277" /></a><p class="wp-caption-text">Ready to wrap up</p></div>
<p style="text-align: center;">
<p style="text-align: left;">Closing the lid on the laptop, securing all the screws I had myself a working IBM Thinkpad T43. Or so I thought. When I tested the laptop thoroughly I discovered that the kernel ring buffer was filled with</p>
<pre style="text-align: left; padding-left: 60px;">hub 2-0:1.0: over-current change on port 1
hub 2-0:1.0: over-current change on port 2</pre>
<p>That cryptic message just states that the USB device is drawing more power than it is allowed to by the USB specification. Or more precisely that the port on the USB hub inside the laptop is delivering more power than it was supposed to. It first that puzzled me. Then I read about the USB connector and realized my fail. The 4 wires of the USB connector consists of  <a href="http://pinouts.ru/Slots/USB_pinout.shtml">VCC, GND, Data+ and Data -</a>. Given both VCC and GND was part of the 4 pins I only soldered 4 pins. After seeing the problems above, I investigated the matter and found a <a href="http://www.frontx.com/cpx108_2.html">reference</a> to OverCurrent (OC) protection on the header itself. I thus soldered the 5th pin and the problem went away.</p>
<p>I now had a working IBM Thinkpad T43 with 1GB of flash storage. What should I use it for? I decided to use it for <a href="http://www.puppylinux.org/">puppy linux</a>. Primarily for two reasons.</p>
<ol>
<li>It appeared to be tailor made for small harddrives</li>
<li>I had never tried it before</li>
</ol>
<p>I downloaded the 106MB large iso file and burned it onto a CDrom. Now I faced the problem of installing puppy linux onto my flash without using a cdrom drive (as I found the laptop without one). Puppy linux made it quite easy. Using another computer I booted the cdrom. Installed puppy onto a spare flash drive. Booted that flash drive in my IBM Thinkpad T43 and pressed &#8220;install&#8221; once more, installing it onto the &#8220;internal&#8221; flash drive.</p>
<div id="attachment_170" class="wp-caption aligncenter" style="width: 378px"><a href="http://zensonic.dk/wp-content/uploads/puppy.jpg"><img class="size-full wp-image-170" title="Booted into puppy linux" src="http://zensonic.dk/wp-content/uploads/puppy.jpg" alt="" width="368" height="277" /></a><p class="wp-caption-text">Booted into puppy linux</p></div>
<p style="text-align: center;">
<p>All done. Actually it takes quite some time to boot the machine, but that is primarily due to the bios insisting on searching for a harddrive. Unfortunately the IBM BIOS lacks the option to stop it from doing that. After the system is loaded however, it is lightning fast. Way faster than my <a href="http://www.thinkwiki.org/wiki/Category:T400">IBM Thinkpad T400</a>. This is due to the fact that puppy linux loads everything into a ramdisk, so starting program does not require any moving parts to be ready. Programs starts instantaneously. The whole experience just proves (once more), that the computers of today is severely I/O limited, but hopefully SSD will change that real soon now(tm)</p>
<p style="text-align: left;">
]]></content:encoded>
			<wfw:commentRss>http://zensonic.dk/?feed=rss2&amp;p=153</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Certfied CSA &#8211; HP-UX 11i v3</title>
		<link>http://zensonic.dk/?p=146</link>
		<comments>http://zensonic.dk/?p=146#comments</comments>
		<pubDate>Thu, 17 Jun 2010 10:00:30 +0000</pubDate>
		<dc:creator>zensonic</dc:creator>
				<category><![CDATA[Books]]></category>
		<category><![CDATA[Certifications]]></category>
		<category><![CDATA[HP-UX]]></category>
		<category><![CDATA[Unix]]></category>

		<guid isPermaLink="false">http://zensonic.dk/?p=146</guid>
		<description><![CDATA[Then I got around to get certified in HP-UX. I passed with a score of 80% in 75 minutes at Atea using a standard Prometric test. I had hoped on a little bit more, but I was under a lot of pressure work wise up until the test, so I did not get around to [...]]]></description>
			<content:encoded><![CDATA[<p>Then I got around to get certified in HP-UX. I passed with a score of 80% in 75 minutes at <a href="http://www.atea.dk/">Atea</a> using a standard Prometric test. I had hoped on a little bit more, but I was under a lot of pressure work wise up until the test, so I did not get around to rehearse as much as I wanted to.</p>
<p>I can recommend &#8216;<a href="http://www.amazon.co.uk/gp/product/1606436546/ref=oss_product">HP Certified Systems Administrator &#8211; 11i V3, 3rd Edition</a>&#8216; by Asghar Ghori as a help on  getting your CSA.</p>
<p>Next up is HP-UX CSE &#8211; High Availability.</p>
]]></content:encoded>
			<wfw:commentRss>http://zensonic.dk/?feed=rss2&amp;p=146</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Saved by ZFS &#8211; a disk is about to die</title>
		<link>http://zensonic.dk/?p=140</link>
		<comments>http://zensonic.dk/?p=140#comments</comments>
		<pubDate>Wed, 19 May 2010 18:38:52 +0000</pubDate>
		<dc:creator>zensonic</dc:creator>
				<category><![CDATA[Volume managers]]></category>
		<category><![CDATA[zfs]]></category>

		<guid isPermaLink="false">http://zensonic.dk/?p=140</guid>
		<description><![CDATA[I have setup an NFS share under Solaris 10. It utilizes ZFS, which in turn uses  an IBM DS400 for backend storage. On top of that I have nagios running to monitor it. I got an alarm about the zfs pool being in a degraded state. I logged into the system and found this in [...]]]></description>
			<content:encoded><![CDATA[<p>I have setup an NFS share under Solaris 10. It utilizes ZFS, which in turn uses  an IBM DS400 for backend storage. On top of that I have nagios running to monitor it. I got an alarm about the zfs pool being in a degraded state. I logged into the system and found this in the dmesg:</p>
<pre>May 17 03:20:20 files DESC: The number of checksum errors associated with a ZFS device
May 17 03:20:20 files exceeded acceptable levels.  Refer to http://sun.com/msg/ZFS-8000-GH for more information.</pre>
<p>To see more information I ran</p>
<pre>-bash-3.00# zpool status
 pool: rz2pool
 state: DEGRADED
status: One or more devices has experienced an unrecoverable error.  An
 attempt was made to correct the error.  Applications are unaffected.
action: Determine if the device needs to be replaced, and clear the errors
 using 'zpool clear' or replace the device with 'zpool replace'.
 see: http://www.sun.com/msg/ZFS-8000-9P
 scrub: scrub completed after 5h21m with 0 errors on Wed May 19 08:41:49 2010
config:

 NAME                        STATE     READ WRITE CKSUM
 rz2pool                     DEGRADED     0     0     0
   raidz2                    ONLINE       0     0     0
     c3t21000000D12643DEd0   ONLINE       0     0     0
     c3t21000000D12643DEd1   ONLINE       0     0     0
     c3t21000000D12643DEd2   ONLINE       0     0     0
     c3t21000000D12643DEd3   ONLINE       0     0     0
     c3t21000000D12643DEd4   ONLINE       0     0     0
     c3t21000000D12643DEd5   ONLINE       0     0     0
     c3t21000000D12643DEd6   ONLINE       0     0     0
   raidz2                    DEGRADED     0     0     0
     c3t21000000D12643DEd7   ONLINE       0     0     0
     c3t21000000D12643DEd8   ONLINE       0     0     0
     c3t21000000D12643DEd9   ONLINE       0     0     0
     c3t21000000D12643DEd10  ONLINE       0     0     0
     c3t21000000D12643DEd11  ONLINE       0     0     0
     c3t21000000D12643DEd12  DEGRADED     0     0   234  too many errors
     c3t21000000D12643DEd13  ONLINE       0     0     0

errors: No known data errors
</pre>
<p>And this is where ZFS is awsome. It may not be the fastest volume manager on the planet, or the smartest. But I trust the integrity of it (having read whitepapers on it).</p>
<p>What is really cool here:</p>
<ol>
<li>It has detected that the underlying LUN is misbehaving.</li>
<li>It has marked the LUN as degraded</li>
<li>It has saved my data from silent corruption.</li>
</ol>
<p>There are not many volume managers out there, which does that. I have not lost data, the dataintegrity is still in place and I know what disk is about to fail. Kudos and thanks to the ZFS dev team!</p>
]]></content:encoded>
			<wfw:commentRss>http://zensonic.dk/?feed=rss2&amp;p=140</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Updating system firmware on an IBM Thinkpad T43 using pxeboot</title>
		<link>http://zensonic.dk/?p=120</link>
		<comments>http://zensonic.dk/?p=120#comments</comments>
		<pubDate>Fri, 30 Apr 2010 18:49:17 +0000</pubDate>
		<dc:creator>zensonic</dc:creator>
				<category><![CDATA[Hardware Projects]]></category>

		<guid isPermaLink="false">http://zensonic.dk/?p=120</guid>
		<description><![CDATA[Recently I got my hands on an IBM Thinkpad T43 without disk drive and cdrom (perfectly OK machine thrown out, apparently for no reason). I decided to update the firmware to the newest version before considering buying replacement parts for it. So how do you update the firmware on an IBM Thinkpad without floppy or [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I got my hands on an IBM Thinkpad T43 without disk drive and cdrom (perfectly OK machine thrown out, apparently for no reason). I decided to update the firmware to the newest version before considering buying replacement parts for it.</p>
<p>So how do you update the firmware on an IBM Thinkpad without floppy or cdrom? You netboot it ofcourse. Needless to say these instructions might also work for other models. And finally: <span style="color: #ff0000;">If you break your Thinkpad following these instructions I have no liability and you get to thank yourself and keep both parts!</span></p>
<p>With the standard disclaimer out of the way, lets start.</p>
<p>First I went to the excelent site<a href="http://www.thinkwiki.org/wiki/BIOS_Upgrade_Downloads"> thinkwiki.org</a> where I located the latest bios. I then downloaded bios version 1.29 from <a href="http://www-307.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-59379">Lenovo</a> (Notice that two versions of the T43 exists and they are incompatible!)</p>
<p>I turned my attention to my linux server (ubuntu) and configured the dhcpd, tftpd and inetd to allow me to netboot using pxe. First off I installed the four needed utilities.</p>
<pre style="padding-left: 30px;">sudo apt-get install openbsd-inetd tftpd-hpa  dhcp3-server cabextract</pre>
<p>When PXE booting a computer, it broadcasts for a lease from a DHCP server on the net. I configured my dhcpd server with the following besides the normal dhcpd options.</p>
<pre style="padding-left: 30px;">sudo vi /etc/dhcp3/dhcpd.conf
...
...
       host t43 {
                hardware ethernet 00:11:25:d6:ef:4b;
                fixed-address 192.168.1.35;
                filename "pxelinux.0";
      }
...
...</pre>
<p>You ofcourse have to change the hardware ethernet to the mac address of your Thinkpads ethernetcard. I saved the file and restarted dhcpd with</p>
<pre style="padding-left: 30px;">/etc/init.d/dhcp3-server restart</pre>
<p>Next I configured inetd:</p>
<pre style="padding-left: 30px;">vi /etc/inetd.conf
tftp  dgram  udp  wait  root  /usr/sbin/in.tftpd -v -v -v -s /usr/lib/syslinux</pre>
<p>Saved and restarted inetd</p>
<pre style="padding-left: 30px;">sudo /etc/init.d/openbsd-inetd</pre>
<p>I then configured pxe with a config file that pxelinux.0 expects (your mac address will vary ofcourse) .</p>
<pre style="padding-left: 30px;">mkdir -p /usr/lib/syslinux/pxelinux.cfg
vi /usr/lib/syslinux/pxelinux.cfg/01-00-11-25-d6-ef-4b
DEFAULT t43firmware
LABEL t43firmware
        kernel memdisk
        append vga=normal initrd=flash/t43/70UJ29US.IMG --
PROMPT 1
TIMEOUT 0</pre>
<p>Almost there. Next up, get the flash image ready</p>
<pre style="padding-left: 30px;">mkdir -p /usr/lib/syslinux/flash/t43
cd /usr/lib/syslinux/pxelinux.cfg
wget http://download.lenovo.com/ibmdl/pub/pc/pccbbs/mobiles/70uj29us.exe</pre>
<p>That got you an windows cabinetfile. Extract the firmware from that</p>
<pre style="padding-left: 30px;">cabextract -F 70UJ29US.IMG 70uj29us.exe
Extracting cabinet: 70uj29us.exe
  extracting 70UJ29US.IMG
All done, no errors.</pre>
<p>I then powered up the T43. It booted over PXE</p>
<p><a href="http://zensonic.dk/wp-content/uploads/30042010445.jpg"><img class="alignnone size-large wp-image-126" title="Booting over PXE" src="http://zensonic.dk/wp-content/uploads/30042010445-1024x768.jpg" alt="" width="450" height="337" /></a></p>
<p>I pressed return and the flash program started:</p>
<p><a href="http://zensonic.dk/wp-content/uploads/30042010446.jpg"><img class="alignnone size-large wp-image-127" title="Flash program starting, when booting over PXE" src="http://zensonic.dk/wp-content/uploads/30042010446-1024x768.jpg" alt="" width="450" height="337" /></a></p>
<p>I accepted the (many) warnings and disclaimers&#8230;.. and</p>
<p>&#8230;. nothing happened! It just hung. I thought I had fried my newly aquired Thinkpad. I powered it off and on again just to see that it still worked, and that I was on the same BIOS level. Hmm, now what? It nearly worked, but still no cigar. I decided to take it one level further, doing it all by hand:</p>
<p>Mount the image file by hand using the loop driver:</p>
<pre style="padding-left: 30px;">sudo mkdir /floppy
sudo mkdir /floppy1
sudo mount -o loop /usr/lib/syslinux/flash/t43/70UJ29US.IMG /floppy</pre>
<p>Get a standalone freedos boot image (called balder) from the nice guys at <a href="http://www.freedos.org/freedos/files/">freedos.org</a>:</p>
<pre style="padding-left: 30px;">cd /usr/lib/syslinux/flash/t43/
wget http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/\\
     unofficial/balder/balder10.img
sudo mount -o loop /usr/lib/syslinux/flash/t43/balder10.img /floppy1</pre>
<p>Remove a lot of files from balder10.img and copy files over from the IBM flash disk.</p>
<pre style="padding-left: 30px;">sudo rm /floppy1/{display.exe,edit.exe,dosfsck.exe,zip.exe,unzip.exe,\\
                  defrag.exe,fdisk.exe,chkdsk.exe,cwsdpmi.exe,keyboard.sys,\\
                  format.exe,subst.exe,edit.hlp,country.sys,keybrd2.sys,\\
                  diskcopy.exe,edlin.exe,replace.exe,fdiskpt.ini,debug.com,\\
                  mode.com,shrdrv86.exe,xcopy.exe,move.exe,keyb.exe,tree.com,\\
                  fdisk.ini,diskcomp.com,ctmouse.exe,more.exe,shsucdx.com}
sudo cp /floppy/{\$0199000.fl1,06d*,chkbmp.exe,flash2.exe,lcreflsh.bat,logo.bat,\\
                 logo.scr,phlash16.exe,prepare.exe,prod.da*,qkflash.exe,\\
                 readme.txt,tpchks.exe,updtflsh.exe,updtmn.exe,userint.exe,\\
                 utilinfo.exe} /floppy1

# rename the flash file
sudo mv \$0199000.fl1 flash.img

# unmount floppy
sudo umount /floppy1/</pre>
<p>Edit the pxe config file (your mac address will vary ofcourse) to use the balder/freedos image file instead of the Lenovo flash disk.</p>
<pre style="padding-left: 30px;">vi /usr/lib/syslinux/pxelinux.cfg/01-00-11-25-d6-ef-4b
DEFAULT t43firmware
LABEL t43firmware
        kernel memdisk
        append vga=normal initrd=flash/t43/balder10.img --
PROMPT 1
TIMEOUT 0</pre>
<p>Reboot the T43 machine. Boot over PXE, single step (F8) the freedos start. Make sure you do NOT use EMS or HIMEM. After a brief period of time you should find yourself in an dos prompt, where you run</p>
<pre style="padding-left: 30px;"><code>A:\phlash16.exe flash.img</code></pre>
<p>The system should flash nicely and you should be all done within a minute:</p>
<p><a href="http://zensonic.dk/wp-content/uploads/30042010448.jpg"><img class="alignnone size-large wp-image-128" title="Flashed the BIOS" src="http://zensonic.dk/wp-content/uploads/30042010448-1024x768.jpg" alt="" width="450" height="337" /></a></p>
<p>Not for the faint of hearted, but I never promised that <img src='http://zensonic.dk/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://zensonic.dk/?feed=rss2&amp;p=120</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Firewall in an ZynOS based xDSL router (ie. zyxel P660R-D1)</title>
		<link>http://zensonic.dk/?p=114</link>
		<comments>http://zensonic.dk/?p=114#comments</comments>
		<pubDate>Tue, 13 Apr 2010 17:05:52 +0000</pubDate>
		<dc:creator>zensonic</dc:creator>
				<category><![CDATA[Hardware Projects]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://zensonic.dk/?p=114</guid>
		<description><![CDATA[I recently got xDSL from one of the major danish ISPs. I was very satisfied until I discovered that port 80 was closed. I looked high and low for a solution. Eventually I gave up and contacted the support, which confirmed my suspicion: the router had an firewall which blocked port 80. The solution is [...]]]></description>
			<content:encoded><![CDATA[<p>I recently got xDSL from one of the major danish ISPs. I was very satisfied until I discovered that port 80 was closed. I looked high and low for a solution. Eventually I gave up and contacted the support, which confirmed my suspicion: the router had an firewall which blocked port 80. </p>
<p>The solution is actually quite straight forward:<br />
<code><br />
wan node index 1<br />
wan node filter incoming tcpip 256 256 256 256<br />
wan node filter outgoing tcpip 256 256 256 256<br />
wan node save </code></p>
<p>And now my blog is accessible for the outside world again. </p>
]]></content:encoded>
			<wfw:commentRss>http://zensonic.dk/?feed=rss2&amp;p=114</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
