Wednesday, August 22, 2012

Upgrading to Larger Drives in RAID1 Array with Intel RAID controller and Not Losing Data

I had a job yesterday in which I needed to upgrade the two 160GB Hard Drives in a customer's Dell Server, and replace them with 500GB drives.  The server uses an Intel 82801GR/GH SATA RAID Controller and has the Intel Matrix Storage Console software installed.

I removed one of the 160GB drives and let the RAID rebuild itself to the 500GB drive in Windows.  I then rebooted, removed the second 160GB drive, installed the second 500GB drive, and allowed that drive to be rebuilt in Windows.

I quickly discovered that both 500GB drives only showed up in the Server as 160GB, because the RAID volumes were that size.  What to do??

I installed Easeus Partition Master Server Edition thinking that would let me re-size the drive(s), but no - it showed the RAID as having a max of 160GB.

I finally discovered a post online that detailed what to do, and these are the steps that worked:

  1. Remove one of the two original, smaller drives and replace it with one of the larger drives.
  2. Rebuild original RAID1 array to new, larger drive.
  3. Shut Down PC and remove the other, smaller drive (you should only have the one larger hard drive in the computer at this point)
  4. Turn computer on and press CTRL+I to enter RAID Configuration
  5. Break the RAID on the one larger drive
  6. Reboot into Windows and open  Easeus Partition Master Server Edition (or your favorite partition resizing software)
  7. Resize drive to use its full capacity
  8. Shut down computer and install second larger drive
  9. Reboot into Windows and open the Intel Matrix Storage Console software
  10. Click Actions --> Create RAID Volume from Existing Hard Drive
  11. Select your Windows Volume as the source drive, and your newly installed, second larger drive as the mirror drive
  12. The Intel Matrix Storage Console software will begin mirroring your larger drive volume to the second larger drive.
When all is said and done, your new RAID1 Array should be complete, and you should see an array status such as this:


Hope this can help someone.  Cheers!

Monday, August 20, 2012

Deleting the hal.dll file in Windows XP can delete the ACPI Advanced Power Management (APM) functions of your computer

I recently had a customer with a virus infection that resulted in a missing hal.dll file error message when Windows XP Home started.  I booted Windows from the installation CD and went into the recovery console.  I copied the Hal.dll file from the CD to the Windows System 32 directory, as detailed here: http://pcsupport.about.com/od/fixtheproblem/ht/restorehaldll.htm

After I replaced the file, it still wouldn't boot, and I discovered that the boot.ini file had been corrupted/deleted.  As a result I re-entered the recovery console from the Windows XP CD and rebuilt the boot.ini file, as detailed here: http://support.microsoft.com/kb/330184

The computer booted up just fine and we continued to remove the virus files and fix other errors on the computer.

The customer called back to say that when he told the computer to shut down, he was now getting a message that "It is Now Safe to Turn Off Your Computer" and looked like this:



I returned to his house and discovered that as a result of replacing the hal.dll file, the computers Advanced Power Management features were missing, and instead of showing an ACPI PC in Device Manager, it showed a Standard PC:



When I went into Power Options in Control Panel, several ACPI-related options such as Sleep, Hibernate, and the Power Button options were missing.  All the guides I read said that if that happened, you had to completely reinstall Windows XP.

Before I went ahead with that, I discovered some instructions on another blog that detailed how to edit the Registry and then perform a hardware upgrade of the "Standard PC" to an ACPI-compatible PC.  I performed the steps and it fixed the ACPI-related problems.  Here are the steps (which should only be performed if you are SURE your PC is ACPI-compatible):


  1. Regedit. Browse to:
    HKLM\System\CurrentControlSet\Enum\Root\PCI_HAL000
  2. Right click the 0000 key and choose “Permissions…”.
  3. Check the “Full Control” checkbox for “Everyone”. This allows you to edit this next value…
  4. Open the “HardwareID” value and change it from “e_isa_up” to “acpipic_up” (followed by one line break, the cursor should be on the line directly under “acpipic_up”).
  5. Open Device Manager, open the “Computer” key, right-click “Standard PC”, and select “Update Driver”.
  6. You’ll pick from a list, don’t search, answer accordingly.
  7. Select the ACPI entry, which will now be shown in the Compatible Hardware list (joy!), thanks to the reg-tweak.
  8. Once again, if you actually CONTINUE with this, and your system is NOT originally an ACPI system, it very well may make it unbootable.
  9. Select “Next” and let the new HAL install.
  10. Reboot, and you’re done! Enjoy your ability to select the multi-processor HAL once again if you were curiously poking around. Since hal.inf locks you into only “compatible” HALs, you can now update again and select Multi-Processor PC if your system supports it, then you’ll have multi-cores again.
                  These original instructions are located here: http://falconfour.wordpress.com/2011/03/19/how-to-switch-windows-xp-hal-_back_-from-standard-pc-to-acpi-the-clean-way/, and I thank the poster for helping me avoid a complete Windows XP reinstall.