<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>TheDeeno&#039;s Blog</title>
	<atom:link href="http://thedeeno.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://thedeeno.wordpress.com</link>
	<description>Share, Discuss, Learn.</description>
	<lastBuildDate>Thu, 10 Sep 2009 03:55:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='thedeeno.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>TheDeeno&#039;s Blog</title>
		<link>http://thedeeno.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://thedeeno.wordpress.com/osd.xml" title="TheDeeno&#039;s Blog" />
	<atom:link rel='hub' href='http://thedeeno.wordpress.com/?pushpress=hub'/>
		<item>
		<title>DbSnapshot v0.1 Released!</title>
		<link>http://thedeeno.wordpress.com/2009/08/31/dbsnapshot-v0-1-released/</link>
		<comments>http://thedeeno.wordpress.com/2009/08/31/dbsnapshot-v0-1-released/#comments</comments>
		<pubDate>Mon, 31 Aug 2009 15:18:05 +0000</pubDate>
		<dc:creator>TheDeeno</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[db]]></category>
		<category><![CDATA[DbSnapshot]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://thedeeno.com/?p=33</guid>
		<description><![CDATA[Last night I finished up work on a small .net library called DbSnapshot. The library helps test database interactions by allowing you to easily save and restore snapshots of your database. Simplicity was the goal, so its increidibly easy to use. Lets see it in action! You can easily port the above to setup a test fixture [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeeno.wordpress.com&amp;blog=6749952&amp;post=33&amp;subd=thedeeno&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Last night I finished up work on a small .net library called <a href="http://github.com/thedeeno/DbSnapshot/tree/master" target="_self">DbSnapshot</a>. The library helps test database interactions by allowing you to easily save and restore snapshots of your database. Simplicity was the goal, so <strong>i</strong><strong>ts increidibly easy to use</strong>. Lets see it in action!</p>
<p><pre class="brush: csharp;">
public void MyTest()
{
    using (var manager = new SqlSnapshotManager(connectionString, databaseName))
    {
        manager.SaveSnapshot();

        // execute some potentially destructive db commands

        manager.RestoreSnapshot();

        // execute some more destructive db commands

        manager.RestoreSnapshot();
    }
}
</pre></p>
<p>You can easily port the above to <strong>setup a test fixture</strong> (<em>example in nunit</em>):</p>
<p><pre class="brush: csharp;">
[TestFixture]
public class MyFixture
{
    IDbSnapshotManager _manager;

    [TestFixtureSetUp]
    public void FixtureSetup()
    {
        _manager = new SqlSnapshotManager(CONNECTION_STRING, TEST_DATABASE_NAME);
        _manager.SaveSnapshot(); // prepare for db tests
    }

    [SetUp]
    public void Setup()
    {
        _manager.RestoreSnapshot(); // put db in an expected state before each test
    }

    // ...
    // DO TONS OF POTENTIALLY DESTRUCTIVE TESTS
    // ...

    [TestFixtureTearDown]
    public void FixtureSetup()
    {
        _manager.Dispose(); // clean up when finished with tests
    }
}
</pre></p>
<p>The SqlSnapshotManager works by using SqlServer&#8217;s built in backup/restore facilities. It creates a COPY_ONLY backup (so it doesn&#8217;t interupt your current backup cycle) and saves it to a file in the &#8220;.dbsnapshot&#8221; directory under your project&#8217;s current directory. It implements IDisposable so make sure to dispose it! Disposal will ensure the database always gets restored and the work files/folders are removed.</p>
<p>Right now it only works with <strong>SqlServer </strong>but I plan on supporting <strong>MySql </strong>and others in the future.</p>
<p>If you want to help by creating a snapshot manager for your flavor of database engine, just implement IDbSnapshotManager and send me a patch!</p>
<p>You can get the <span style="text-decoration:line-through;">v0.1</span> <a href="http://github.com/thedeeno/DbSnapshot/downloads">v.02 release here</a>.</p>
<p>The <a href="http://github.com/thedeeno/DbSnapshot/tree/master">source is on GitHub</a>.</p>
<p>Clone url: <a href="//github.com/thedeeno/DbSnapshot.git">git://github.com/thedeeno/DbSnapshot.git</a></p>
<p>Enjoy!</p>
<br /> Tagged: c#, db, DbSnapshot, programming, testing <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thedeeno.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thedeeno.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thedeeno.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thedeeno.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thedeeno.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thedeeno.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thedeeno.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thedeeno.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thedeeno.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thedeeno.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thedeeno.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thedeeno.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thedeeno.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thedeeno.wordpress.com/33/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeeno.wordpress.com&amp;blog=6749952&amp;post=33&amp;subd=thedeeno&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thedeeno.wordpress.com/2009/08/31/dbsnapshot-v0-1-released/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ceb3004fcd7431660b8e16a91ca89b53?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">TheDeeno</media:title>
		</media:content>
	</item>
		<item>
		<title>How To: Network Backup/Restore a HD Image</title>
		<link>http://thedeeno.wordpress.com/2009/05/06/how-to-network-backuprestore-a-hd-image/</link>
		<comments>http://thedeeno.wordpress.com/2009/05/06/how-to-network-backuprestore-a-hd-image/#comments</comments>
		<pubDate>Wed, 06 May 2009 21:15:40 +0000</pubDate>
		<dc:creator>TheDeeno</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[clonezilla]]></category>
		<category><![CDATA[hd-cloning]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[oss]]></category>

		<guid isPermaLink="false">http://thedeeno.com/?p=15</guid>
		<description><![CDATA[Over the weekend I got one of those sexy new 160GB Intel X25-M SSDs. I really wanted to bring my (HD limited) laptop up to speed with my desktop. Eager to get my expensive new HD running, I immediately went looking for a good way to clone my existing HD onto it. Unfortunately, most the solutions I found made 3 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeeno.wordpress.com&amp;blog=6749952&amp;post=15&amp;subd=thedeeno&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Over the weekend I got one of those sexy new <a href="http://www.intel.com/design/flash/nand/mainstream/index.htm">160GB Intel X25-M SSDs</a>. I really wanted to bring my (HD limited) laptop up to speed with my desktop. Eager to get my <span style="text-decoration:line-through;">expensive</span> new HD running, I immediately went looking for a good way to clone my existing HD onto it. Unfortunately, most the solutions I found made 3 assumptions I couldn&#8217;t make:</p>
<ol>
<li>I could easily hook up both drives to the same machine. My laptop only has 1 HD bay and the expansion bay tray costs $$ and, more importantly, will take a while to ship. I also don&#8217;t have a SATA enclosure lying around.</li>
<li>I had access to an external HD with enough space to hold my drive&#8217;s image.</li>
<li>I wanted to pay for a solution to a fundamentally basic and common IT problem. Surely the community had picked this one up.</li>
</ol>
<p>All I really wanted was a solution that allowed me to use my home network and my desktop machine (with huge storage capacity) as an intermediary.  Well after a bit of digging and experimenting I have both a procedure that works and knowledge of some really cool OSS projects!</p>
<p><strong>Just follow my simple &#8220;12 step&#8221; program:</strong></p>
<p>Note: Since we&#8217;re dealing with data here. Lemme just say that this information is provided &#8220;AS IS&#8221; WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. USE THIS PROCEDURE AT YOUR OWN RISK.</p>
<ol>
<li>On your &#8217;destination&#8217; computer share a folder. Make sure you have enough space for the image file your about to throw on it. Note: the image size will = used space not total size. Also, make sure the folder permissions are set correctly. Your going to log into this &#8216;destination&#8217; computer from the source later on in this process.</li>
<li>Download an ISO or Zip of <a title="CloneZilla" href="http://www.clonezilla.org/" target="_blank">CloneZilla</a> . It requires a bit of background IT knowledege to use with complete confidence - but it works great.</li>
<li>Burn the ISO to CD or make copy it to your bootable USB Key. (<a href="http://www.clonezilla.org/clonezilla-live/liveusb.php">check here</a> for instructions on how to make your USB Key bootable)</li>
<li>Boot your source machine off the CD or USB key. You should see the CloneZilla boot screen. Start CloneZilla Live.</li>
<li>Tell CloneZilla what you want to clone. CloneZilla can save both individual partitions or your entire disk. (&#8220;parts&#8221; = partitions)</li>
<li>Tell CloneZilla where you want to save the clone. Here you want to tell CloneZilla to use <a href="http://us1.samba.org/samba/docs/FAQ/">samba</a>. CloneZilla is Linux/Unix based. Samba essentially allows Unix to talk to Windows. You&#8217;ll be prompted to enter the network address of the computer and its login information so you can get access to the folder share. It will try and connect &#8211; if it can&#8217;t make sure you can ping your source computer from the destination and verify the login information is correct. You can always start the CloneZilla process over again if need be.</li>
<li>Finish setting up the transfer options. If your not sure, your probably safe with defaults.</li>
<li>Wait. For my 160GB harddrive it took about 4 hrs to extract and copy the image.</li>
<li>When finished, turn off the source machine and install the new HD.</li>
<li>Boot the &#8216;source&#8217; machine to ClonzeZilla again. This time indicating that you wish to <em>restore</em> an image. This will be very similar to the save operation you did earlier. When you use samba and connect to the &#8216;destination&#8217; machine it should find an image with the name you specified earlier. Restore that one.</li>
<li>Wait.</li>
<li>When finished, use the CloneZilla menu to shutdown your machine. Remove the CloneZilla boot media. And turn your new speedy Machine back on. Bam! it should work.</li>
</ol>
<p>If your curious about some other OSS that might help with your HD maitence check out <a href="http://www.makeuseof.com/tag/5-ways-to-clone-and-copy-your-hard-drive/">this list</a>.</p>
<br /> Tagged: clonezilla, hd-cloning, how-to, IT, oss <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thedeeno.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thedeeno.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thedeeno.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thedeeno.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thedeeno.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thedeeno.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thedeeno.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thedeeno.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thedeeno.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thedeeno.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thedeeno.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thedeeno.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thedeeno.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thedeeno.wordpress.com/15/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeeno.wordpress.com&amp;blog=6749952&amp;post=15&amp;subd=thedeeno&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thedeeno.wordpress.com/2009/05/06/how-to-network-backuprestore-a-hd-image/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ceb3004fcd7431660b8e16a91ca89b53?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">TheDeeno</media:title>
		</media:content>
	</item>
	</channel>
</rss>
