<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8543046762843691074</id><updated>2011-11-28T14:20:19.486-08:00</updated><category term='hack'/><category term='Vista'/><category term='Kindle'/><category term='PDF'/><category term='kindle 2 international'/><category term='Amazon store'/><category term='programming'/><category term='development'/><category term='USB tethering'/><category term='exposure'/><category term='native conversion'/><category term='Hacking'/><category term='statistics'/><category term='solar'/><category term='FreeBSD upgrade'/><category term='networking outside the US'/><category term='Windows 7'/><title type='text'>JYA's various ideas</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>14</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-2687881063560375226</id><published>2011-08-17T00:07:00.001-07:00</published><updated>2011-08-17T00:45:13.702-07:00</updated><title type='text'>How to change all svn:user entry in one go</title><content type='html'>&lt;blockquote&gt;&lt;/blockquote&gt;Over the years, our username has changed. Like over the years I have been avenardj, jyavenard, jeanyves_avenard and finally jean-yves.avenard&lt;br /&gt;&lt;br /&gt;In the 7 years I've been using our SVN repository, looking at the history, it's now all over the place.&lt;br /&gt;&lt;br /&gt;So I wanted to make my username consistent...&lt;br /&gt;&lt;br /&gt;Preliminary steps: allow changing property in the svn repository by adding a hooks/pre-revprop-change file.&lt;br /&gt;&lt;br /&gt;it woud contain only one thing:&lt;br /&gt;&lt;code&gt;exit 0&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Because in our setup we use ViewVC, we also needed a hooks/post-revprop-change with:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;br /&gt;REPOS="$1"&lt;br /&gt;REV="$2"&lt;br /&gt;USER="$3"&lt;br /&gt;PROPNAME="$4"&lt;br /&gt;ACTION="$5"&lt;br /&gt;&lt;br /&gt;/var/www/viewvc/bin/svndbadmin update "$REPOS" "$REV"&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;I didn't feel like writing much code do to what seemed to be a trivial task.&lt;br /&gt;&lt;br /&gt;Looking at various solutions I found this interesting project: &lt;a href="http://www.xmlsh.org/HomePage"&gt;XMLSH&lt;/a&gt;. Alas, it's quite poorly documented.&lt;br /&gt;&lt;br /&gt;After going through the examples, I came up with:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;br /&gt;svn log --xml | xread logs&lt;br /&gt;entries=&amp;lt;[ $logs/log/logentry ]&amp;gt;&lt;br /&gt;for entry in $entries; do&lt;br /&gt;    rev=&amp;lt;[$entry/@revision]&amp;gt;&lt;br /&gt;    echo "entry: " $rev&lt;br /&gt;    author=&amp;lt;[$entry/author/string()]&amp;gt;&lt;br /&gt;    echo $author&lt;br /&gt;    author2=$(echo $author | sed -e 's/(avenardj|jeanyves_avenard|jyavenard)$/jean-yves.avenard/g')&lt;br /&gt;    if [ "$author" != "$author2" ]; then&lt;br /&gt;        echo " -&amp;gt; $author2"&lt;br /&gt;        svn propset --revprop -r $rev svn:author $author2&lt;br /&gt;    fi&lt;br /&gt;done&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Obviously, replace the regex with the one suitable for you.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-2687881063560375226?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/2687881063560375226/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2011/08/how-to-change-all-svnuser-entry-in-one.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/2687881063560375226'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/2687881063560375226'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2011/08/how-to-change-all-svnuser-entry-in-one.html' title='How to change all svn:user entry in one go'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-5322746103048303819</id><published>2010-02-06T21:42:00.001-08:00</published><updated>2010-02-08T07:59:31.925-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='statistics'/><category scheme='http://www.blogger.com/atom/ns#' term='exposure'/><category scheme='http://www.blogger.com/atom/ns#' term='solar'/><title type='text'>How do solar panels perform according to solar exposure..</title><content type='html'>The Australian bureau of Meteorology provides daily solar exposure data on their web site.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;img style="width: 410px; height: 281px;" src="http://www.bom.gov.au/web03/ncc/www/awap/solar/solarave/daily/colour/history/nat/2010020620100206.gif" alt="" border="0" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;This map shows the amount of energy received from the Sun in a given location.&lt;/p&gt;&lt;p&gt;This was very interesting stuff (well, at least for me).&lt;/p&gt;&lt;p&gt;I wrote a little utility to retrieve the data in a form suitable for post-processing in a spreadsheet and for use in &lt;a href="http://jyavariousideas.blogspot.com/2010/01/energy-tracking.html"&gt;my power tracking system&lt;/a&gt; .&lt;/p&gt;&lt;p&gt;This utility is available &lt;a href="http://htpc.avenard.org/power/meteodata.py"&gt;there&lt;/a&gt;. It's written in python, run it with --help as an argument to see the various options available.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;One direct application, was measuring on how well the CEEG panels I have installed performed according to the amount of energy they receive from the sun.&lt;/p&gt;&lt;p&gt;It gave me this graph:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;img style="width: 675px; height: 458px;" src="http://img534.imageshack.us/img534/5547/solarexposure.png" alt="" border="0" /&gt;&lt;/p&gt;&lt;p&gt;The black line shows the average of Export/Import. Any points above the line means the system performed better than average, any points below the line, mean they performed worse.&lt;/p&gt;&lt;p&gt;A clear trend shows that my system performs really well when there's a lot of sun, but rather poorly in low light conditions.&lt;/p&gt;&lt;p&gt;It's rather a worry, as it means they will likely perform poorly during winter.&lt;/p&gt;&lt;p&gt;Stay in touch!&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-5322746103048303819?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/5322746103048303819/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2010/02/how-do-solar-panels-perform-according.html#comment-form' title='34 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/5322746103048303819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/5322746103048303819'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2010/02/how-do-solar-panels-perform-according.html' title='How do solar panels perform according to solar exposure..'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>34</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-5350693178054783483</id><published>2010-01-23T17:29:00.001-08:00</published><updated>2010-01-23T20:46:14.006-08:00</updated><title type='text'>Energy tracking...</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;div style="text-align: left;"&gt;I got a solar system installed early December 2009 ; it's a 2kW system made of 12 CEEG 170W panels with a Power-One Aurora Inverter PVI-2000&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_x-d8M4JT2Tw/S1ulhlan_BI/AAAAAAAAAG0/G3I364leuDc/s1600-h/IMG_5663.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 213px;" src="http://3.bp.blogspot.com/_x-d8M4JT2Tw/S1ulhlan_BI/AAAAAAAAAG0/G3I364leuDc/s320/IMG_5663.jpg" alt="" id="BLOGGER_PHOTO_ID_5430115772123315218" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;I had to track the electricity production ; but also wanted to track my power usage.&lt;br /&gt;&lt;br /&gt;I couldn't find any proper solutions letting me record everything at once:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;How much is used in the house&lt;/li&gt;&lt;li&gt;How much is produced by the solar panels&lt;/li&gt;&lt;li&gt;How much is imported from the electric network grid&lt;/li&gt;&lt;li&gt;How much is exported back to the grid&lt;/li&gt;&lt;/ul&gt;So I designed my own...&lt;br /&gt;&lt;br /&gt;I bought a &lt;a href="http://www.currentcost.com/"&gt;CurrentCost&lt;/a&gt; CC128 which can be interfaced to a PC through a  serial interface.&lt;br /&gt;The Aurora inverter has a RS485 interface; a cheap RS232 converter on eBay for $6.50 did the trick.&lt;br /&gt;&lt;br /&gt;The system runs on almost any machines (tested on FreeBSD, Linux, MacOS).&lt;br /&gt;&lt;p&gt;It is made of 3 parts.&lt;br /&gt;-Daemons polling the various  sensors ; they poll every 6s ; compute an average every minute and feed  the data in a RRDtool database (round robin database).&lt;br /&gt;-A Daemon  computing the import and export value in 30 minutes interval (it wakes  up every 30 minutes, calculate the import/export over the past 30  minutes and feed another database&lt;br /&gt;-A web page&lt;/p&gt; &lt;p&gt;The daemons are written in python ; as long as you have python  running on your machine with the pyserial module you'll be fine.&lt;/p&gt; &lt;p&gt;For the HTML interface ; it's written in PHP on the server side; and javascript/ajax on the client side (though it will work even with javascript disabled, albeit with limit interactivity).&lt;/p&gt;&lt;p&gt;It's probably easier  to get it working with the Apache web server and the mod_php5 module...&lt;/p&gt; &lt;p&gt;The PC needs to be on 24/7 as neither the CC128 nor the Aurora  inverter keeps any data in memory...&lt;/p&gt;The system is done in such a way that you can easily use a different power monitor or a different inverter.&lt;br /&gt;Everythin can be configured through a simple configuration file: colours, shapes, labels, database used etc...&lt;br /&gt;You don't even need a solar system ; I set the same system at my office to monitor our power usage.&lt;br /&gt;&lt;br /&gt;The response to this tool has been very overwhelming.&lt;br /&gt;I have been approach by various parties to integrate with some professional solutions.&lt;br /&gt;&lt;br /&gt;I contacted the Google PowerMeter project in order to feed the data through their system, but at this stage they weren't interested, prefering to work utility providers. Their loss !&lt;br /&gt;&lt;br /&gt;Some real-time graph samples are shown below.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://htpc.avenard.org/power"&gt;http://htpc.avenard.org/power&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;If you are interested, drop me an email.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://htpc.avenard.org/power/?graph=3&amp;amp;view=month&amp;amp;small=1&amp;amp;plot=total,ext"&gt;&lt;img style="cursor: pointer; width: 446px; height: 232px;" src="http://htpc.avenard.org/power/?graph=3&amp;amp;view=month&amp;amp;small=1&amp;amp;plot=total,ext" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://htpc.avenard.org/power/?graph=1&amp;amp;view=day&amp;amp;plot=total,ch1,ext&amp;amp;small=1"&gt;&lt;img style="cursor: pointer; width: 561px; height: 246px;" src="http://htpc.avenard.org/power/?graph=1&amp;amp;view=day&amp;amp;plot=total,ch1,ext&amp;amp;small=1" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://htpc.avenard.org/power/?graph=2&amp;amp;view=month&amp;amp;plot=total,ch1,ext"&gt;&lt;img style="cursor: pointer; width: 1041px; height: 408px;" src="http://htpc.avenard.org/power/?graph=2&amp;amp;view=month&amp;amp;plot=total,ch1,ext" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-5350693178054783483?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/5350693178054783483/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2010/01/energy-tracking.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/5350693178054783483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/5350693178054783483'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2010/01/energy-tracking.html' title='Energy tracking...'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_x-d8M4JT2Tw/S1ulhlan_BI/AAAAAAAAAG0/G3I364leuDc/s72-c/IMG_5663.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-1054741757259255936</id><published>2010-01-23T16:38:00.001-08:00</published><updated>2010-01-23T16:41:25.352-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FreeBSD upgrade'/><title type='text'>Easy FreeBSD Upgrade ...</title><content type='html'>Over the past few weeks, I updated all my machines from FreeBSD 6.4 to the latest FreeBSD 8.&lt;br /&gt;&lt;br /&gt;Upgrading FreeBSD has always been a bit of a pain (even makes me miss linux here and all its binary distributions) as I do not have physical access to most machine and always do so remotely.&lt;br /&gt;&lt;br /&gt;I found this great site:&lt;br /&gt;&lt;a href="http://people.freebsd.org/~rse/upgrade/"&gt;http://people.freebsd.org/~rse/upgrade/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I followed all the steps gron from FreeBSD 6 to FreeBSD 7 then FreeBSD 8.&lt;br /&gt;&lt;br /&gt;Painless upgrades; all remotely !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-1054741757259255936?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/1054741757259255936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2010/01/easy-freebsd-upgrade.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/1054741757259255936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/1054741757259255936'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2010/01/easy-freebsd-upgrade.html' title='Easy FreeBSD Upgrade ...'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-3709338892926032771</id><published>2010-01-23T16:33:00.000-08:00</published><updated>2010-01-23T16:37:44.828-08:00</updated><title type='text'>Update for Kindle DX with Global Wireless (DX International)</title><content type='html'>Amazon just released a new Kindle DX which can now works outside the US using the GSM network.&lt;br /&gt;&lt;br /&gt;It has a new device id and 3rd party packages written for the previous Kindle DX won't work.&lt;br /&gt;&lt;br /&gt;It's really just a matter of repackaging them and the OS is virtually the same.&lt;br /&gt;&lt;br /&gt;So I updated the packager to support this new device ; and repackaged the usbnetwork and screen saver hack package..&lt;br /&gt;&lt;br /&gt;Packager (version 0.8):&lt;br /&gt;&lt;a href="http://www.avenard.org/kindle2/packager-0.8.tar.gz"&gt;http://www.avenard.org/kindle2/packager-0.8.tar.gz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;USB network (version 0.11)&lt;br /&gt;&lt;a href="http://www.avenard.org/kindle2/usbnetwork23-0.11.tar.gz"&gt;http://www.avenard.org/kindle2/usbnetwork23-0.11.tar.gz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Screen saver (version 0.1)&lt;br /&gt;&lt;a href="http://www.avenard.org/kindle2/screensaverhack-0.1.tar.gz"&gt;http://www.avenard.org/kindle2/screensaverhack-0.1.tar.gz&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-3709338892926032771?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/3709338892926032771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2010/01/update-for-kindle-dx-with-global.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/3709338892926032771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/3709338892926032771'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2010/01/update-for-kindle-dx-with-global.html' title='Update for Kindle DX with Global Wireless (DX International)'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-7556021985890959722</id><published>2009-11-26T15:30:00.000-08:00</published><updated>2009-11-26T16:22:20.708-08:00</updated><title type='text'>Amazon's Kindle new Firmware 2.3</title><content type='html'>Amazon released firmware 2.3 a few days ago.&lt;br /&gt;&lt;br /&gt;Before you can update to firmware 2.3 ; you *must* first uninstall all hacks previously installed ; in particular the screen saver hack and savory.&lt;br /&gt;&lt;br /&gt;Other than the advertised new features such as PDF native reader ; what's more interesting (at least for me) is that the same kind of security that got added with Firmware 2.2 on the Kindle 2 International is now found on all Kindle model.&lt;br /&gt;&lt;br /&gt;Each software installed on the Kindle, must be signed using Amazon's RSA key; which obviously we don't have.&lt;br /&gt;&lt;br /&gt;Luckily, the same trick I did for the Kindle 2 International works fine with the 2.3 firmware...&lt;br /&gt;&lt;br /&gt;You can find the new packager there:&lt;br /&gt;&lt;a href="http://www.avenard.org/kindle2/packager-0.7.tar.gz"&gt;http://www.avenard.org/kindle2/packager-0.7.tar.gz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I have changed the options format, so it's more in line with other unix command. Make sure to read the README.txt file included in the archive for the syntax.&lt;br /&gt;In short, for firmware 2.3 ; you will want to use the --sign option (which will sign the packages using our own key) and the --ex (which will add auto-jailbreaking to the package)&lt;br /&gt;&lt;br /&gt;For Kindle 2 US only users ; once you have updated your Kindle to firmware 2.3 ; the various hacks you enjoyed won't work anymore. You need to get new versions of those&lt;br /&gt;&lt;br /&gt;The most popular hack is the screen saver one ; you can find an updated version that works with 2.3 (all kindle model) here:&lt;br /&gt;&lt;a href="http://www.avenard.org/kindle2/screensaverhack-0.1.tar.gz"&gt;http://www.avenard.org/kindle2/screensaverhack-0.1.tar.gz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;USB network hack:&lt;br /&gt;&lt;a href="http://www.avenard.org/kindle2/usbnetwork23-0.9.tar.gz"&gt;http://www.avenard.org/kindle2/usbnetwork23-0.9.tar.gz&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-7556021985890959722?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/7556021985890959722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2009/11/amazons-kindle-new-firmware-23.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/7556021985890959722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/7556021985890959722'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2009/11/amazons-kindle-new-firmware-23.html' title='Amazon&apos;s Kindle new Firmware 2.3'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-8710872386662350170</id><published>2009-11-01T11:23:00.000-08:00</published><updated>2009-11-03T14:48:10.460-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='Hacking'/><category scheme='http://www.blogger.com/atom/ns#' term='kindle 2 international'/><category scheme='http://www.blogger.com/atom/ns#' term='Kindle'/><title type='text'>Kindle 2 International packager; now even easier...</title><content type='html'>Well, curiosity got the better of me (and gone is my night of sleep).&lt;br /&gt;&lt;br /&gt;And here is version 0.5 of the Kindle packager; almost fully rewritten.&lt;br /&gt;&lt;a href="http://www.avenard.org/kindle2/packager-0.5.tar.gz"&gt;http://www.avenard.org/kindle2/packager-0.5.tar.gz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;What's new:&lt;br /&gt;*Can now create packages for the Kindle 2 International that will install properly, even without having installed the previous freekindle package.&lt;br /&gt;&lt;br /&gt;For that use the -k2iex flag.&lt;br /&gt;-k2i will still generate packages requiring the freekindle package to have been installed first.&lt;br /&gt;&lt;br /&gt;I suspect that developers would use the -k2i for testing (with the freekindle package installed), and when they are 100% confident and ready for release, us the -k2iex.&lt;br /&gt;&lt;br /&gt;*Do not leave junk behind (like .dat, .sig files etc)... We now only use temporary files that get automatically deleted...&lt;br /&gt;&lt;br /&gt;All other packages (usbnetwork, screen saver hack, savory) got repackaged using -k2iex : so installation is now much easier.&lt;br /&gt;And are available as always:&lt;br /&gt;&lt;a href="http://www.avenard.org/kindle2/"&gt;http://www.avenard.org/kindle2/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-8710872386662350170?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/8710872386662350170/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2009/11/kindle-2-international-packager-now.html#comment-form' title='14 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/8710872386662350170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/8710872386662350170'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2009/11/kindle-2-international-packager-now.html' title='Kindle 2 International packager; now even easier...'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>14</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-3592717360639404207</id><published>2009-11-01T00:30:00.000-07:00</published><updated>2009-11-03T14:57:31.069-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PDF'/><category scheme='http://www.blogger.com/atom/ns#' term='native conversion'/><category scheme='http://www.blogger.com/atom/ns#' term='kindle 2 international'/><category scheme='http://www.blogger.com/atom/ns#' term='Kindle'/><title type='text'>Savory: Native PDF and mobile EPUB conversion for the Kindle 2 International</title><content type='html'>I've adapted Savory to work on the Kindle International.&lt;br /&gt;&lt;br /&gt;Savory gives you the ability to convert PDF, OTF, HTML and other type directly on the Kindle.&lt;br /&gt;&lt;br /&gt;It will soon be available on Savory main page as well as the google code page; but in the mean time you can get it there:&lt;br /&gt;&lt;a href="http://www.avenard.org/kindle2/Savory-0.07.tar.gz"&gt;http://www.avenard.org/kindle2/Savory-0.07.tar.gz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Also included are the version for Kindle 2 and Kindle DX, though I haven't checked them (I'm fairly confident it will work fine)&lt;br /&gt;&lt;br /&gt;What's new:&lt;br /&gt;-New installer / uninstaller: now you can update directly to a new version without having to first uninstall the older version with the uninstaller that came with it. The uninstaller will also properly restore any changes done by the installer, even if you have installed other programs later on.&lt;br /&gt;&lt;br /&gt;-The EXT3 binary image has been renamed to savory-image-007.ext3 in order to match the version of the package and to prevent complaining about issues because they were using an old disk image&lt;br /&gt;&lt;br /&gt;How to use: make sure you read the official Savory page:&lt;br /&gt;&lt;a href="http://blog.fsck.com/2009/04/savory.html"&gt;http://blog.fsck.com/2009/04/savory.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;To use: copy the file  savory-image-007.ext3 in the system folder on your kindle.&lt;br /&gt;Then copy the appropriate update_Savory-0.07 bin file for your kindle and go in Settings -&gt; "Update Your Kindle"&lt;br /&gt;&lt;br /&gt;To get Savory to convert your files, copy any 'epub','lit','odt','rtf','oebzip','fb2',or 'pdf' file in the document folder.&lt;br /&gt;To start the native conversion ; you must unplug the USB cable from the Kindle.&lt;br /&gt;&lt;br /&gt;Let me know if you have any issues...&lt;br /&gt;&lt;br /&gt;Edit 2009-11-02: savory has been updated on the Google code site:&lt;br /&gt;&lt;a href="http://code.google.com/p/savory/"&gt;http://code.google.com/p/savory/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-3592717360639404207?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/3592717360639404207/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2009/11/savory-native-pdf-and-mobile-epub.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/3592717360639404207'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/3592717360639404207'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2009/11/savory-native-pdf-and-mobile-epub.html' title='Savory: Native PDF and mobile EPUB conversion for the Kindle 2 International'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-780266832030631756</id><published>2009-10-30T07:54:00.000-07:00</published><updated>2009-10-30T08:14:55.033-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='kindle 2 international'/><category scheme='http://www.blogger.com/atom/ns#' term='hack'/><title type='text'>How to create packages for Kindle 2 international</title><content type='html'>&lt;hr style="color: rgb(255, 255, 255); background-color: rgb(255, 255, 255);" size="1"&gt;    &lt;!-- / icon and title --&gt;         &lt;!-- message --&gt;   &lt;div id="post_message_642546" class="vb_postbit"&gt;        Hi there.&lt;br /&gt;&lt;br /&gt;Finally got it working.&lt;br /&gt;&lt;br /&gt;As you may (or may not) ; loading software on the Kindle 2 International didn't work.&lt;br /&gt;&lt;br /&gt;Using ;debugOn and ;dumpMessages ; I looked at what was going on:&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;091024:105149 EXT3 FS on mmcblk0p1, internal journal&lt;br /&gt;091024:105150 system: I _otaupexec:def:processing update /mnt/us/update_test-k2i.bin&lt;br /&gt;091024:105150 system: I _otaupexec:def:version is "FC02"&lt;br /&gt;091024:105150 system: I _otaupexec:def:update image checksum OK&lt;br /&gt;091024:105150 system: E _otaupexec:def:signature does not exist for "install.sh"&lt;br /&gt;091024:105150 system: E _otaupexec:def:signature verification failed&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;The difference with earlier Kindle is that now each file in the package must be signed.&lt;br /&gt;The signature is then checked against the RSA key installed in the ROM.&lt;br /&gt;&lt;br /&gt;Unfortunately, there's no way to bypass that check .&lt;br /&gt;&lt;br /&gt;So what we first do is install an extra RSA key in the device.&lt;br /&gt;that's what the update file update_freekindle.bin is for.&lt;br /&gt;&lt;br /&gt;update_freekindle.bin uses a "feature" (some would call it a flaw) of the tar compressor. Kindle binary package are just gzipped tar files slightly encrypted as discovered by Igor Skochinsky. When extracting the content of the update, the Kindle simply call tar on it.&lt;br /&gt;&lt;br /&gt;Tar follows simlinks ; and we use this to write where we're not supposed to.&lt;br /&gt;&lt;br /&gt;Copy the file  update_freekindle.bin on the Kindle USB disk ; then:&lt;br /&gt;go to HOME&lt;br /&gt;MENU -&gt; Settings&lt;br /&gt;MENU -&gt; Update Your Kindle&lt;br /&gt;DO NOT SELECT RESTART, or you will brick your Kindle (though there's a way to get out of that infinite reboot)&lt;br /&gt;&lt;br /&gt;That update will fail ! (Error 004). This is normal.&lt;br /&gt;&lt;br /&gt;What this package does is add our key to the list of keys available. So next time the Kindle will check the signatures of the files we are installing, the verification process will succeed.&lt;br /&gt;&lt;br /&gt;You only have to do this once...&lt;br /&gt;&lt;br /&gt;In the future, installing packages will be just like with previous version of the Kindle.&lt;br /&gt;&lt;br /&gt;Attached is the new Kindle packager kindle_update_tool.py. It has one extra flag for generating Kindle 2 International packages: -k2i. When creating an update file for the Kindle 2 International, now it will create the appropriate signatures.&lt;br /&gt;&lt;br /&gt;Important points:&lt;br /&gt;OpenSSL must be installed ; and the openssl binary must be in your path (This is the default on Linux or MacOS).&lt;br /&gt;&lt;br /&gt;The file freekindle.pem is the RSA key used to sign and check the validity of the packages. Do not modify it. The file must be present in your current directory, along with the kindle_update_tool.py file.&lt;br /&gt;&lt;br /&gt;(That's until I find a way to generate all the internal signature files within python rather than calling openssl directly.)&lt;br /&gt;&lt;br /&gt;For safety purposes, here is the MD5 checksum of the keys, and of the package installing the keys:&lt;br /&gt;MD5 (freekindle.pem) = ce9584e222f0f910d15b7b20bbaa6a34&lt;br /&gt;MD5 (update_freekindle-k2i.bin) = f1da587b3f4b7feafbc2785f0b022620&lt;br /&gt;&lt;br /&gt;Only packages signed with the freekindle.pem RSA key will work with the update_freekindle-k2i package.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you look at this site:&lt;br /&gt;&lt;a href="http://www.avenard.org/kindle2/"&gt;http://www.avenard.org/kindle2/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You'll see some programs I've repackaged for the Kindle 2 International:&lt;br /&gt;-usbnetwork tool, compiled for Kindle 2, Kindle DX and Kindle International... The source code also shows how to easily make such packages. This tool let you connect to your kindle via telnet or ssh, as well as tether the PC internet connection from the Kindle (check my previous blog entry to know more)&lt;br /&gt;-The screen saver hack ; replace the default screen saver images with your own.&lt;br /&gt;-Savory ; a program allowing you to read PDF file natively on your Kindle (make sure you read the author web page: &lt;a href="http://blog.fsck.com/2009/04/savory.html"&gt;http://blog.fsck.com/2009/04/savory.html&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;Hope you like it, that was exciting !   &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-780266832030631756?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/780266832030631756/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2009/10/how-to-create-packages-for-kindle-2.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/780266832030631756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/780266832030631756'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2009/10/how-to-create-packages-for-kindle-2.html' title='How to create packages for Kindle 2 international'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-1409985034365779554</id><published>2009-10-06T05:28:00.001-07:00</published><updated>2009-10-06T05:30:20.861-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='USB tethering'/><category scheme='http://www.blogger.com/atom/ns#' term='Amazon store'/><category scheme='http://www.blogger.com/atom/ns#' term='Kindle'/><title type='text'>Kindle's USB tethering part #2</title><content type='html'>Following my previous post.&lt;br /&gt;&lt;br /&gt;here is a new version, much easier to setup.&lt;br /&gt;No need to edit any files on the device anymore.&lt;br /&gt;&lt;br /&gt;Get the file here:&lt;br /&gt;http://www.mobileread.com/forums/showpost.php?p=617068&amp;amp;postcount=114&lt;br /&gt;&lt;br /&gt;To install:&lt;br /&gt;-----&lt;br /&gt;Copy update_usbnetwork-k2.bin (for Kindle K2) or update_usbnetwork-dx.bin (for Kindle DX) to the root of the Kindle drive.&lt;br /&gt;&lt;br /&gt;Menu -&gt; Settings&lt;br /&gt;Menu -&gt; Update your Kindle&lt;br /&gt;&lt;br /&gt;Warning: Do not reboot, if you do, you'll need to put the Kindle in recovery mode as explained here :&lt;br /&gt;&lt;a href="http://blogkindle.com/2009/03/kindle-2-recovery-mode/"&gt;http://blogkindle.com/2009/03/kindle-2-recovery-mode/&lt;/a&gt;&lt;br /&gt;------&lt;br /&gt;&lt;br /&gt;To enable USB tethering, two possibilities.&lt;br /&gt;1- Create a file AUTO on the Kindle drive in the usbnet directory.&lt;br /&gt;Reboot the device (Menu -&gt; Settings then Menu -&gt; Reboot)&lt;br /&gt;&lt;br /&gt;2- using ;DebugOn ; `usbNetwork. Unplug/Replug USB device&lt;br /&gt;&lt;br /&gt;Once either of those option is done, telnet to the device (default IP is 192.168.2.2)&lt;br /&gt;then type:&lt;br /&gt;# /mnt/us/usbnet/bin/usbnet-enable&lt;br /&gt;&lt;br /&gt;This command will set the DNS ot use OpenDNS, disable WAN access for browsing the Amazon Store&lt;br /&gt;You'll need to reboot to be able to use the Kindle Store...&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;To disable USB tethering, and revert to USB disk mode.&lt;br /&gt;telnet to the device&lt;br /&gt;# rm /mnt/us/usbnet/AUTO&lt;br /&gt;# reboot&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;To re-enable 3G access while keeping USB tethering:&lt;br /&gt;telnet to the device&lt;br /&gt;# /mnt/us/usbnet/bin/usbnet-disable&lt;br /&gt;# reboot&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;To re-enable 3G access and restore USB disk mode:&lt;br /&gt;telnet to the device&lt;br /&gt;# /mnt/us/usbnet/bin/usbnet-disable&lt;br /&gt;# rm /mnt/us/usbnet/AUTO&lt;br /&gt;# reboot&lt;br /&gt;&lt;br /&gt;that's it... Enjoy&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-1409985034365779554?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/1409985034365779554/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2009/10/kindles-usb-tethering-part-2.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/1409985034365779554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/1409985034365779554'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2009/10/kindles-usb-tethering-part-2.html' title='Kindle&apos;s USB tethering part #2'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-6604475190767059650</id><published>2009-09-27T19:28:00.000-07:00</published><updated>2009-09-27T19:36:28.950-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='USB tethering'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><category scheme='http://www.blogger.com/atom/ns#' term='Kindle'/><title type='text'>Kindle USB network tethering (Vista/Windows 7 version)</title><content type='html'>Getting it to work under Vista is very similar to getting it to work on the mac... though a tad more complicated.&lt;br /&gt;&lt;br /&gt;My machine (Windows 7 beta) didn't come with RNDIS driver.&lt;br /&gt;The easiest way to get those is installing the Windows Mobile drivers found here:&lt;br /&gt;&lt;a href="http://www.microsoft.com/windowsmobile/en-us/downloads/microsoft/device-center-download.mspx"&gt;http://www.microsoft.com/windowsmobile/en-us/downloads/microsoft/device-center-download.mspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;(if using XP, download ActiveSync 4.5)&lt;br /&gt;&lt;br /&gt;For the Kindle.&lt;br /&gt;Get the binary file to re-enable usb networking &lt;a href="http://www.mobileread.com/forums/showpost.php?p=498421&amp;amp;postcount=14"&gt;there&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Copied the file update_usbnetwork-k2.bin to the root of the Kindle mounted disk.&lt;br /&gt;&lt;br /&gt;Then:&lt;br /&gt;Home -&gt; Menu -&gt; Settings&lt;br /&gt;Menu -&gt; Update your Kindle&lt;br /&gt;&lt;br /&gt;After the reboot, I edited the file usbnet/usbnetwork uncommenting the line:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;route add default gw ${HOST_IP}&lt;/span&gt;&lt;br /&gt;(remove the # in front of it).&lt;br /&gt;&lt;br /&gt;For editing, make sure you are using a text editor that preserve the UNIX line-ending, I use the fantastic UltraEdit but there are many other options. Just do not use Windows' Notepad or Write. They will mess up the file and it won't work.&lt;br /&gt;&lt;br /&gt;Eject the kindle, and unplug the USB cable.&lt;br /&gt;&lt;br /&gt;Put the Kindle in debug mode:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Home&lt;/span&gt;.&lt;br /&gt;Type any letter on the keyboard to start the Search mode.&lt;br /&gt;Press &lt;span style="font-weight: bold;"&gt;DEL&lt;/span&gt; to blank the line.&lt;br /&gt;type:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;;debugOn&lt;/span&gt;&lt;br /&gt;(you get the &lt;span style="font-weight: bold;"&gt;;&lt;/span&gt; character in the &lt;span style="font-weight: bold;"&gt;SYM&lt;/span&gt; menu).&lt;br /&gt;&lt;br /&gt;Type any letter on the keyboard to start the Search mode.&lt;br /&gt;Press &lt;span style="font-weight: bold;"&gt;DEL&lt;/span&gt; to blank the line.&lt;br /&gt;type:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;`usbNetwork&lt;/span&gt;&lt;br /&gt;(you get the ` character in the &lt;span style="font-weight: bold;"&gt;SYM&lt;/span&gt; menu, 2nd last character on the 3rd line).&lt;br /&gt;&lt;br /&gt;Plug the USB cable.&lt;br /&gt;&lt;br /&gt;Let Windows install the drivers for the newly found peripheral.&lt;br /&gt;&lt;br /&gt;On my machine, the new ethernet connection was created as "Local Area Connection 3" and shows up as "DIRECTV HDPC20". YMMV&lt;br /&gt;&lt;br /&gt;Go into Start -&gt; Control Panel -&gt; Network &amp;amp; Sharing Center.&lt;br /&gt;Click on "Change Adapter Settings"&lt;br /&gt;&lt;br /&gt;Do a right click on your main network adapter, click on the "Sharing" tab&lt;br /&gt;Check the "Allow other network users to connect through this computer's Internet Connection"&lt;br /&gt;&lt;br /&gt;Click "OK"&lt;br /&gt;You will get prompted that the adapter interface will be changed to "192.168.0.1". That's okay, confirm.&lt;br /&gt;&lt;br /&gt;Now go and edit the other network adapter "DIRECTV HDPC20" (or whatever it's called on your machine)&lt;br /&gt;Click on the "Internet Protocol Version 4" and "Properties"&lt;br /&gt;change the IP address from 192.168.0.1 to 192.168.2.1 , subnet mask 255.255.255.0.&lt;br /&gt;&lt;br /&gt;Validate with OK.&lt;br /&gt;---&lt;br /&gt;&lt;br /&gt;Open a command line (windows + R, cmd)&lt;br /&gt;(Note Telnet isn't activated by default in Vista / Windows 7, go into the Control Panel and select "Programs and Features", click "Turn Windows Features on or Off" and check "Telnet Client").&lt;br /&gt;Another alternative is HyperTerminal from Hilgraeve...&lt;br /&gt;&lt;br /&gt;telnet 192.168.2.2&lt;br /&gt;[root@kindle root]#&lt;br /&gt;&lt;br /&gt;Remount the root partition in read-write mode:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# mntroot rw&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I configured the default DNS to use the OpenDNS servers:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# vi /etc/resolv.d/resolv.conf.default&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;nameserver 208.67.222.222&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;nameserver 208.67.220.220&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;(to enter edit mode in vi, press 'i', to save and quit: ':wq!')&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# vi /opt/amazon/ebook/config/framework.mario.conf&lt;/span&gt;&lt;br /&gt;change the line:&lt;br /&gt;USE_WAN : true&lt;br /&gt;into:&lt;br /&gt;USE_WAN : false&lt;br /&gt;&lt;br /&gt;create the file /etc/init.d/usbnet with:&lt;br /&gt;--- Cut below&lt;br /&gt;&lt;span style="font-style: italic;"&gt;#!/bin/sh&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_FUNCTIONS=/etc/rc.d/functions&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;[ -f ${_FUNCTIONS} ] &amp;amp;&amp;amp; . ${_FUNCTIONS}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;US_ENABLE=/mnt/us/usbnet/AUTO&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;case "$1" in&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;        start)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                if [ -f ${US_ENABLE} ]; then&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                        /mnt/us/usbnet/usbnetwork&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                else&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                        msg "not usbnet" I&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                fi&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;        ;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;        stop)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                ;;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;        *)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                msg "Usage: $0 {start|stop}" W &gt;&amp;amp;2&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                exit 1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                ;;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;esac&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;exit 0&lt;/span&gt;&lt;br /&gt;--- Cut above&lt;br /&gt;&lt;br /&gt;Make the file executable&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# chmod +x /etc/init.d/usbnet&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Create the link to active the init script&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# ln -s /etc/init.d/usbnet /etc/rcS.d/S72usbnet&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now create the file AUTO in the usbnet folder:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# touch /mnt/us/usbnet/AUTO&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;reboot your Kindle (either using the reboot command, or by doing Menu -&gt; Settings -&gt; Restart.&lt;br /&gt;&lt;br /&gt;That's it...&lt;br /&gt;&lt;br /&gt;To revert the changes and make the Kindle seen as a USB storage device once again do the following:&lt;br /&gt;telnet 192.168.2.2&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# rm /mnt/us/usbnet/AUTO&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# reboot&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To activate it again, simply create a file AUTO in the usbnet folder. The file system is case insensitive. So AUTO or auto for the name of the file doesn't matter.&lt;br /&gt;Then either reboot ; or enter debug mode (see above); and start &lt;span style="font-style: italic;"&gt;`usbNetwork&lt;/span&gt; again&lt;br /&gt;&lt;br /&gt;That's it... Enjoy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-6604475190767059650?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/6604475190767059650/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2009/09/kindle-usb-network-tethering_27.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/6604475190767059650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/6604475190767059650'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2009/09/kindle-usb-network-tethering_27.html' title='Kindle USB network tethering (Vista/Windows 7 version)'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-696656076562169500</id><published>2009-09-27T19:14:00.000-07:00</published><updated>2009-09-27T19:28:01.560-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='USB tethering'/><category scheme='http://www.blogger.com/atom/ns#' term='networking outside the US'/><category scheme='http://www.blogger.com/atom/ns#' term='Kindle'/><title type='text'>Kindle USB network tethering</title><content type='html'>I got a Kindle last week.&lt;br /&gt;&lt;br /&gt;So sweet, that unit alone made me wish I lived in the US... They have some pretty cool stuff over there.&lt;br /&gt;&lt;br /&gt;If like me you live outside the US, you will miss some of the great features provided by the Kindle and its "Whispernet" wireless network.&lt;br /&gt;I then read that there was a debugging option on the Kindle 2 letting you share the internet connection of your PC using the USB cable.&lt;br /&gt;Unfortunately, I had upgraded my Kindle to firmware 2.03 which removed the ability to tether over USB.&lt;br /&gt;&lt;br /&gt;Luckily, some bright people were at work and created a work around it...&lt;br /&gt;I merely collected information found in forums into one easy (well I hope) tutorial.&lt;br /&gt;Most of it came from this forum:&lt;br /&gt;http://www.mobileread.com/forums/showthread.php?t=49350&lt;br /&gt;&lt;br /&gt;So here are the steps for Mac OS (10.5 and 10.6).. Instructions for Windows Vista/7 to follow.&lt;br /&gt;&lt;br /&gt;Get the binary file to re-enable usb networking there:&lt;br /&gt;[url]http://www.mobileread.com/forums/showpost.php?p=498421&amp;amp;postcount=14[/url]&lt;br /&gt;&lt;br /&gt;Copy the file update_usbnetwork-k2.bin to the root of the Kindle mounted disk.&lt;br /&gt;&lt;br /&gt;Then:&lt;br /&gt;Home -&gt; Menu -&gt; Settings&lt;br /&gt;Menu -&gt; Update your Kindle&lt;br /&gt;&lt;br /&gt;After the reboot, I edited the file usbnet/usbnetwork uncommenting the line:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;route add default gw ${HOST_IP}&lt;/span&gt;&lt;br /&gt;(remove the # in front of it).&lt;br /&gt;&lt;br /&gt;Eject the kindle, and unplug the USB cable.&lt;br /&gt;&lt;br /&gt;Put the Kindle in debug mode:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Home&lt;/span&gt;&lt;br /&gt;Type any letter on the keyboard to start the Search mode.&lt;br /&gt;Press &lt;span style="font-weight: bold;"&gt;DEL&lt;/span&gt; to blank the line.&lt;br /&gt;type:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;;debugOn&lt;/span&gt;&lt;br /&gt;(you get the ; character in the SYM menu).&lt;br /&gt;&lt;br /&gt;Type any letter on the keyboard to start the Search mode.&lt;br /&gt;Press &lt;span style="font-weight: bold;"&gt;DEL&lt;/span&gt; to blank the line.&lt;br /&gt;type:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;`usbNetwork&lt;/span&gt;&lt;br /&gt;(you get the ` character in the &lt;span style="font-weight: bold;"&gt;SYM&lt;/span&gt; menu, 2nd last character on the 3rd line).&lt;br /&gt;&lt;br /&gt;Plug the USB cable.&lt;br /&gt;&lt;br /&gt;I'm on a Mac, using 10.6 (snow Leopard)&lt;br /&gt;The interface wasn't added automatically, so I went into the System Preferences -&gt; Network&lt;br /&gt;&lt;br /&gt;I press the + button just above the lock&lt;br /&gt;Selected the Interface "RNDIS/Ethernet Gadget" , I named it "Kindle"&lt;br /&gt;&lt;br /&gt;I set the interface as follow:&lt;br /&gt;Configure IPv4: Manually&lt;br /&gt;IP Address: 192.168.2.1&lt;br /&gt;Subnet mask: 255.255.255.0&lt;br /&gt;Click Apply.&lt;br /&gt;&lt;br /&gt;Then I went in Network Preferences -&gt; Sharing&lt;br /&gt;Configured the Internet Sharing&lt;br /&gt;To share my Airport connection to "RNDIS/Ethernet Gadget" (I had two listed there, for me the first one worked)&lt;br /&gt;&lt;br /&gt;Then I opened a Terminal (use in the Finder Command-Shift-U to get to the utility folder)&lt;br /&gt;&lt;span style="font-style: italic;"&gt;telnet 192.168.2.2&lt;/span&gt;&lt;br /&gt;I was welcomed by the friendly prompt:&lt;br /&gt;[root@kindle root]#&lt;br /&gt;&lt;br /&gt;Remount the root partition in read-write mode:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# mntroot rw&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I configured the default DNS to use the OpenDNS servers:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# vi /etc/resolv.d/resolv.conf.default&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;nameserver 208.67.222.222&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;nameserver 208.67.220.220&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;(to enter edit mode in vi, press 'i', to save and quit: ':wq!')&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# vi /opt/amazon/ebook/config/framework.mario.conf&lt;/span&gt;&lt;br /&gt;change the line:&lt;br /&gt;USE_WAN : true&lt;br /&gt;into:&lt;br /&gt;USE_WAN : false&lt;br /&gt;&lt;br /&gt;create the file /etc/init.d/usbnet with:&lt;br /&gt;--- cut below&lt;br /&gt;&lt;span style="font-style: italic;"&gt;#!/bin/sh&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_FUNCTIONS=/etc/rc.d/functions&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;[ -f ${_FUNCTIONS} ] &amp;amp;&amp;amp; . ${_FUNCTIONS}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;US_ENABLE=/mnt/us/usbnet/AUTO&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;case "$1" in&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;        start)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                if [ -f ${US_ENABLE} ]; then&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                        /mnt/us/usbnet/usbnetwork&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                else&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                        msg "not usbnet" I&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                fi&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;        ;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;        stop)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                ;;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;        *)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                msg "Usage: $0 {start|stop}" W &gt;&amp;amp;2&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                exit 1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;                ;;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;esac&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;exit 0&lt;/span&gt;&lt;br /&gt;--- cut above&lt;br /&gt;&lt;br /&gt;Make the file executable&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# chmod +x /etc/init.d/usbnet&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Create the link to active the init script&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# ln -s /etc/init.d/usbnet /etc/rcS.d/S72usbnet&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Now create the file AUTO in the usbnet folder:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# touch /mnt/us/usbnet/AUTO&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;reboot your Kindle (either using the reboot command, or by doing Menu -&gt; Settings -&gt; Restart.&lt;br /&gt;&lt;br /&gt;That's it...&lt;br /&gt;Now whenever I plug my Kindle to my mac, I enjoy all the internet goodness.&lt;br /&gt;&lt;br /&gt;To revert the changes and make the Kindle seen as a USB storage device once again do the following:&lt;br /&gt;telnet 192.168.2.2&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# rm /mnt/us/usbnet/AUTO&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# reboot&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To activate it again, simply create a file AUTO in the usbnet folder. The file system is case insensitive. So AUTO or auto for the name of the file doesn't matter.&lt;br /&gt;Then either reboot ; or enter debug mode (see above); and start &lt;span style="font-style: italic;"&gt;`usbNetwork&lt;/span&gt; again&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-696656076562169500?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/696656076562169500/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2009/09/kindle-usb-network-tethering.html#comment-form' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/696656076562169500'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/696656076562169500'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2009/09/kindle-usb-network-tethering.html' title='Kindle USB network tethering'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-5453158767946676704</id><published>2009-08-02T01:58:00.000-07:00</published><updated>2009-08-02T02:54:43.852-07:00</updated><title type='text'>ZFS: FreeBSD vs Solaris</title><content type='html'>Following up on the previous benchmark ; I wanted to check on the difference between FreeBSD and Solaris.&lt;br /&gt;Sun being the inventor of ZFS and had plenty of time to fine tune Solaris for it, they had to have it better.&lt;br /&gt;&lt;br /&gt;But by how much...&lt;br /&gt;&lt;br /&gt;So I installed OpenSolaris 2009.06... Installation was smooth as, very easy... A tad lost after that however as this is very different to FreeBSD or Linux which I'm more familiar with.&lt;br /&gt;&lt;br /&gt;Being able to read the ZFS created in FreeBSD was a bit complicated as for some weird reasons, Solaris was convinced the pool was using different partitions (even though the pool was created using entire disks).&lt;br /&gt;&lt;br /&gt;So I ran iometer, and here are the results...&lt;br /&gt;On the left FreeBSD 8.0-current (compiled without debugging option to speed things up)&lt;br /&gt;on the right, OpenSolaris 2009.06&lt;br /&gt;Write Sequential: 279MB/s - 289MB/s&lt;br /&gt;Read Sequential: 320MB/s - 362MB/s&lt;br /&gt;Write Random: 249MB/s - 282MB/s&lt;br /&gt;Read Random: 181MB/s - 176MB/s&lt;br /&gt;&lt;br /&gt;The use of memory caches is an interesting topic. Solaris seems to make much better use of the memory cache for longer as seen on the graph below, but FreeBSD has faster access to it. FreeBSD however didn't seem to use more than 1GB for write cache, even though 6GB was available. Overall when it comes to accessing the disks directly, Solaris is definitely faster.&lt;br /&gt;&lt;br /&gt;Write:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_x-d8M4JT2Tw/SnVYNLra0hI/AAAAAAAAADY/xT-mW7zuQ0c/s1600-h/image003.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 218px;" src="http://2.bp.blogspot.com/_x-d8M4JT2Tw/SnVYNLra0hI/AAAAAAAAADY/xT-mW7zuQ0c/s320/image003.png" alt="" id="BLOGGER_PHOTO_ID_5365291514578260498" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_x-d8M4JT2Tw/SnVYa6TBCbI/AAAAAAAAADg/XCLcOIHS3Go/s1600-h/image004.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 218px;" src="http://4.bp.blogspot.com/_x-d8M4JT2Tw/SnVYa6TBCbI/AAAAAAAAADg/XCLcOIHS3Go/s320/image004.png" alt="" id="BLOGGER_PHOTO_ID_5365291750430673330" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Read:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_x-d8M4JT2Tw/SnVYoX91WuI/AAAAAAAAADo/6YKNr1KQsmw/s1600-h/image005.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 218px;" src="http://2.bp.blogspot.com/_x-d8M4JT2Tw/SnVYoX91WuI/AAAAAAAAADo/6YKNr1KQsmw/s320/image005.png" alt="" id="BLOGGER_PHOTO_ID_5365291981733190370" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_x-d8M4JT2Tw/SnVYwGZcfxI/AAAAAAAAADw/BiefP9MiVLE/s1600-h/image006.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 218px;" src="http://4.bp.blogspot.com/_x-d8M4JT2Tw/SnVYwGZcfxI/AAAAAAAAADw/BiefP9MiVLE/s320/image006.png" alt="" id="BLOGGER_PHOTO_ID_5365292114456117010" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;No matter what, the motherboard I'm using has dual-gigabit NIC only, so the difference in speed isn't that much relevant... Being much more familiar with BSD, this is what I will continue to use, and no doubt, ZFS support will keep improving.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://spreadsheets.google.com/pub?key=ttegOPiwbYWCl9hyGlc6c-Q&amp;amp;output=html&amp;amp;widget=true" frameborder="0" height="300" width="500"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-5453158767946676704?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/5453158767946676704/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2009/08/zfs-freebsd-vs-solaris.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/5453158767946676704'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/5453158767946676704'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2009/08/zfs-freebsd-vs-solaris.html' title='ZFS: FreeBSD vs Solaris'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_x-d8M4JT2Tw/SnVYNLra0hI/AAAAAAAAADY/xT-mW7zuQ0c/s72-c/image003.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8543046762843691074.post-9096737612281643998</id><published>2009-07-31T08:37:00.000-07:00</published><updated>2009-08-02T02:26:20.686-07:00</updated><title type='text'>ZFS / RAIDZ Benchmarks</title><content type='html'>At work we needed a new storage/file server as our existing is starting to show sign of aging (it's been running for over 5 years now).&lt;br /&gt;&lt;br /&gt;ZFS looked promising on paper. But I had to try.&lt;br /&gt;&lt;br /&gt;So I got the following setup.&lt;br /&gt;&lt;br /&gt;Lian Li PC343B Cube case, which can host up to 30GB.&lt;br /&gt;Intel 77 920 processor, 6GB DDR3 in triple-channel configuration&lt;br /&gt;Motherboard Gigabyte EX58-UD5P&lt;br /&gt;6 x 2TB Western Digital RE4 drives (RE stands for Raid Edition)&lt;br /&gt;&lt;br /&gt;OS Is FreeBSD 8.0-BETA2 (with debugging off) and disks are set in a RAIDZ configuration.&lt;br /&gt;&lt;br /&gt;I have to say that so far it's runs quite well, but not as well as I would have thought.&lt;br /&gt;over 275MB/s sequential write, and 310MB/s sequential read...&lt;br /&gt;Invidual disk benchmarks showed that the Western Digital 2TB RE4 could achieve 100MB/s quite easily on its own. Yet, over RAIDZ, that's an average of 45MB/s per disk only.&lt;br /&gt;&lt;br /&gt;Typical file server profile with file bench shows in excess of 180MB/s of random access (file server storage). I do not however fully rely on filebench as it had never been ported to FreeBSD and it took me over an hour to get it working on FreeBSD (filebench is a Sun package)&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;br /&gt;&lt;tbody&gt;&lt;tr&gt;&lt;br /&gt;&lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_x-d8M4JT2Tw/SnMbQDEGj0I/AAAAAAAAADI/imlz5exUdBg/s1600-h/image003.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 218px;" src="http://4.bp.blogspot.com/_x-d8M4JT2Tw/SnMbQDEGj0I/AAAAAAAAADI/imlz5exUdBg/s320/image003.png" alt="" id="BLOGGER_PHOTO_ID_5364661543642763074" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;br /&gt;&lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_x-d8M4JT2Tw/SnMbZyUC53I/AAAAAAAAADQ/QblSYrpBciI/s1600-h/image004.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 218px;" src="http://3.bp.blogspot.com/_x-d8M4JT2Tw/SnMbZyUC53I/AAAAAAAAADQ/QblSYrpBciI/s320/image004.png" alt="" id="BLOGGER_PHOTO_ID_5364661710944921458" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Here is a comparison with our previous file server, which was state of the art 5 years ago (3Ware 9500-S RAID controller,8x74GB 10,000rpm raptor disks, AMD Opteron 248) 98MB/s physical speed&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;br /&gt;&lt;td&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_x-d8M4JT2Tw/SnMa717OEnI/AAAAAAAAAC4/l-gITqGiPMU/s1600-h/image001.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 218px;" src="http://3.bp.blogspot.com/_x-d8M4JT2Tw/SnMa717OEnI/AAAAAAAAAC4/l-gITqGiPMU/s320/image001.png" alt="" id="BLOGGER_PHOTO_ID_5364661196518462066" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;br /&gt;&lt;td&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_x-d8M4JT2Tw/SnMbFn5zl4I/AAAAAAAAADA/TojaV2vH_n8/s1600-h/image002.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 218px;" src="http://3.bp.blogspot.com/_x-d8M4JT2Tw/SnMbFn5zl4I/AAAAAAAAADA/TojaV2vH_n8/s320/image002.png" alt="" id="BLOGGER_PHOTO_ID_5364661364553127810" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;ZFS has passed every attempts to crash it... However, FreeBSD doesn't handle hotplug properly.. So any change of drive due to failure will have to be done with the machine offline unfortunately.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8543046762843691074-9096737612281643998?l=jyavariousideas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jyavariousideas.blogspot.com/feeds/9096737612281643998/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jyavariousideas.blogspot.com/2009/07/zfs-raidz-benchmarks.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/9096737612281643998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8543046762843691074/posts/default/9096737612281643998'/><link rel='alternate' type='text/html' href='http://jyavariousideas.blogspot.com/2009/07/zfs-raidz-benchmarks.html' title='ZFS / RAIDZ Benchmarks'/><author><name>Jean-Yves Avenard</name><uri>http://www.blogger.com/profile/12581860475715822245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_x-d8M4JT2Tw/SnMbQDEGj0I/AAAAAAAAADI/imlz5exUdBg/s72-c/image003.png' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
