Step 1 was taking a backup that I could easily restore without an operating system (e.g. not a windows backup). I used Acronis True Image to do this I had a USB hard disk to hand so I booted from a True Image Boot disk, ran a full backup of the 320GB disk to the removable disk, because this had quite a bit of free space this only occupied about 50GB on the removable disk when it was compressed.
Step 2 was creating a new virtual machine on my hyper-v server this is a wizard:

this wizard was pretty brain-dead. I created a 320GB virtual hard disk and I allocated 1GB of memory to the virtual machine.
Step 3 was to start up the virtual machine and restore the Acronis image. So I put my acronis boot CD in the new server along with the USB hard disk and booted the new virtual machine, this went without a hitch except that the mouse capture failed on the Acronis screen, thankfully its keyboard navigable so it didn’t trouble me much. I restored the image to the virtual disk and I was all set so I rebooted..
Step 4 was to start up the virtual machine but.. arghh it got stuck. I tried starting in safe mode and I saw that something with acpi was getting stuck… it could not be that easy, so I searched around a bit and then figured out that the problem was HAL (not HAL 9000) but a library which is at the heart of windows which allows the operating system to work the same on different types of Hardware. This is I am sure because my original server was installed into a Shuttle case and these have lots of clever power features that probably require their own HAL. Replacing the HAL took some ingenuity.. this is the short version of what I did.
- Created another virtual machine, this was a windows xp one but it could have been any kind really.
- Set up this XP VM to have a 2nd hard disk which is the virtual hard disk of the new VM.
- Put the Windows Small Business Server 2003 CD in the drive and expanded the file halacpi.d__ to be \Windows\System32\hal.dll on the small business server’s main partition. the command for this was in my case: expand g:\i386\halacpi.d__ f:\windows\system32\hal.dll
- shut down the XP VM and removed the virtual hard disk from it.
- booted up the 2003 VM again and IT STARTED UP..
Step 5 get windows working properly.. when windows first starts on Hyper-V it is running on slow emulated hardware, it needs drivers for the Hyper-V environment to work right. installing these is very easy.
Simply press Control-I from the screen of your virtual machine and this puts a virtual CD into the virtual CD drive and the auto-run does the rest. After installing these thing reboot the Virtual machine.
I had 1 issue remaining… this was I had no network connectivity in my VM, I was attempting to use the “proper” hyper-V networking, for whatever reason I think possibly related to my server hardware, when I use this the network appears connected and gets an IP address but no TCP/IP works. In answer to this I shut down the VM and installed some new virtual hardware from this screen:
I added a Legacy Network Adaptor. and IT WORKED this has some performance penalty but for my uses this hasn’t been problematic.
STEP 6 Finishing off. Due to the fairly radical hardware change I had inflicted on it Windows 2003 had decided I needed to re-activate, probably fair enough. To do this I had to phone up the Microsoft call center and talk to a nice lady and explain what I’d done and that I wasn’t trying to do anything then she read me this really enormous number with about 60 digits and I was fixed.
In Closing.
My initial experiences with Hyper-V have been excellent, I am extremely happy with the performance of the new VM, I have also got a new Windows 2008 virtual server running in Hyper-V now too and I have migrated some work from windows 2003 to Windows 2008. In addition I have 4 different windows XP test environments installed although they are very rarely running at the same time I could easily run them together if I wanted to do so.
Its great to know if I needed more computing power I could just get another server and move some virtual machines over to it, likewize if I had hardware failure I could recover very fast if needed.
The highs
The install process for Windows 2008 is excellent.
There is a feature called snapshot which is totally amazing, which essentially allows you to take a back up of a virtual machine in seconds this is a great feature for my test machines in particular.
Performance, I can not tell these are virtual machines at all they are extremely fast.
The management console for Hyper-V, which can also be run remotely from Windows Vista.
The HP Proliant ML110 G5 Server I bought which is well built, excellent value, very quiet and performs well.
The lows
The HAL.dll issue which was a real pain, and fiddly to fix. I think microsoft would be very smart to solve this themselves in Hyper-V and build in some feature for inserting the right HAL.
The issue I have with virtual networking which I still didn’t resolve.
The graphics driver for the virtual machines which only support very basic 4:3 resolutions up to 1600×1200. This is annoying when you have a 1680×1050 monitor and I hope microsoft make more modes available, although you can get full screen using remote desktop if you need to.
1 response so far ↓
1 Patrick // Jun 4, 2008 at 9:25 am
I agree completely! I’ve done the same thing (also with a ML110 G5), except for the HAL part so I’m still running as Standard PC. Perhaps I’ll try your suggestion with a second machine.
Do keep in mind that the total amount of memory assigned to the VM’s doesn’t exceed the installed memory of your server. Hyper-V doesn’t have the dynamic memory feature VMWare has!
Thanks for your tips. Patrick
Leave a Comment