holollollol-8511 avatar image
0 Votes"
holollollol-8511 asked CarlFan-MSFT answered

Automatic repair due to storahci.sys on reboot


I'm using two Windows Server configured as a MSCS cluster and one HP SAN Storage.

OS : Windows Server 2012 R2 DC
Server : HP ProLiant DL380 Gen9
Storage : HP MSA 2050

Some time, I have to reboot windows server but, after reboot my server go to automatic repair.(both servers are identical)

My first choice is startup repair. but, fail with Log c:\windows\system32\Logfiles\Srt\SrtTrail.txt

  • translated it with a translator, so it may be different from English.
    Root causes found:

The bootable file c:\windows\system32\drivers\storahci.sys is corrupt.

Recovery Action: Recover Files
Result: Failed. error code = 0x3712
Time taken = 2469 milliseconds

Secod choice are sfc /scannow, bootrec.exe /rebuildBCD, /fixmbr and /fixboot but, not resolved.
( My way of using bootrec might be wrong )

I had no choice but to format and the problem reappeared few months.

For now, without formatting, I do a Windows image backup before rebooting and restore it in case something goes wrong.

The strange thing is that even though the image is just before rebooting, if you restore it to the image, it will boot.

Of course, if you restore it as an image and use it and then reboot again, a problem occurs.

What is the cause? I'm desperate for help.

5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

1 Answer

CarlFan-MSFT avatar image
0 Votes"
CarlFan-MSFT answered

For the bootable file c:\windows\system32\drivers\xxx.sys is corrupt issue, we always could check with few methods below:
Of course, it is best if you have a Windows Server 2012 R2 installation image.
1.Boot from installation image, it will get into Recovery mode, then select CMD option. Using the command below:
chkdsk C: /f
Please note: C refers your system drive. After you boot from installation image, C drive letter may change to D.
2.Using command below: This command always will repair the boot file and files under system32.
sfc /scannow /offbootdir=C:\ /offwindir=C:\Windows
3.Storahci.sys is the storage controller driver that Microsoft has developed as a default to communicate with storage devices connected for when no other controller drivers have been installed (yet). Because there are issues with this controller driver.
sfc /SCANFILE=c:\windows\system32\driver\storahci.sys /OFFWINDIR=y:\windows
C: is the partition letter where Windows is located, change the letter if needed
Y: is the partition letter of the location that you want to use for the repair, change the letter and/or path if needed.
4.Try to replace the storahci.sys. Copy the file (from a working machine or ISO ) over to the USB drive and then replace to c:\Windows\system32\DRIVERS (not working machine).
Hope this helps and please help to accept as Answer if the response is useful.
Best Regards,

5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.