none
Migrate Virtual Server VM w/ SCSI disk to Hyper-V IDE

    Question

  • Ok, i'll start out what I'm trying to do. Currently I have a Virtual Machine running on Virtual Server 2005.  Now what I would like to accomplish is to migrate this VM to my Hyper-V server. Now for most of my VM's this was pretty seamless, uninstall the old Virtual Machine Addons, turn off the the VM, move the VHD, create the new VM in Hyper-V, install the new addons, and i'm good.  However, now i have 1 machine left to move, however, its not an easy move. 

    When i move it over and start up the hyperv machine i get a STOP 0x0000007B error.
    If I put in the windows disk to do a repair on it, when it gets to the part where it detects existing Windows Installs, both partitions come up as "damaged or corrupted partition".

    I think the root of the cause is that it is running a SCSI adapter to connect to the VHD. Now the other side of this is that the VM OS is windows 2000.

    Host machine is a Windows 2003 R2 x32 Virtual Server.
    Now the VM is setup as:
    1 x SCSI Adapter
    1 x 1 VHD File (attached and booting to SCSI Adapter)
    OS Disk Type: Dynamic  (legacy from P2V migration)
    OS: Win 2004 SP4 SR1

    Now my time window to get this moved over isn't great as this is a critical server (yea, i know its only running windows 2000 and it does need to be upgraded but thats another issue that i'm dealing with).

    So what I've tried is:
     - Straight VHD Copy and build a new machine - Stop 0x07B
     - Imaged machine with Acronis Echo Server - Did the P2V Conversion and created a new VHD - Stop 0x7B
     - On the hyperv (vhd connected with IDE) Started windows 2000 off the cd, it detects my partitions as damaged or corrupted.

    So I guess my questions is:
     - Is there a difference between a SCSI VHD and an IDE VHD?
     - Can i convert SCSI to IDE?
     - Should I install an IDE controller on my Virtual Server VM. Shut it down, then copy it over and attach it to an IDE controller on the HyperV? Or should i try attaching this to the IDE channel then booting it up on Virtual Server? Is this an option?
     - Or do I install a fresh copy of windows 2000, then do the system backup and system state backup to bring the files over? (I'm hesitant on this as there are automatic processes that connect to the server and update things. So inorder to do a backup, I need to have it connected to the network (which will potential have processes trying to update it).  I guess i could do a backup to another VHD and take the thing off the network that way.
          - If i do a system backup to copy the system state over, does it matter that i'm moving from scsi to ide? Will this break?



    Tuesday, February 02, 2010 9:12 PM

Answers

  • The differencs is not inherant in the VHD itself, the difference is inhearnt in the virtual interface that the VHD is presented to the VM on.

    Due to the presentation of a boot fvolume on a SCSI interface, the installation binds to that interface (bus, posistion on bus, etc.).  How the OS of the VM deals with this changing depends on the OS. 

    You have Server 2000 - it does not like hardware change, and that is what yo are attempting to do to it.

    Hyper-V VMs only boot from an IDE presented virtual disk - so you are stuck there.

    I happen to know of one little trick (only becuase I was involved in it) - it should work with Server 2000.
    IF you download Citrix Kensho OVF Tool and install it *(not in the VM, just somewhere to get to an item in the package) - under the program directory is a folder called "External Tools" - in there is an ISO called "linux -fixup-iso"

    Take this ISO and attach it to the VM that you created on your HYper-V host (the copy of course, not the origional) and configure the BIOS to boot to this ISO. 
    Allow the ISO to run and extract and replace the critical boot device driver.
    Watch the console if you like, it will shutdown when finished.

    then detach the ISO and try booting the VM and see what happens.

    Brian Ehlert (hopefully you have found this useful)
    Tuesday, February 02, 2010 10:46 PM
    Moderator

All replies

  • The differencs is not inherant in the VHD itself, the difference is inhearnt in the virtual interface that the VHD is presented to the VM on.

    Due to the presentation of a boot fvolume on a SCSI interface, the installation binds to that interface (bus, posistion on bus, etc.).  How the OS of the VM deals with this changing depends on the OS. 

    You have Server 2000 - it does not like hardware change, and that is what yo are attempting to do to it.

    Hyper-V VMs only boot from an IDE presented virtual disk - so you are stuck there.

    I happen to know of one little trick (only becuase I was involved in it) - it should work with Server 2000.
    IF you download Citrix Kensho OVF Tool and install it *(not in the VM, just somewhere to get to an item in the package) - under the program directory is a folder called "External Tools" - in there is an ISO called "linux -fixup-iso"

    Take this ISO and attach it to the VM that you created on your HYper-V host (the copy of course, not the origional) and configure the BIOS to boot to this ISO. 
    Allow the ISO to run and extract and replace the critical boot device driver.
    Watch the console if you like, it will shutdown when finished.

    then detach the ISO and try booting the VM and see what happens.

    Brian Ehlert (hopefully you have found this useful)
    Tuesday, February 02, 2010 10:46 PM
    Moderator
  • Thanks Brian! I'll be giving this a try come friday night.  Hopefully this will resolve my issues. I'll let you know either way.

    Regards,

    Ryan
    Thursday, February 04, 2010 4:39 PM
  • Ok, I tried that Kensho tool, and it didn't work.  However, after messing around a bit, i think i have a solution.

    1) I installed a fresh windows 2000 into a new VM
    2) Updated to SP4 and SR1, now it should be on the same OS version as my production machine.
    3) Created the same number of partitions and format on the NewVM (2 partitions in my case)
    4) Shutdown the new VM (call it NewWin2000) and I still had a copy of the old VM (calling it OldWin2000)
    5) I copied the OldWin2000 vhd to the new server.
    6) Then using a 3rd VM i attached the NewWin2000 and OldWin2000 vhd files.
    7) I then copied all the files from the OldWin2000 partitions to the NewWin2000 partitions.
    8) Shutdown that 3rd party VM.
    9) Reattached the NewWin2000 vhd to the new VM. And booted

    Seemed to work, i had the network card disabled but the new vm would at least boot and I didn't get any hardware errors. I'm not sure if its a good idea but the "official how to" from microsoft says to do a system and file backup on the old machine and do a restore to the new machine.  The straight file copy should be the same thing.

    Anyway, thats the plan i have to migrate off the old Win2000 Scsi vhd.  Definitely the hardest VM move i've run across.
    Thursday, February 11, 2010 2:28 PM
  • What you did is very similar to the old way that we used to restore servers using a microsoft server based backup - you build a new machine that matches to ahndle all of the hardware and then restore the old machine into that OS.

    In your case it will all be down to the applicaitons that are running in the mache as to how successful you truely will be.

    Your experience all has to do with the older windows 2000 os and how it deals with hardware change.
    Part also might be related to some details of your installation, partitioning, setup, etc. that are difficult to uncover without having the machine in-hand.

    My only caution is that you test your applicaiton in great detail.
    Brian Ehlert (hopefully you have found this useful)
    Thursday, February 11, 2010 4:41 PM
    Moderator
  • Migrated over this way and all apps appear to be working.  Had a few issues with IE, but a reinstall of IE6 seemed to resolve that. Not that IE is used on this machine at all. 

    Thanks for the ideas and help!
    Wednesday, February 17, 2010 7:12 PM
  • The post from BrianEh is dead on and works but you can't download the utility anymore.
    Citrix integrated it into XenCenter which is included in XenServer. I registered for a mycitrix account and downloaded version XenServer-5.6.100-SP2-install-cd-cnetB.iso. Then I mounted the iso and ran XenCenter.msi. Once that's installed go to C:\Program Files (x86)\Citrix\XenCenter\Plugins\Citrix\XenAppliance\External Tools and there is the xenserver-linuxfixup-disk.iso.
    I followed BrianEh's instructions (just mount it to vm and boot it. Disk needs to be attached to IDE controller. it runs and does the magic and then shuts the machine down). I booted the "fixed" disk up and it worked great!
    Kudos to BrianEh. Saved me a lot of work.
    Tuesday, June 07, 2011 5:16 PM
  • i award 500$ for someone who can bring up a p2v windows 2000 server machine in hyper-v, i tried every method i found on the web for over 30 hours now, always end up in getting 0x0000007B and can not get ride of it, contact me at info@michaelmollet.de and i will give you the download link to the vhd file so you can try your luck. i tried kensho, tried copy it, tried really everything.
    Sunday, May 10, 2015 6:50 AM
  • Brian is the man! This is the first solution to the Windows 2000 PtoV STOP 0x0000007B error that actually worked. I downloaded Xenconvert 2.5 from Citrix, installed it on spare pc and found the ISO file in c:\Program Files\Citrix\XenConvert\External Tools.

    Huge thank you to BrianEh for posting this and gcballard as well!

    Saturday, May 23, 2015 1:52 AM