Jump to content
RESET Forums (homeservershow.com)

HOWTO Get JBOD access to drive not in array when using B120i in RAID mode in Windows


Viper
 Share

Recommended Posts

I just picked up a HP Microserver Gen8 Entry model a few days ago.
 
I intend to use it for NAS storage mainly and not really interested in running RAID on it, but it was cheap (half price of the cheapest 4 bay NAS) and for me a more flexible solution.
I have been reading this forum before my purchase so I knew about the quirks with B120i about booting from ODD port and the fan speed and so on.
 
The thing is I kept thinking to myself that this HP B120i controller almost seems like it is the same as the standard Intel controller available on C204 chipsets. I also noticed a thread where someone, using Debian I believe, was able to see all the drives connected including the ones not configured in an array.
So I did some digging in the HP driver and sure enough the vendor tag in the driver belongs to Intel. I did some testing since my setup was new and no risk of data loss, and it is possible to replace the RAID driver with an Intel one in Windows and gain access to drives not in array.
 
WARNING
Try this at you own risk.
Also if you remove a disk from a RAID array in the controller config it will delete the drive contents so be aware.
 
I have tested this method on the following Windows versions and all worked fine, but it should also work for the other versions of windows the driver supports.
  • Windows Server 2012 x64
  • Windows Server 2012 R2 x64
  • Windows Server Technical Preview 4 x64
  • Windows 11 x64
 
Goal:
The goal of this setup is to have the B120i controller in RAID mode and boot from the ODD port using a RAID0 array for the boot disk, but then be able to see all disk connected to the controller in Windows as normal disks.
 
Procedure:
  1. Download the Intel RST RAID driver 12.9.0.1001 f6flpy-x64.zip file for X64, and extract it.
  2. Create a RAID0 array for the boot disk in ODD (port5), leave the rest of the disks unconfigured in the controller config.
  3. Install Windows as normal, either manual using the B120i drivers or Intelligent Provisioning.
  4. Once installation has finished you should only be able to see the C: drive and showing a logical drive in device manager like this:
    JHku1kp.png
  5. Go to device manager and find the "HP Dynamic Smart Array B120i SATA RAID Controller"
  6. Right click on the controller and select "Update Driver Software"
  7. Click "Browse my computer for driver software"
  8. Click "Let me pick from a list of device drivers on my computer"
  9. Click "Have Disk"
  10. Now browse to the location where you extracted the driver and select the iaStorAC.inf file, and click OK.
  11. You will now see a list with 2 drivers, chose the "Intel® Desktop/Workstation/Server Express Chipset SATA RAID Controller" and click Next.
  12. You will now see a warning that the driver you have selected might not be compatible with the hardware, click Yes.
  13. The driver will now be installed and it should show successful
  14. Restart the computer.
  15. After restart has completed you should now be able to access the disk directly like this:
    2KutzSX.png
  16. Enjoy.
Notes:
  • The reason for using the specific version 12.9.0.1001 of the Intel RAID driver is because newer versions of this driver enabled APM management om some disks (Samsung,Hitatchi) and causes them to park the heads constantly and this leads to high number of Load/Unload cycled witch could affect the lifespan of the disk (thread). Also some newer versions have problem with disk spinning down and up again during Windows shutdown (thread), not a bit problem for a server but still. I did test with the newest version of Intel RST RAID driver and they also work but they do present these 2 issues on my system, but 12.9.0.1001 hes none of those problems.
  • I have only tested x64 versions of Windows, but x86 should be the same.
  • Sadly changing the driver will make the "04-HD Max" show as not installed in iLO so the fan speed will not go down to 6% as it can with the B120i driver loaded. I'm certain that this is because the driver is reporting this ans other information to iLO and not exposing it in Windows, and changing the driver stops the reporting. In my testing the fan was at 11-12%. Also in iLO the Storage section will not show anything as the driver cannot report it anymore.
  • Since the drives now show up as the physical drives they are, you can read S.M.A.R.T. data from the disks using standard tools and set up monitoring if you like.
  • Trim work on the boot SSD. 
 
Link to comment
Share on other sites

The B120i is HP firmware and the SATA ports of the Intel chipset. After you reboot, is the B120i still enabled in the BIOS?

Link to comment
Share on other sites

Yes the BIOS does not change. During startup it also shows the B120i initialising and finding 1 logical drive, then continues to boot from the logical drive.

I realize this is almost like running in AHCI mode, but you get the benefit of easy booting from the ODD port.

Link to comment
Share on other sites

Have you tried switching the BIOS to AHCI to see if it will boot? The concern that comes to mind is the B120i booting the system then loading the Intel driver. If HP makes a change in the B120i firmware could it make the B120i not load the Intel driver?

Link to comment
Share on other sites

I tested this scenario today, and it is possible to switch to AHCI from this setup although you have to go with the USB key boot load windows from the ODD slot or move the disk to port1 instead.

But this alone is not enough, you will have to configure windows to load the standard AHCI drivers or you will get an INACCESSIBLE_BOOT_DEVICE error on startup.

 

Currently I'm on Windows 10 and this can be done by editing the bcd on the USB key to startup in safe mode, then after windows has booted and detected the AHCI controller, you can remove the safemode option.

 

First make a USB key with a bootable partition on it.

  1. diskpart
  2. list disk (note the disk number of the usb key)
  3. select disk x (x is the disk number of the USB key)
  4. clean (this command wipes all data on the selected disk, so make sure you have it correct)
  5. cre part pri
  6. active
  7. format fs=ntfs quick
  8. exit

Then copy the boot files to the drive with bcdboot (d: is the drive of the USB key), and change the startup mode to safemode.

  1. bcdboot c:\windows /s d:
  2. bcdedit /store d:\boot\bcd /set {default} safeboot minimal
  3. Reboot the computer leaving the usb key attached
  4. Change controller to AHCI mode
  5. Windows should startup in safemode now
  6. Open command promt as admin
  7. bcdedit /store d:\boot\bcd /deletevalue {default} safeboot
  8. Restart windows and it should now start up normal in AHCI mode using the USB key.

Unfortunately you cannot switch back and forth between RAID and AHCI without configuring Windows to re-detect the controllers (safeboot) or changing the registry keys for the driver service before changing the setting.

But the main thing to take from this is that the installation is still safe in this scenario, you could maybe also boot from the Install cd and use the repair feature to correct the drivers when changing mode.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...