Insatiably Curious Blog

December 26, 2010

Creating a RAID Array on a Machine with Already Installed Windows 7

Filed under: Computer Configuration — InsatiablyCurious @ 11:04 pm

Suppose you have a home computer with a lot of valuable data (such as priceless family photos or videos) and you finally decided that entrusting all of it to a single hard drive is like sitting on a ticking time bomb, so you elected to add another hard drive and combine the two into a single RAID 1 array to have at least a minimal level of safety.  You checked your motherboard and was pleased to discover that it has a built-in hardware RAID controller, so you purchased another disk (matching the one already in your machine) and are ready to slip it into the case and get rolling.  Then you skim the motherboard documentation one more time and discover that you must change the hard drive mode from IDE (or AHCI) to RAID.  No problem… except this innocuous note is accompanied by an ominous sounding message.  If you switch your BIOS to RAID on a system that already has Windows installed, your computer will likely fail to boot.  Now what?!  You’ll have to reinstall Windows from scratch.  If you’re like me you’re probably looking forward to this procedure about as much as to root canal work.  Luckily for you, there is a much simpler solution.  If you’re interested, read on.

A couple of days ago I found myself in a similar situation.  I have a Windows 7 machine with 3 Western Digital hard drives totaling 2.5 TB.  The operating system is installed the first disk (500 GB) and I store all my important data on a second (1 TB) disk.  Finally, the last disk (also 1 TB) is used for backing up my data.  Over the last few years I’ve accumulated over 500 GB worth of pictures and videos, and I’ve grown increasingly weary of holding it on a single non-redundant drive.  I’ve searched far and wide for a reliable and convenient back-up solution (that would make a good subject for another post), and ultimately came up short, so I finally resorted to setting up a RAID array.  I have a Gigabyte GA-965P-DQ6 motherboard with Intel’s P965+ ICH8R chipset with RAID support (Intel® Rapid Storage Technology).  So, during Black Friday frenzy I grabbed a new 1 TB WD Caviar Black ($60 at Best Buy!) and a couple weeks later found the time to set things up.  That’s when I ran into the snag described above.

It turns out that the boot-up failure is caused by the lack of appropriate RAID drivers during Windows start-up.  I visited Intel’s Rapid Storage Technology (RST) support website, where I found some information about adding the RAID drivers during Windows installation, which was not very helpful in my situation.  However, Intel’s site also mentions that on Windows 7 it is no longer required to install the RAID drivers during setup (F6), because the driver is already included with the operating system.  If that’s true, I figured, it is possible that the driver gets installed with the operating system and is simply disabled, if it is not required.  After some more digging online I found this site, which describes a couple of methods of enabling Intel’s RAID driver by editing the Windows registry (first method, second method).  At the bottom of the first post I found following procedure:

  1. With RAID disabled, boot into Windows and start Regedit.exe
  2. Navigate to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\iaStorV
  3. In the right-hand column, you should see a value named Start. Double-click this entry and change the data from 1 to 0.
  4. Reboot with RAID enabled – Windows should load just fine. Now install the Intel Matrix Storage Manager as you usually would. This time around, it should detect your hardware and install without any issues.

In my registry, under Services, I found two entries iaStor and iaStorV.  Under the former the Start value was already set to 0, while in the later Start was set to 3.  If you are curious about the significance of these different values, you can read a brief summary on Microsoft Support site.  The Start value determines when a given service (in this case, driver) is started, and to be started at boot time, a service must have a setting of 0.  If you would like to learn more about Windows services (and a whole lot more about the internal details of the OS) get a copy of Mark Russinovich’s “Windows Internals”.  Changing the Start value under iaStorV to 0 did the trick.  After rebooting my machine and enabling RAID in the BIOS, I was up and running.

That was it – plain and simple!  I could only wish this information was more prominently emphasized as took me a while to dig it up.  There are just two more things to mention.  First, Intel seems to have renamed their Windows software for configuring the RAID controller from Matrix Storage Manager (as it is referred to in the above procedure) to Rapid Storage Technology.  Second, after you reboot your system and enable RAID in the BIOS, you will be presented with the RAID configuration utility during startup.  I would advise you not to use it to create an array.  Instead, wait until the system fully boots and use the RST software, which gives you an option to migrate your data from a single drive to a newly created array.  In fact, it does so in the background, even as you continue to use the computer.  Pretty sweet!  Of course, you should always back up your data before configuring your RAID array.

Quick Update: After writing this post I had a nagging feeling that I had gone through a similar procedure before.  Well, it turns out that I had, indeed.  I even chose to describe it in one of my earlier posts.  That time the problem was switching from IDE to AHCI, but the symptoms were identical and the solution quite similar.

December 27, 2009

Switching SATA Ports to AHCI After Installing Windows

Filed under: Computer Configuration — InsatiablyCurious @ 12:11 pm

For reasons which I won’t explain here in detail, but which have to do with Windows 7 backup running excruciatingly slow on my external FireWire drive (see here) and WD MyBook exhibiting an annoying tendency to shut down periodically when connected via eSATA, I was recently forced to examine my BIOS configuration of the SATA ports on my machine.  As it turns out Intel’s P965 Express Chipset can run the SATA ports in three different modes: IDE, AHCI and RAID.  Evidently, the IDE mode is inferior to AHCI, but for compatibility reasons my motherboard was preset to IDE and I must not have done my homework when I built my home PC a couple of years ago.

Intel warns (see here and here) that switching to AHCI after you have installed Windows on a SATA drive in IDE mode is not supported and may result in a blue screen and system shutdown.  I tried, and indeed a blue screen was what I saw.  At that point I was begining to contemplate reinstalling my recently set up Windows 7, but luckily I postponed that decision for a little while.  A few days later I stumbled upon an article on Microsoft’s support site, which explains a very simple registry change, which allows Windows to boot just fine after switching the system drive to AHCI.  It turns out that the only piece missing is a Microsoft AHCI driver (msahci.sys), which Windows doesn’t automatically load during the boot sequence unless an AHCI disk was present when Windows was being installed.

After the change to AHCI, when Windows first boots (and loads the driver) it will detect a “new device” and prompt to restart the computer.  Once all that is done, you can download Intel’s Matrix Storage Manager, which will install its own AHCI/RAID driver and require another restart.

I later discovered other articles describing different procedures to accomplish the same result, but I still find Microsoft’s the easiest.

Theme: Silver is the New Black. Blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.