Saturday, January 31, 2009

Installing Windows7

My last post was about my personal cloud. I am still working on it – there are many rules that needs to be fixed first, I already found few bugs, however I am progressing pretty quickly.

Once I will finish my design (and implementation), I wanted to make final test – reinstall one of my production computers, join it to cloud and see how much work it takes before I’ll be able to make it productive again.

Suddenly, I need to make that test now – HDD on my laptop crashed and luckily that laptop was part of my cloud, so everything is backed up :)

At this moment I am installing Windows 7 – one of reasons is that I am also MS moderator for Win7 and I want to use that system on daily basis in order to give reliable answers to people (and not read them from some Win7 cookbook). Originally I wanted to install Windows 7 to my desktop PC – but ouch, I got rid of original mouse & keyboard and now I am left with my wireless combo (HINT: Doesn’t work with BIOS ;)).

I will write this post during installation. Because I am too lazy to burn installation DVD, I decided I will rather install it using USB drive.

Preparing USB drive

I got 3 drives at home – 1 static (1 TB) for music and video, one dedicated to work that is part of my cloud (200 GB) and one for rest (120 GB, I don’t use it too much anymore).

I decided I will use my DevHDD (used for work). First I need to create partition (+-10GB) – instead of backing up all data and re-formating I will rather use shrink functionality build into Vista:

1.) Right-click on HDD and select Shrink Volume:


2.) Specify amount of space in MBs. I will use 10GB:


3.) Click Shrink button. Interesting is that drive is available all the time – during my shrink I tried to copy 10GB file to this drive just to see if it will work – it did :) You should now see shrinked volume as unallocated:


4.) Select New simple volume:


5.) Format with FAT32 filesystem:


6.) Mark partition as Active:


7.) Mount Windows7 ISO in your favorite virtual drives software. I know almost everyone uses Daemon Tools, I prefer to use Gizmo (TODO: write blog post about Gizmo ;)):


8.) Copy content of installation DVD to your new partition:


9.) Once finish, just attach USB drive to your PC and reboot\startup. Go to boot menu (my Dell – F12, my HP – ESC, you all know this stuff) and select USB Storage Device as boot option – and voila – Windows 7 installation will start :)

10.) Ehm, INSTALL Windows 7 :) My installation (from first boot till desktop) took 25 minutes (including manual typing of user name, computer name, product key etc etc), which is perfect :) I was also surprised that during installation I was asked if I want to join a wireless network – it showed me list of all networks in range, really nice feature.

11.) Joined my cloud – this is secret part and is going to be covered in future posts :) As mentioned before, my cloud needs a LOT of improvements to be fully automated and easy to use, so we can skip this step now.

12.) Once installation is finished, we can delete volume we created for installation:


13.) Next step – lets extend partition to original size:


14.) On following screen you select how much unallocated space you want to use. WARNING: there is one gotcha, predefined amount of space is (MaximumAvailable + 1), so Next button is by default grayed out. Just decrease it by one and Next button is enabled again:


Finished – my laptop is reinstalled with Windows 7 :)

Wednesday, January 28, 2009

Personal cloud - Introduction

Hi all,

maybe you noticed I got huge problem – don’t have enough time to write articles :( This is mostly to my new project, I need to travel almost every week and I don’t want to touch computer during weekends.

However my new situation got also bright moments – and one of them is that I had to create my “cloud” – my fully automated synchronization of programs, contacts, mails etc between multiple devices and with limited internet connectivity. In following series of posts I want to share with you all technologies I used and procedures.


First of all, let me tell you about my starting situation. At home I got development desktop – two screens, 4GB ram, I really prefer to use it instead of laptop.

However on road I must use laptop – and as I mentioned before, I travel a lot.

Even though I really love Vista’s sleep functionality, I don’t want to always open laptop whenever I need information like meeting room or mail address, so third device I am using is Windows Mobile E-Ten M800.

And, last but not least, you know that it can happen that you need to access your data using internet only.

To summarize it, I got 2 computers (using them 50:50), one mobile phone and I want to have online access to all my data.


Ok, personal cloud, what are we talking about exactly?

  • emails
  • contacts
  • calendar
  • passwords
  • utilities
  • installation sources
  • configuration
  • favorites
  • documents
  • .NET\PowerShell projects

Other requirements

I am lazy. I am VERY lazy. That is why I am specialized on scripting frameworks and automation in general – I am too lazy to do it manually, so I rather automate it.

For that reason I don’t want any solution that would require me to solve conflicts, specify when to sync, I want completely seamless solution that won’t require any interaction from my side.

Also for sources, I am sure all of you know situation when you reinstalled your computer and spend hours and hours downloading small applications like .NET framework, Daemon tools, Live Messenger… And I am sure you are running at least (being optimistical) one application, that is already out-of-date (there is newer version available), so I also wanted to automate process of getting latest available sources.

What I want to achieve is that if I will reinstall my computer, all I need to do is connect to my cloud, do little bit of configuration (ideally just run Connect-Cloud.ps1 :)) and get back my work space.

Current situation

At this moment I am fixing minor bugs and issues, however I am already running solution that (almost) fits all my requirements. I want to write series of articles describing each category I store in my cloud – so if you are missing something that is important for you, let me know.

Of course this solution is not based on one ultimate product – it is combination of few (5-6?) separate tools.