Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Discussions about using Windows guests in VirtualBox.
JohnClow4334
Posts: 10
Joined: 28. Jul 2023, 14:35

Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by JohnClow4334 »

I am trying to understand the BSOD 0x0000007B issue on NT 6.1 and older.

My own problem right now is that I have images of 3 RAID5 SAS drives with a Windows NT 6.1 installation. 2 of the original drives are dead. I try to run the OS from the backup and failed with several approaches, all of them leading to the infamous BSOD 0x0000007B.

I rebuilt the RAID and created a single image. I tried virtualbox as well as an other VM technology (not sure whether I'm allowed to name it here) and I also put it on a SATA drive that I tried to boot on the original system (single SATA HDD on the SAS controller).

I've tested MergeIDE 3.0 and OpenGates. I've tested all IDE-Controllers that VirtualBox has.

VirtualBox was Version 6.1.34, Update to 7.0.10 did not solve the issue either.
scottgus1
Site Moderator
Posts: 20945
Joined: 30. Dec 2009, 20:14
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Windows, Linux

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by scottgus1 »

The 7B BSOD comes up when P2Ving (Physical-to-Virtual) an XP PC to a Virtualbox VM, and happens because the disk controller is not what XP was installed on. MergeIDE is the workaround to get XP to be more tolerant of different disk controllers.

How this applies to Windows 7 is not understood by me. I believe that Windows 7 is more tolerant of having the hardware changed out from underneath it. One forum guru states that MergeIDE is not needed for Windows 7.

One problem is that Virtualbox does not do "RAID#", so if the original computer this was on had a RAID controller, you'll definitely not have a RAID controller inside Virtualbox. If the Windows 7 OS is looking for a RAID controller you'll have to tell it to stop doing so, perhaps in a Safe Mode startup.
JohnClow4334 wrote: 28. Jul 2023, 19:17 I have images of 3 RAID5 SAS drives with a Windows NT 6.1 installation. 2 of the original drives are dead. ...
I rebuilt the RAID and created a single image.
Since RAID5 can only recover (possibly) from one drive failure, a two-drive failure means an unrecoverable array. Were the images taken of the actual 3 drives, so that they need to be restored to three actual drives and the drives be attached to a RAID controller again? Virtualbox won't do that.

Or were the images made from the whole running OS, like Macrium Reflect can do? Virtualbox can recover this kind of image into a single drive file.
JohnClow4334 wrote: 28. Jul 2023, 19:17 I try to run the OS from the backup
How are you doing this?
JohnClow4334
Posts: 10
Joined: 28. Jul 2023, 14:35

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by JohnClow4334 »

Safe Mode boot does not work either - afaik a BSOD 7B can never be worked around by safe boot. I understand that I have to "tell Windows not to boot from RAID" but I dont know how - because afaik that is exactly what MergeIDE and OpenGates are created for (and both of which did not work for me)

The images were taken before the drives failed. As I said, the images have been combined - I checked some larger files to verify that the combination into a single vHDD is correct. Rebuilding the Raid is not relevant.
Last edited by JohnClow4334 on 31. Jul 2023, 11:38, edited 1 time in total.
JohnClow4334
Posts: 10
Joined: 28. Jul 2023, 14:35

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by JohnClow4334 »

JohnClow4334 wrote: 28. Jul 2023, 19:17
I try to run the OS from the backup
How are you doing this?
As I wrote: I combined the 3 images to a single one and then tried
"virtualbox as well as an other VM technology (not sure whether I'm allowed to name it here) and I also put it on a SATA drive that I tried to boot on the original system (single SATA HDD on the SAS controller).
I've tested MergeIDE 3.0 and OpenGates. I've tested all IDE-Controllers that VirtualBox has."
Last edited by JohnClow4334 on 31. Jul 2023, 11:42, edited 2 times in total.
scottgus1
Site Moderator
Posts: 20945
Joined: 30. Dec 2009, 20:14
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Windows, Linux

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by scottgus1 »

MergeIDE may have trouble working on a non-running OS. It's designed to run on the running OS so it can plug into the OS's registry and check the OS's files.

You can open the MergeIDE script and see what registry keys are being affected and what files are being checked.

If the OS is not running, you have to mount the dead OS's registry hive in the host's Regedit. The paths to the registry keys specified in the MergeIDE script will then not be correct and require modification or manual checking and editing. Additionally, the paths to the files MergeIDE checks for will not be correct, as your dead OS will likely be in a USB or other drive with a different drive letter than the MergeIDE script wants to check.

Since your recovered OS is not running, you'll have to manually check what MergeIDE is looking for.

And as I said, MergeIDE was for XP, probably 2000, maybe not for 2008/7. So it may not help this problem.

Ultimately, your 2008/7 OS is looking for its RAID controller. Virtualbox does not provide such a controller. So you may have to fix this as if you wanted to put the recovered OS on a physical PC without a RAID controller. Figure out how you could edit 2008/7's expectations so it will want to boot from SATA instead of the RAID controller. Then try the OS in Virtualbox.
JohnClow4334
Posts: 10
Joined: 28. Jul 2023, 14:35

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by JohnClow4334 »

scottgus1 wrote: 31. Jul 2023, 14:38 Since your recovered OS is not running, you'll have to manually check what MergeIDE is looking for.
Good idea, I will check. As MergeIDE supports different drive letters I expected it to work on offline systems, but maybe it does not.
Edit: I checked MergeIDE 3.0, it loads the hive via reg load, it does not access the hive of the system it runs on. Maybe that was different in earlier versions of it.
scottgus1 wrote: 31. Jul 2023, 14:38 MergeIDE was for XP, probably 2000, maybe not for 2008/7. So it may not help this problem.
MergeIDE 3.0 is explicitly for Win 7 (in fact, MergeIDE 2.0 was for NT 6.x only and 3.0 merged 1.0 for XP and 2.0 for 7/2008 together)
scottgus1 wrote: 31. Jul 2023, 14:38 Ultimately, your 2008/7 OS is looking for its RAID controller. Virtualbox does not provide such a controller. So you may have to fix this as if you wanted to put the recovered OS on a physical PC without a RAID controller. Figure out how you could edit 2008/7's expectations so it will want to boot from SATA instead of the RAID controller. Then try the OS in Virtualbox.
Yes, that is exactly why I posted here in the first place - to understand where to find the "expectations" of the OS (and how to adjust).
scottgus1
Site Moderator
Posts: 20945
Joined: 30. Dec 2009, 20:14
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Windows, Linux

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by scottgus1 »

Well, it looks like I've been behind the times heretofore! I didn't know about further editions of MergeIDE. Sorry about that... :oops:

Regarding the missing RAID controller thing, yes, that's the problem. Virtualbox can't solve it. You'll have to get the dead Windows OS to tolerate running on one of the controllers Virtualbox has, then you can run the OS in Virtualbox. Doing that isn't technically a Virtualbox problem, as it would have to be done in any P2V to any virtualizer, or to another physical PC.

It could very well be that figuring out how to run (or get the same results as) MergeIDE on an offline OS may get you going.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Mostly XP

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by mpack »

JohnClow4334 wrote: 31. Jul 2023, 15:32 MergeIDE 3.0 is explicitly for Win 7
I don't know why Win7 needs MergeIDE. XP had a specific problem with IDE controllers changing - Win7 never had that problem. We have never suggested to Win7 users that they need to use MergeIDE.

The original problem was that XP remembered the IDE controller it was installed on and would give stopcode 0x7B if it saw a different IDE controller. MergeIDE (of the XP vintage) fixed that problem, a problem which I emphasize that Win7 never had.

Note that there has never been a suggestion that XP's intolerance of IDE controller changes is the only reason you'll see stopcode 0x7B. That error code simply means that the Windows boot code can't find the disk controller it needs, and there are many possible reasons why that might be the case. Scott already outlined the most obvious reason above. I'm afraid that messing about with different MergeIDE versions will not find you a VirtualBox simulation of a raid controller.

This P2V project is probably not doable. I would suggest installing a guest OS from scratch, then migrate the data files from the old drive.
JohnClow4334
Posts: 10
Joined: 28. Jul 2023, 14:35

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by JohnClow4334 »

Maybe my expactations were not stated clearly. I was totally aware that VirtualBox does not have a support for virtual RAID-Controllers and I know that even if it would it would not work with the driver in the OS I am working on.

My understanding was that MergeIDE (at least for win 7) is for changing the type of disc controller, like AHCI-SATA to IDE or RAID to IDE. I was not aware that XP has problems with changing from IDE to IDE. Afair XP has a structural problem that 7 does not: For XP drivers that are not needed are not on the system drive, the setup disk is required, because of the size disk drives had at that time. Win 7 has a driver store and all drivers delivered with the OS are available on the disk.

However Win7 still has issues compared to Win 8 afaik, because Win 8 introduced the "Windows to Go mode" which allows changing configurations.

My Hope that someone here has experience with migrating raid to IDE or SATA.
scottgus1
Site Moderator
Posts: 20945
Joined: 30. Dec 2009, 20:14
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Windows, Linux

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by scottgus1 »

Someone may come along that knows that, but don't lose sight of this:
scottgus1 wrote: 31. Jul 2023, 16:13 get the dead Windows OS to tolerate running on one of the controllers Virtualbox has, then you can run the OS in Virtualbox. Doing that isn't technically a Virtualbox problem, as it would have to be done in any P2V to any virtualizer, or to another physical PC.
Same thing comes up transferring an OS from HP to Dell.
fth0
Volunteer
Posts: 5690
Joined: 14. Feb 2019, 03:06
Primary OS: Mac OS X other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Linux, Windows 10, ...
Location: Germany

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by fth0 »

FWIW, here are two official documentation pages from Microsoft:

Bug check 0x7B: INACCESSIBLE_BOOT_DEVICE
Advanced troubleshooting for Stop error 7B or Inaccessible_Boot_Device

I'm aware that those pages are targeting Windows 10, but both pages give an overview about several possible causes for the bug check 0x7B and therefore ideas what to look for.
JohnClow4334
Posts: 10
Joined: 28. Jul 2023, 14:35

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by JohnClow4334 »

Thank you for trying to help. I will continue trying.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Mostly XP

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by mpack »

On a related subject, can you give me a reference to an official site for "MergeIDE v<anything>"?

My understanding is that MergeIDE was originally a knowledge base article by Microsoft, and may have included a "mergeide.reg" file to make registry changes to fix the original Win2K/XP IDE problem. Some German magazine wrote a wrapper script (batch file) and included this as MergeIDE.zip on a CD cover. A copy of this zip is what has done the rounds ever since, including being referenced by tutorials on this site.

The point being that, AFAIK, MergeIDE was never an official product with version control - and my quick Google searches just now do not turn up any evidence that it ever turned into one, so you have me puzzled. The only thing I've found is a German guy referring to v3 of his version of something he calls MergeIDE.
fth0
Volunteer
Posts: 5690
Joined: 14. Feb 2019, 03:06
Primary OS: Mac OS X other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Linux, Windows 10, ...
Location: Germany

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by fth0 »

@mpack:

I think you've then found all "versions" that I've read about:

Microsoft provided the registry file MergeIDE.reg to handle the common non-IDE controllers of the time. The German computer magazine "c't" (which celebrates its 40th birthday this year BTW) provided an MSDOS batch file MergeIDE.bat as a convenience wrapper (2002). The author of "Andy's Blog" enhanced the registry file with some newer controllers IDE drivers and wrote his own batch file MergeIDE.cmd with more convenience functionality (up to 2013).

Note that even the latest version is a decade old by now, so if somebody has a newer IDE controller not supported out of the box, they'd perhaps have to adapt the registry file even today (especially the PCI IDs).

Edit:
My understanding was partially wrong. Wrong parts stroke through and new parts underlined.
Last edited by fth0 on 1. Aug 2023, 21:33, edited 1 time in total.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Mostly XP

Re: Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?

Post by mpack »

I'd like to return to this comment:
JohnClow4334 wrote: 31. Jul 2023, 19:23 My understanding was that MergeIDE (at least for win 7) is for changing the type of disc controller, like AHCI-SATA to IDE or RAID to IDE.
I confess that I do not have a full understanding of what all those registry settings are for, but I believe all it does is add a bunch of additional variants of the same IDE card so that XP, when booting up, will accept any of those variants as being effectively the same card/chipset.

If my understanding is correct then note: the basic boot controller type is not changed. If the boot code goes looking for an IDE controller, and if an IDE controller is found but the vendor ID is YYY when it should have been XXX, and YYY is one of the variants added, then the IDE controller YYY will be accepted. If the boot code is not already looking for an IDE controller then MergeIDE does nothing for you. Specifically, it will not cause an IDE controller to be acceptable when the boot code was looking for SATA or RAID.
Post Reply