Port Windows 6.1 (Server 2008/Win7) from physical Raid to VirtualBox/Comprehensive Guide on BSOD 0x0000007B?
-
- 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?
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.
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.
-
- 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?
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.
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.
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.
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.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.
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.
How are you doing this?
-
- 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?
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.
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.
-
- 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?
As I wrote: I combined the 3 images to a single one and then triedJohnClow4334 wrote: ↑28. Jul 2023, 19:17How are you doing this?I try to run the OS from the backup
"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.
-
- 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?
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.
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.
-
- 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?
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.
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)
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 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.
-
- 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?
Well, it looks like I've been behind the times heretofore! I didn't know about further editions of MergeIDE. Sorry about that...
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.
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.
-
- 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?
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.
-
- 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?
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.
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.
-
- 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?
Someone may come along that knows that, but don't lose sight of this:
Same thing comes up transferring an OS from HP to Dell.
-
- 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?
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.
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.
-
- 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?
Thank you for trying to help. I will continue trying.
-
- 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?
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.
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.
-
- 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?
@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.
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.
-
- 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?
I'd like to return to this comment:
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.
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.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.
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.